我已经使用apache mahout测试了基于用户的建议,并且它与提供的示例数据配合良好。Apache Mahout没有提供任何单独的建议
但是,我有我自己的数据,但我无法得到一个单一的建议。我发现这是由于数据太稀疏的原因,但我会很感激专家的建议;)
它只使用购买历史记录,所以我已将所有用户的产品评为4.0 id < - >产品ID购买。
下面是数据文件:http://we.tl/RcR83vcHQI
你能不能给我一些建议,开始有一些有益的建议?
感谢您提前。
我已经使用apache mahout测试了基于用户的建议,并且它与提供的示例数据配合良好。Apache Mahout没有提供任何单独的建议
但是,我有我自己的数据,但我无法得到一个单一的建议。我发现这是由于数据太稀疏的原因,但我会很感激专家的建议;)
它只使用购买历史记录,所以我已将所有用户的产品评为4.0 id < - >产品ID购买。
下面是数据文件:http://we.tl/RcR83vcHQI
你能不能给我一些建议,开始有一些有益的建议?
感谢您提前。
这是新手对Mahout的常见问题。版本0.9和之前要求您的ID是顺序连续的非负整数。这包括用户和物品ID。它们在Mahout中用作所有输入矩阵中的行和列号。
有几种方法可以解决这个问题,例如为用户和物品ID保留HashBiMaps(Guava集合)。正如你看到的第一个ID分配一个Mahout ID为0,并将关系存储在地图中。继续浏览您的ID以查找下一个唯一的ID并为其分配Mahout ID = 1等。
然后,您将从推荐程序中返回Mahout ID。您可以使用双向HashBiMap将它们转换为您的应用程序特定的ID。
顺便说一句Mahout(1.0快照或更高版本)现在有一个完全新一代的推荐器,它基于使用搜索引擎提供推荐,Mahout来计算模型。它会直接接受你的输入 - 在里面做ID转换。它比旧的Hadoop版本具有许多优点,包括:
新的多式联运推荐者被描述如下:
感谢您的宝贵信息。然而,我仍然有0 reco :((使用hashbimap) – Devous 2015-02-10 10:47:59
你可以发布一个数据片段的数据在pastebin或一些这样的地方? – pferrel 2015-02-11 16:25:57
它已经发布与我的第一篇文章 – Devous 2015-02-12 17:39:50