Mahout で推奨エンジンを評価しようとして、ブール値を使用しています。私の質問は、評価関数の「正しい」パラメーターの選択に関するものです。長文になることをあらかじめお詫びいたします。
IRStatistics evaluate(RecommenderBuilder recommenderBuilder,
DataModelBuilder dataModelBuilder,
DataModel dataModel,
IDRescorer rescorer,
int at,
double relevanceThreshold,
double evaluationPercentage) throws TasteException;
1) 次の 2 つのパラメーターを使用する必要がある例を考えていただけますか。
- DataModelBuilder dataModelBuilder
- IDRescorer rescorer
2)double relevanceThreshold
変数には、値 GenericRecommenderIRStatsEvaluator.CHOOSE_THRESHOLD を設定しましたが、別の値を設定することで「より良い」モデルを構築できるかどうか疑問に思っていました。
3) 私のプロジェクトでは、ユーザーごとに最大 10 個のアイテムを推奨する必要があります。variable に 10 より大きい値を設定しても意味がないということint at
ですか?
4) モデルを構築するために多くの時間を待たなければならない場合でも気にしないとすれば、変数double evaluationPercentage
を 1 に設定するのは良い習慣ですか? 1 が最適なモデルを与えない場合を思いつきますか?
5) レコメンデーション (変数) の数が増えると、精度/再現率 (私はブール データに取り組んでいることに注意してください) が増加するのはなぜですかint at
(私は実験的に証明しました)。
6) はspiting of both testing and training tests
mahout 内のどこで行われていますか? また、そのパーセンテージを変更するにはどうすればよいですか? (アイテムベースの推奨事項の場合を除きます)