8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

利用 LightFM,在没有交互的情况下根据关键字向用户推荐文档

Chrysophylaxs 2月前

28 0

我有一个关于 LightFM 使用的基本问题,如果这不是合适的论坛,请原谅。我正在构建一个推荐系统,它将向用户推荐文档。目前还没有互动...

我有一个关于使用 LightFM ,如果这不是合适的论坛,请原谅。

我正在构建一个推荐系统,用于向用户推荐文档。目前还没有交互,我们对用户的了解仅限于他们感兴趣的关键字集。

我构建了一个原型,使用 TF-IDF 转换每个文档。然后,我使用相同的转换器转换用户的关键字,并使用余弦相似度来查找最相关的文档。效果相当不错。

我现在正在将其移植到 LightFM,以便我们可以包含交互,但首先我需要系统的性能与 TF-IDF 解决方案一样好,但我很难让它发挥作用。这是当前的方法:

首先,我在语料库中的所有项目上构建一个 LightFM Dataset 对象,使用 TF-IDF 来构建项目特征。(因此,每个项目都由一个约 3300 个元素的稀疏向量表示,其中每个条目对应于一个词干和该词的 TF-IDF 权重。)

当收到针对新用户的推荐请求时:

  1. 获取该用户的关键字。形成一个仅包含所有关键字的字符串的伪文档。
  2. 使用与构建语料库特征相同的矢量化器,获取该伪文档的 TF-IDF 特征
  3. 重新训练 LightFM 模型,该模型由用户和伪文档之间的单次交互组成, item_features 由语料库的项目特征和伪文档的特征连接而成
  4. 调用预测函数来获取建议

在我的单元测试中,我有 52 个文档,它们被转换为约 3300 列的 TF-IDF 向量。用户的伪文档被转换为一个向量,其中包含与该关键字相对应的单个 1.0 条目。

因此,我期望预测结果会给那些与关键词对应的 TF-IDF 条目也较高的文档打出高分。但结果却是,分数差不多,大约为 -0.5。

我在这里做错什么了吗?

帖子版权声明 1、本帖标题:利用 LightFM,在没有交互的情况下根据关键字向用户推荐文档
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Chrysophylaxs在本站《python》版块原创发布, 转载请注明出处!
最新回复 (0)
返回
作者最近主题: