【发布时间】:2012-08-22 19:15:46
【问题描述】:
众所周知,在 genericItemSimilarity 中,item1 和 item2 之间的相似度是预先计算的。
当我们使用 GenericItemBasedRecommender 获得推荐时,the recommender need datamodel and similarity in memory at the same time.根据 genericItemSimilarity,它提供了这样的构造
public GenericItemSimilarity(ItemSimilarity otherSimilarity, DataModel dataModel) throws TasteException {
long[] itemIDs = GenericUserSimilarity.longIteratorToList(dataModel.getItemIDs());
initSimilarityMaps(new DataModelSimilaritiesIterator(otherSimilarity, itemIDs));
}
只需使用dataModel及时生成相似度图。
是否有必要将相似度图存储到 Db/file 中?
我发现 mahout 0.7 有一个名为 FileItemItemSimilarityIterator 的类有助于从文件中读取相似度图。
是FileItemItemSimilarityIterator或AbstractJDBCInMemoryItemSimilarity(mahout 0.5)冗余还是无奈。
【问题讨论】:
标签: mahout