
8.2
バスケット分析
165
だったので、驚くことではないでしょう)。そして、2 番目の手法(ユーザの関連性に基いて二値行列か
ら予測を行う手法)は最終結果にほとんど影響を与えないため、学習の段階でそれを用いないようにす
ることもできます。
このコードに従えば、他のアイデアを追加して検証することは簡単に行えます。たとえば、最も類似
した映画を一本だけ用いて予測を行う手法が良かった場合、類似した順に映画を5本選び出し、それ
らを用いて予測を行う方法はどうでしょうか? 先ほどのコードにそれを適用するために、k番目までの
似ている映画を用いて予測する手法を実装し、重みを学習させるために、以下の部分を変更します。
es = [
usermodel.estimate_all(),
similar_movie.estimate_all(k=1),
similar_movie.estimate_all(k
=2),
similar_movie.estimate_all(k=3),
similar_movie.estimate_all(k=4),
similar_movie.estimate_all(k=5),
]
#
残りは先ほどと同じ!
これで新しい機械学習システムを作り出すために、かなりの自由を手にしました。この場合、最終
結果は良くありませんが、新たなアイデアを簡単にテストすることができます。
しかし、注意点として、データセットに対して過学習にならないようにしなければなりません。実
際、あまりに多くのことをラ