2012-04-27 14 views
4

私は、Mahout in Actionのコード例のいくつかを詳しく調べています。データに適用されるさまざまなアルゴリズムのRMSを計算する小さなテストを構築しました。勧告を評価する - xのケースではお勧めできない

もちろん、複数のパラメータがRMSに影響しますが、評価を実行中に生成される「ケースでは推奨できません」というメッセージは理解できません。

StatsCallable.javaを見ると、これはエバリュエータがNaN応答を検出したときに生成されます。おそらく、トレーニングセットやユーザーの推奨に十分なデータがないため、推奨を提供できません。

RMSスコアは非常に大きな「推奨できない」ケースの影響を受けていないようです。その仮定は正しいのでしょうか? RMSだけでなく、「推奨できない」ケースと私の全体的なトレーニングセットの比率も評価しなければなりませんか?

フィードバックに感謝します。

答えて

4

はい、これは基本的に見積もりの​​基礎となるデータが全くないことを意味します。これは一般にデータの希薄化の症状です。これはまれで、データが非常に小さくても、他のユーザーとの接続が切断されているユーザーに対してのみ発生します。

私は個人的にはそれほど大したことではないと思いますが(20%+?)、多くのユーザーには全くrecを生成できない場合はさらに気になります。

+0

ショーン - 私は返信し、返信に感謝したいと思います。私は一連のテストを終了し、私のデータセットではピアソンが最悪の結果を出し、Log Likelihoodがユーザーに最も適した推奨であることがわかりました。一般に、私のデータの10%は「推薦できません」カテゴリに分類されましたが、ピアソンにとっては20%に似ていました。いずれにしても、リンゴとリンゴを比較するには、推薦できないデータをRMSスコアに含めることで、すべての推薦者を公正に比較することになりました。 –

+0

ピアーソン相関はコーナーケースでは定義されていません。疎なデータでは、これは珍しいことではありません。対数尤度は、少なくともこれらの場合に定義される。 (これはより良いデフォルトです。)結果は私を驚かせるものではありません。 –

関連する問題