0

レコメンデーション エンジンとして Apache Mahout を使用しています。それは素晴らしいことですが、修正方法がわからないという問題が発生しており、修正できる場合とできない場合があります...

すべての推奨データが計算され、メモリに保存されます。マシンを再起動すると、すべてのデータが失われ、再計算する必要があります。メモリにあるものを保存して、マシンが再起動したときにメモリに戻す方法はありますか? 正しい用語を使用してこの質問をしたり、動作中のメカニズムを正しく説明したりしていない可能性があることは認識していますが、本質的には、計算が完了するまでに長い時間がかかるため、すべてのデータを失うことなくマシンを再起動できるようにしたいだけです。 .

これを解決する方法について正しい方向に導く助けがあれば役立ちます。私は特にマハウト固有のソリューションを探しているわけではありません。一般的な問題を理解するのに役立つだけです...私はここで新しい領域にいます。

ありがとう、

マーク

4

1 に答える 1

1

推奨事項については、アイテム間の類似性を保存し、初期化中にロードすることができます。Mahout ディストリビューションの既存の実装については知りません。しかし、 2011 年 12 月のメーリング リストでの議論を引用すると、

アイテムベースの協調フィルタリングのモデルは、単純に事前計算されたアイテムの類似性で構成されています。

現在、このような事前計算は Hadoop ジョブとしてのみサポートされていますが、ItemBasedRecommender を使用してアイテムの類似性を順次事前計算するクラスを作成するには、1 時間ほどかかります。

これらの類似性をデータベースに保存して MySQLJDBCInMemoryItemSimilarity/SQL92JDBCInMemoryItemSimilarity 経由でロードするか、.csv ファイルに書き込んで FileItemSimilarity 経由でロードすることができます。

于 2013-09-25T09:45:52.933 に答える