協調フィルタリング協調フィルタリング (CF) とそのバリエーションは、最も一般的に使用される推奨アルゴリズムの 1 つです。データサイエンスの初心者でも、履歴書プロジェクトなど、自分専用の映画推奨システムを構築するために使用できます。 ユーザーに何かを推奨したい場合、最も論理的な方法は、そのユーザーと同じ趣味を持つユーザーを見つけ、その行動を分析して、同じものを推奨することです。あるいは、ユーザーが以前購入した商品に似たものに焦点を当て、類似の商品を推奨することもできます。 協調フィルタリング (CF) には、ユーザーベースの協調フィルタリング技術とアイテムベースの協調フィルタリング技術という 2 つの基本的な方法があります。 推奨アルゴリズムは、上記の各シナリオで 2 つのステップで構成されます。 1. データベース内のユーザー/アイテムのうち、対象のユーザー/アイテムに類似するものがいくつあるかを調べます。 2. 製品のユーザー/アイテムに類似するユーザー/アイテムの合計重みを考慮して、他のユーザー/アイテムを評価し、関連製品のユーザーに与える評価を予測します。 このアルゴリズムにおける「最も類似」とはどういう意味ですか?ここで得られるのは、各ユーザーの嗜好ベクトル (行列 R の列) と、各製品に対するユーザー評価のベクトル (行列 R の行) です。 まず、両方のベクトルで値がわかっている要素のみを保持します。 たとえば、ビルとジェーンを比較したい場合、ビルはタイタニックを見たことがなく、ジェーンはバットマンを見たことがないとわかっている場合、彼らの類似性はスターウォーズによってのみ測定できます。スターウォーズを観ない人がいるでしょうか? (笑顔) 類似性を測定する最も一般的な方法は、ユーザー/アイテム ベクトルのコサイン類似度または相関を測定することです。最後のステップは、類似度に基づいて加重算術平均法を使用して、表内の空のセルを埋めることです。 推奨のための行列分解もう一つの興味深いアプローチは、行列分解を使用することです。これはエレガントな推奨アルゴリズムです。通常、行列を因数分解するときに、結果の行列の行と列のどの項目が保持されるかについてはあまり考慮しないためです。しかし、推奨ツールを使用すると、u は i 番目のユーザーの興味に関するベクトルであり、v は j 番目の映画のパラメータに関するベクトルであることが明確にわかります。 次に、u と v のドット積を取ることで、x (i 番目のユーザーが j 番目の映画に付けた評価) を推定できます。既知の評価を使用してこれらのベクトルを構築し、それを使用して未知の評価を予測します。 たとえば、行列分解後、Ted のベクトル (1.4; .9) と映画 A のベクトル (1.4; .8) が得られます。これで、(1.4; .9) と (1.4; .8) のドット積を計算するだけで、映画 A-Ted の評価を復元でき、評価結果は 2.68 になります。 クラスタリング以前の推奨アルゴリズムは比較的単純で、小規模なシステムに適していました。そして現在に至るまで、私たちは推奨問題を教師あり機械学習タスクとして捉えてきました。今こそ、このような問題に教師なしの方法で取り組むべき時です。 協調フィルタリングと行列分解に長い時間を要する大規模な推奨システムを構築していると想像してください。最初のアイデアはクラスタリングです。 ビジネスの初期段階では、事前のユーザー分類が不足していることが多く、クラスタリングが最適な方法です。 しかし、クラスタリングを単独で使用した場合、実際にはユーザーのグループを識別し、このグループ内のすべてのユーザーに同じものを推奨することになるため、クラスタリングは少し弱くなります。十分なデータがある場合は、最初のステップとしてクラスタリング手法を使用する方がよいでしょう。これにより、協調フィルタリング アルゴリズムで関連する近傍の選択を減らすことができます。複雑な推奨システムのパフォーマンスも向上します。 各クラスターには、そのクラスターに属するユーザーの好みに基づいて代表的な好みが割り当てられます。クラスター内の各ユーザー セットには、クラスター レベルで計算された推奨事項が送信されます。 レコメンデーションシステムのためのディープラーニング手法過去 10 年間で、ニューラル ネットワークの開発は大きく進歩しました。現在、さまざまなアプリケーションで使用されており、従来の機械学習手法に徐々に取って代わっています。以下では、YouTube でディープラーニング手法がどのように使用されているかを示します。 言うまでもなく、このようなサービスのためのレコメンデーション システムを構築することは、その規模の大きさ、常に変化するコーパス、そしてさまざまな観測不可能な外部要因のため、非常に困難な作業です。 「YouTube 推奨システム向けディープ ニューラル ネットワーク」に関する関連研究によると、YouTube 推奨システム アルゴリズムには、ニューラル ネットワークの 2 つの部分が含まれています。1 つは候補生成用、もう 1 つはソート用です。時間が足りない場合は、ここで簡単に要約します。 候補生成ネットワークは、ユーザーの履歴を入力として使用することで、ビデオの数を大幅に削減し、大規模なコーパスから最も関連性の高いビデオのセットを選択できます。生成された候補セットはユーザーにとって最も関連性が高く、このニューラル ネットワークの目的は、協調フィルタリングを通じて幅広いパーソナライゼーション サービスを提供することです。 このステップでは、ユーザーのニーズに近い候補結果の数が少なくなります。私たちの現在の目標は、最善の決定を下せるよう、すべての候補者を慎重に分析することです。このタスクはランキング ネットワークによって実行され、ビデオを説明するデータとユーザーの行動に関する情報を使用する目的関数に従って各ビデオにスコアを割り当てます。 2 段階のアプローチを使用すると、大規模なビデオ コーパスからビデオを推奨できますが、これらの推奨のうち、パーソナライズされ、実際にユーザーによって適用されるのはごくわずかであることが確実です。この設計により、他のリソースによって生成された結果とこれらの候補結果を混在させることもできます。 推奨タスクは、極端な多クラス分類問題のようなもので、予測問題は、特定の時間 t におけるユーザー (U) とコンテキスト (C) に基づいて、コーパス (V) 内の何百万ものビデオの中から特定のビデオ (wt) をクラス (i) に正確に分類する問題になります。 独自の推奨システムを作成する前に注意すべき重要なポイント:
|
<<: 【WOTI】English FluencyのLin Hui氏:教育分野でのAIはまだ初期段階にある
>>: 機械学習は増加傾向にありますが、そのアルゴリズムの結果は公正なのでしょうか?
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
著者: 張傑[51CTO.com からのオリジナル記事]コンピューター ビジョン (CV) は、人工...
序文この記事の目的はPythonでMiraiロボットを開発することですが、最初のチュートリアル、特に...
多項式回帰は線形回帰の改良版です。線形回帰を知っていれば、簡単に理解できるでしょう。そうでない場合は...
この記事では、まず固有ベクトルと行列との関係を簡潔かつ明確に紹介し、次にそれを基に共分散行列と主成分...
3月25日、北京郵電大学のウォータードロップチームが優勝トロフィーを掲げ、JD X部門主催のJD 2...
ビッグモデルの発展、特に最近のさまざまなオープンソースのビッグモデルのリリースにより、さまざまなモデ...
TechCrunchのウェブサイト、北京時間9月25日によると、多くの競合他社と同様に、Micro...
[[328841]] 【51CTO.com クイック翻訳】リレーショナル データベースは依然として...
[[286342]]本論文では、バウンディング ボックス回帰に基づく効率的なポイント クラウド イ...
ヘルスケア分野への人工知能 (AI) の導入は、今日の国際医療における最も先進的な取り組みの 1 つ...