如何在推荐引擎中添加用户和项目元数据,以及哪种python开源工具可以提供这些功能



例如:我有一个类似的主文件

                           userid    itemid   rating
                              1         2        5

另一个用户文件,其中存在与用户相关的元数据,元数据可能有很多:

  userid   age
   1       5
   2       8

我还有一个项目文件,其中存在与项目相关的元数据。元数据可能是许多

    itemid     item_catagory   item_geo
    1            5               india

如果我要向用户推荐任何项目,我希望包括这些元信息。我想知道矩阵分解是否有用,以及哪一个python开源模块有这种实现。

要向推荐系统添加附加信息,例如关于项目、用户或推荐事件,可以应用上下文感知推荐系统(CARS)的现有方法之一。

试着从Factorization Machines开始。您可以将数据转换为svmlight格式,然后使用参考实现libfm。它有最好的文档,还有一个类似的例子,你可以找到如何准备你的数据。如果必须是Python,那么也有许多现有的实现,例如fastFMSimpler-pyFM。如果你想试试Julia,也许你可以用我的FactorizationMachines.jl代码作为基础:-)

如果您对标准FM感到满意,请查看:LightFM和Field Aware FM

我认为FM是CARS最成功、最容易使用的模式之一。请给一些反馈它是如何为您工作的。如果你需要不同的方法,我会很乐意提供帮助。

最新更新