Mahout推荐器 – 为基于项目的推荐者添加基于内容的相似性
发布时间:2020-12-14 04:45:30 所属栏目:大数据 来源:网络整理
导读:我有一个非常标准的Mahout基于项目的新闻文章推荐器(使用点击数据,因此首选项是布尔值): DataModel dataModel = new ReloadFromJDBCDataModel( new PostgreSQLBooleanPrefJDBCDataModel(localDB,...));ItemSimilarity itemSimilarity = new TanimotoCoeffic
我有一个非常标准的Mahout基于项目的新闻文章推荐器(使用点击数据,因此首选项是布尔值):
DataModel dataModel = new ReloadFromJDBCDataModel( new PostgreSQLBooleanPrefJDBCDataModel(localDB,...) ); ItemSimilarity itemSimilarity = new TanimotoCoefficientSimilarity(dataModel); ItemBasedRecommender recommender = new GenericBooleanPrefItemBasedRecommender(dataModel,itemSimilarity); 我正在尝试将基于内容的知识注入到推荐器中,因此我最强烈推荐的文章不仅在正常的协同过滤意义上是相似的,而且在他们共享许多常用术语的意义上也是相似的. 文章内容相似性(TF-IDF向量的余弦相似性)使用Mahout批次预先计算并从DB读取.但是,会有很多对没有相似性数据的文章.这有两个原因: >文章内容相似性数据的更新频率低于用户项目偏好的数据模型,因此在新文章计算内容相似性之前会有一段时间. 所以,对于一对给定的文章,我有: >项目相似度(Tanimoto)0< = s1< = 1 我的问题是: >尝试结合这些措施是否合理,还是我尝试疯狂的事情? 解决方法
是的,将它们组合起来是完全合理的.如果两者的相似性都在[0,1]中,那么最明智的组合就是它们的产品.这是您使用ItemSimilarity注入的内容,而不是IDRescorer.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |