私はちょうどBellKorのPragmatic ChaosチームがWiredのwinning the Netflix Challengeであることを読んでいますが、この種のアルゴリズムがどのように動作するのかが不思議です。私はチームのBellkorのソリューションがフィールド上の革新的なものでなければならないことを知っています..しかし、フィールドは通常どのように機能しますか?マルコフ連鎖が何度も何度も繰り返されている、本当に詳細なデータベースなのでしょうか?自動推奨アルゴリズムは通常どのように機能しますか?
答えて
フィールドは通常どのように機能しますか?
これはデータマイニング技術です。データマイニングは、ビジネスインテリジェンス(データウェアハウスなど)の一部として、膨大な量のデータで関係や情報を検索するために使用されます。これはコンピュータ科学の分野であり、一般的な機械学習にも対応しています。パターン認識。自動推奨はAssociation Miningです。高いサポートとの関連付けが推奨として示されています。 k-nearest-neighborアルゴリズムは、機械学習/データマイニングの人々が使用する多くのアルゴリズムのうちの1つに過ぎません。
基本理論に興味がある場合は、Ian H. WittenのData Mining: Practical Machine Learning Tools and Techniquesをお勧めします。
Javaの場合、のマシン学習パッケージassociation miningを実行することができます。 Ian WittenもWEKAの著者の一人です。
このウィキペディアの記事をご覧ください:Euclidean Distance
基本的な考え方は、(ユークリッドのような)距離メトリックを使用して、人や物を互いに比較することです。
新しいO'Reillyの書籍「Programming Collective Intelligence: Building Smart Web 2.0 Applications」には、このトピックに関する素晴らしい章があります。
私は、以前にBellkorとCinematchによって使用されていたk-nearest-neighbor algorithmを簡単に言及したWiredのthis previous articleを見つけました。
バイアスを見つける方法について心理学者が行った観察も面白いです。
ほとんどのNetflix Competition応募者はSingular Value Decompositionのバリエーションを使用しました。このアルゴリズムは、大きな行列を取り出し、それを近似2x2行列に単純化することによって動作する。この2×2行列は、2次元空間上にプロットすることができ、2次元空間において、互いに近接する点は、元の行列内で互いに親和性を共有する。
Netflixの場合、ムービーが列で、ユーザーが値[i、j]がiユーザーがムービーjを与えた格付けである行であるマトリックスを作成できます。これは、非常に大きなマトリックスであり、それは、大きなマトリックスの近似として働く2次元マトリックスを生成するためにそれに適用されるSVDを有することができる。この飛行機にプロットされたときに互いに近くにいるユーザーは同様の評価を共有するため、あるユーザーが他のユーザーがこの航空機に近くにいる人を見たムービーを見なかった場合、そのことが新しいユーザーに推奨される可能性があります。
優勝したソリューションは、SVD ++と呼ばれるストレートSVDアルゴリズムのバリエーションを設計し、他のエッジケースと組み合わせて、賞を獲得するために必要な10%を超えるアルゴリズムを試作しました。
- 1. ユーザーベースの推奨事項はどのように機能しますか?
- 2. MySQL自動インクリメントはどのように機能しますか?
- 3. 推奨アルゴリズム
- 4. このアルゴリズムはどのように機能しますか?
- 5. MD5Sumアルゴリズムはどのように機能しますか?
- 6. ドキュメント差分アルゴリズムはどのように機能しますか?
- 7. reduceLeftで型推論機能はどのように機能しますか?
- 8. Objective Cの自動参照カウントはどのように機能しますか?
- 9. 非推奨の機能:のrequire_once()
- 10. mongodbの 'updateMany'機能は推奨されていませんか?
- 11. 型付きラケットの型推論はどのように機能しますか?
- 12. 「推移的リゾルバ」はSBTとどのように機能しますか?
- 13. 待機/通知はどのようにJVMレベルで機能しますか?
- 14. 20の質問AIアルゴリズムはどのように機能しますか?
- 15. ウェブサイトの「不正行為を報告する」機能のアルゴリズムはどのように機能しますか?
- 16. IE6自動余白は機能しますか?これはどのように可能ですか?
- 17. 通常のファイルとデバイスドライバのopenはどのように動作しますか
- 18. 機能eregi()は推奨されません - PHP 5.3
- 19. 機能eregi_replace()は推奨されません
- 20. Javaキーイベント処理メカニズム(KeyListeners通知)はどのように機能しますか?
- 21. 匿名機能は通常の機能よりも高価ですか?
- 22. 古いAPIバージョンで非推奨の機能を使用していますか?
- 23. MySQL、C++ - プログラムによって、MySQL自動インクリメントはどのように機能しますか?
- 24. shared_ptrをOpenGLに渡しますか?私は通常、このように機能するコードがある場合
- 25. DataRowの更新時に、コントロールの自動更新はどのように機能しますか?
- 26. どのような機械学習用ライブラリを使用することを推奨しますか?
- 27. Rustライブラリが非推奨であるかどうかはどのように判断できますか?
- 28. dropbox.comの複数のファイルアップロード機能はどのように機能しますか?
- 29. JQueryのdatepickerのポップアップ機能はどのように機能しますか?
- 30. Chrome拡張機能はシステムプロセスとどのように通信できますか?
もう1つのアプローチは、マンハッタン距離(またはTaxicabジオメトリ)です(計算は速く、ユークリッドはあまり正確ではありません) – adhg