2

私が読んだレコメンデーション アルゴリズムの記事のほとんどは、ユーザーがアイテムを評価する Netflix モデルに焦点を当てています。やりたいことがちょっと違う(と思う)。

代わりに、ユーザーに 2 枚の車の写真が表示されるサイトを作成したいとします。ユーザーは、好みの車を選択できます。ユーザーはこのプロセスを好きなだけ繰り返すことができますが、うまくいけば、ユーザーが好きなものに向かって写真がどんどん洗練されていきます。

このアルゴリズムをどのように実装しますか? 単純に ELO ランキング アルゴリズムを実装し、それらの結果の順序を「評価」として使用することが 1 つの方法のように思えますが、これには、複数のアイテムに最大評価を与えることができないという重大な欠陥があります。アイテム自体を評価する機能が与えられている場合)。

私にはより有望に思われる別の方法は、各車両の一般的な特性 (たとえば、色、ボディ タイプ、2 ドアと 4 ドアなど) を事前に決定し、それらを使用して各ユーザーが好む特性の一般的なアイデアを得るというものです。そしてそれから推奨事項をベースにします。

4

2 に答える 2

1

私はこれを突き刺します。

各車に一連のプロパティが与えられているとします。この一連のプロパティがベクトルとしてコード化されている場合、推奨の 1 つの潜在的な方法は、自己組織化マップ (SOM) を使用することです。SOM の基本的な要点は、入力ベクトルのカテゴライザーです。入力の個別のクラスを表す入力ベクトルを使用して SOM をトレーニングすると、SOM はストレージ ベクトルをクラスター化して、入力の各クラスに近づけるようになります。元の入力ベクトルは保持されないことに注意してください。入力ベクトルを使用して SOM をトレーニングするには、現在 SOM 内にある最適なベクトルが選択され、そのベクトルの周囲の領域が入力に似たものになります。もちろん、Wikipedia http://en.wikipedia.org/wiki/Self-organizing_mapを参照してください。

では、これはこの状況にどのように適用されますか? そうですね、1 つの SOM を使用してその人が好きな画像をトレーニングし、もう 1 つの SOM をその人が好きな画像でトレーニングすることができます。好きなスタイルが 1 つではなくても、好きな車や嫌いな車の周りにクラスターが形成されるはずです。そして、自分が選んだことのない車が好きかどうかは、好き嫌いからグループにどれだけ一致するかを見つけることです。この場合、互いに似ていない車、または両方が好まれる可能性が低い車を一致させるのが最善であることに注意してください。

その人が最初にサイトに参加するとき、SOM をシードするためにすぐにいくつかの好き嫌いを選択できるようにすると有利な場合があります。

幸運を!

于 2011-04-05T05:23:33.293 に答える
0

Maby答えるには少し遅すぎますが、これをチェックすることをお勧めします。それは、5つ星の評価、同様の評価などは機能しないと主張するMIT教授についてです。彼は、あなたが提案するように(車Aまたは車B)、ペアによる入力で機能するアルゴリズムを提案します。アルゴリズムは非常に複雑ですが、リンクにあります。

于 2012-05-22T23:57:11.560 に答える