1

ユーザーの設定(派生した設定)に基づいて製品を推薦するために明示的な列車機能を使用しようとしましたが、MSEはトレーニングとテストの両方のデータセットに十分です。Spark mllib:implicitTrainとexplicitTrainの違い

(= 0.01ラムダ)Iは、試験および訓練データセットの両方のために20倍にtrainImplicitにMSEが増加を使用し、同じデータ。(ラムダ= 0.01、アルファ= 1.0)

今はこれらが異なっていることを理解します暗黙的に明示的であるかどうかを判断するにはどうすればよいですか?

+0

明示的な評価の値は何ですか? 私はあなたが正規化していない場合、例えば1から5の格付けを持つ場合、与えられた格付けの2乗誤差は0から16の間になるからです。暗黙的なフィードバックでは0と1の間になるでしょう。 –

+0

また、明示的から暗黙的にどうやって行くのですか? 私には明示的に、ユーザーごとに不明な点が多く(評価しなかった製品)、一部の製品の評価(評価が0-1であっても)。 暗黙的には、0と2の数が多い1 –

答えて

2

基本的に暗黙列と明示列車の違いは、その項目に関連する暗黙のアクションしか持たない場合に暗黙的に使用され、推薦を行うことです。ビュー、クリック、購入、好き、共有などがありますが、明示的には、推奨するアイテムに関する明示的な料金がある場合に使用することが想定されています。 フィールドでこのアルゴリズムのアプリケーションについて話しましたが、映画推薦システムを使用しているときと同じ状況にあり、明示的なデータセットで訓練するとき暗黙的な結果が明示的なものより優れている理由を説明できません。私の見解では、MSEはパフォーマンスの適切な指標です。あなたができることの1つは、spark mllibの実装を見直して、理由を理解しようとすることです。 申し訳ありません私はあなたに全く答えなかった場合。

+0

「明示的なデータセットでの訓練の際に暗黙的に明示的な結果が明白に得られました」これをどのように測定しましたか? また、暗黙のアルゴに対して0-1の格付け/優先度が必要ですか? – Shadow

+0

もう一度pingすることは申し訳ありませんが、 – Shadow

関連する問題