IBMニュースレター
The DX Leaders
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
協調フィルタリングは、レコメンダー・システムの一種です。類似する行動に基づいてユーザーをグループ化し、グループの特性に応じて新しいアイテムを推奨します。
協調フィルタリングは、好みや行動が類似するユーザーがそのアイテムとどのようにやり取りしたかに基づいて、ユーザーにアイテムを推奨する手法です。つまり、協調フィルタリング・アルゴリズムは、行動に基づいてユーザーをグループ化し、一般的なグループ特性に基づいて、ターゲット・ユーザーにアイテムを推奨します。協調レコメンダー・システムは、(行動的に)類似したユーザーが類似の興味と好みを持つという原則に基づいています。 1
協調フィルタリングは、レコメンダー・システムの2つの主要なタイプのうちの1つで、もう1つはコンテンツ・ベースのレコメンダーです。後者の方法では、アイテム機能を使用して、特定のユーザーが過去に積極的にやり取りを行ったアイテムと類似のアイテムを推奨します。 2協調フィルタリングは、ユーザーが推奨アイテムと類似していることに重点を置くのに対し、コンテンツ・ベースのフィルタリングでは、アイテムのプロファイルのみに基づいてアイテムが推奨されます。コンテンツ・ベースのフィルタリングは、協調フィルタリングのようにグループやタイプではなく、特定のユーザーの好みにレコメンデーションを絞り込みます。
どちらの方法も、AmazonなどのEコマースからソーシャルメディアやストリーミング・サービスに至るまで、近年では現実世界の多くの分野で活用されています。協調システムとコンテンツ・ベースのシステムが一緒に、ハイブリッドな推奨システムを形成します。2009年には、NetflixがNetflix賞のコンテストを通じて、ハイブリッド推奨システムを採用しました。
IBMニュースレター
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
協調フィルタリングでは、行列を用いて、システム内の各項目のユーザー行動をマッピングします。次に、システムはこの行列から値を引き出し、ベクトル空間内のデータ・ポイントとしてプロットします。その後、さまざまな行列がユーザーとユーザー、およびアイテムとアイテムの類似性を測定する手段としてポイント間の距離を測定します。
協調フィルタリングの標準設定では、n個のユーザーのセットとx個のアイテムのセットがあります。各アイテムに対する各ユーザーの個別の好みは、ユーザー-アイテム行列(ユーザー評価行列と呼ばれることもあります)に表示されます。ここでは、ユーザーは行で、項目は列で表されます。Rij行列では、特定の値は、アイテムiに対するユーザーuの行動を表します。これらの値は、ユーザーから提供された連続した数値(評価など)や、特定のユーザーがアイテムを閲覧または購入したかどうかを示すバイナリ値などです。書店のWebサイトのユーザー-時間行列の例を次に示します。
この行列には、さまざまな書籍に対するユーザーの評価が表示されます。協調フィルタリング・アルゴリズムによって、各書籍に対してユーザーが提供した評価が比較されます。これらの評価に基づいて、類似のユーザーまたはアイテムを特定することにより、ターゲット・ユーザーが見たことのない書籍(行列では、nullで表されます)の評価を予測し、それに応じてターゲット・ユーザーにそれらの書籍を推奨する(または推奨しない)ようにします。
この例の行列は、4名のユーザーと4つのアイテムに制限されているため、完全です。ただし、実際のシナリオでは、既知のユーザーのアイテムに対する好みが限られていることが多く、ユーザーとアイテムの行列はまばら(スパース)になります。 3
協調推奨アルゴリズムは、さまざまなユーザー間の類似性をどのように判断するのでしょうか.前述のように、ベクトル空間での近接性が主な方法です。ただし、近接性を判断するために用いられる指標はさまざまです。そのような指標として、コサイン類似性とピアソン相関係数があります。
コサイン類似性は、2つのベクトル間の角度を表します。比較対象のベクトルは、特定のユーザーまたはアイテムに対する評価のサブセットで構成されます。コサイン類似性スコアは、-1~1の任意の値です。コサインス類似度が高いほど、2つのアイテムが類似していると見なされます。一部の文献では、高次元の特徴空間に対してこの指標を推奨しています。協調フィルタリングでは、ベクトル・ポイントはユーザー-アイテム行列から直接取得されます。コサイン類似度は次の式で表され、 x と y は、ベクトル空間内の2つのアイテム・ベクトルを示します。 7
PCCは、2人のユーザーまたはアイテムのそれぞれの評価間の相関関係を計算することで、アイテムまたはユーザー間の類似性を測定するのに役立ちます。PCCの範囲は-1~1で、負の相関から同一の相関までを表します。コサイン類似度とは異なり、特定のユーザーまたはアイテムのすべての評価が使用されます。たとえば、2人のユーザー間のPCCを計算する場合、次の式を使用します。ここで、 a と b は異なるユーザーであり、 r ai と r bi は、アイテム i に対するそのユーザーの評価です。 5
協調フィルタリング・システムには、主にメモリー・ベースとモデル・ベースの2種類があります。
メモリー・ベースのレコメンダー・システム(またはネイバー・ベースのシステム)は、k-最近傍分類器を拡張したものです。類似するユーザーまたはアイテム・セットに基づいて、特定のアイテムに対するターゲット・ユーザーの行動を予測しようとするためです。メモリー・ベースのシステムは、次の2つのサブ・タイプに分類できます。
文献によっては、メモリー・ベースの方法をインスタンス・ベースの学習方法として説明されていることがあります。これは、ユーザーおよびアイテム・ベースのフィルタリングが、未視聴の映画に対するターゲット・ユーザーの評価など、ユーザーとアイテムのやり取りの特定のインスタンスに固有の予測を行う方法を示しています。
対照的に、モデル・ベースの方法では、データの予測機械学習モデルを生成します。このモデルは、ユーザー-アイテム行列内の現在の値をトレーニング・データ・セットとして使用し、結果のモデルで欠損値の予測を行います。モデルベースの方法では、データサイエンスの手法と、決定木、ベイズ分類器、ニューラルネットワークなどの機械学習アルゴリズムを使用して、ユーザーにアイテムを推奨します。8
行列因数分解は、広く議論されている協調フィルタリング方法であり、多くの場合、潜在因子モデルの一種として分類されています。潜在因子モデルとしての行列因数分解では、選択した数の特徴を通じて、ユーザーとユーザー、またはアイテムとアイテムの類似性が判断できると仮定します。たとえば、本のジャンルとユーザーの年齢またはジェンダーのみを用いて、ユーザーの書籍評価を予測できます。したがって、この低次元の表現は、例えば、ユーザーのフィードバック・データから引き出されたいくつかの選択された特徴に基づいてアイテムとユーザーを特徴付けることにより、書籍の評価を説明することを目的としています。 9行列因数分解は、与えられたベクトル空間の特徴を縮小するため、次元削減手法としても機能します。10
コンテンツ・ベースのシステムと比較して、協調フィルタリングは、ユーザーに新しいレコメンデーションを提供する点でより効果的です。協調ベースのメソッドでは、1人のターゲット・ユーザーと興味が類似するユーザーのプールからレコメンデーションを引き出します。たとえば、あるユーザー・グループがターゲット・ユーザーと同じ一連のアイテムを気に入ったものの、前のアイテム・セットと機能を共有していないため、ターゲット・ユーザーにとって未知の追加のアイテムも気に入った場合、協調フィルタリング・システムは、この新しいアイテムを推奨します。協調フィルタリングでは、ターゲット・ユーザーが考慮していなかった可能性があるが、ユーザー・タイプにとって魅力的なアイテムを推奨できます。 11
コールド・スタート問題は、おそらく協調フィルタリング・システムの弱点の中で最も広く挙げられているものです。この問題は、新しいユーザー(または新しいアイテム)がシステムに入力されたときに生じます。ユーザーにアイテムとのやり取りの履歴がないため、システムは新しいユーザーの類似性や既存ユーザーとの関連性を評価できません。対照的に、コンテンツ・ベースのシステムは、新しいアイテムの処理に長けていますが、新しいユーザーへの推奨にも苦労します。 12
データのスパース性も、協調推奨システムを悩ませるもう1つの問題です。前述のとおり、レコメンダー・システムには通常、システム内のほとんどのアイテムに対するユーザーの好みに関するデータが不足しています。これは、システムの特徴空間のほとんどが空であることを意味します。この状態をデータのスパース性と呼びます。データ希薄性が増すと、ベクトル点の相違性が極めて大きくなり、予測モデルが説明パターンを特定する効果が低下します。13 これが、行列因数分解(および特異値分解などの関連する潜在因子法)が協調フィルタリングでよく使用される主な理由です。その理由は、特徴を減らすことでデータ希薄性を軽減できるためです。この問題を解決するために使用される他の方法には、ユーザー自身が自分の興味に関する情報を評価して提供することなどがあり、システムはその情報に基づいてレコメンデーションをフィルタリングできます。
これまでの研究では、レコメンデーションを予測や分類の問題として取り組んできましたが、最近の研究では、レコメンデーションが逐次的な意思決定の問題として理解されています。このパラダイムでは、強化学習の方がレコメンデーションに対処するために、より適している可能性があります。このアプローチでは、レコメンデーションはユーザーとアイテムの相互作用に従ってリアルタイムで更新されると主張されています。ユーザーがおすすめ商品をスキップ、クリック、評価、購入すると、モデルはこのフィードバックから最適なポリシーを開発して新しい商品をおすすめします。17最近の研究では、コンテンツ・ベースのフィルタリングと協調フィルタリングの両方に課題をもたらす、可変的で長期的なユーザーの関心に対処するためのさまざまな強化学習アプリケーションが提案されています。18
AI開発者向けの次世代エンタープライズ・スタジオであるIBM watsonx.aiを使用して、生成AI、基盤モデル、機械学習機能をトレーニング、検証、チューニング、導入しましょう。わずかなデータとわずかな時間でAIアプリケーションを構築できます。
業界をリードするIBMのAI専門知識とソリューション製品群を使用すれば、ビジネスにAIを活用できます。
AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。