我可以使用Apache Mahout Taste进行用户首选项匹配吗



我正在尝试根据预定义的用户偏好匹配对象。一个简单的例子就是找到最匹配的矢量。

假设用户"Tom"根据其预定义的偏好获得了一辆租赁的旅行车。在这种情况下,预定义的用户偏好将是-

**Tom的预定义用户偏好:

PreferredVehicle (Make='ANY', Type='3-wheeler/4-wheeler',
Category='Sedan/Hatchback', AC/Non-AC='AC')

**而可用的10辆车是-

Vechile1(Make='Toyota', Type='4-wheeler', Category='Hatchback', AC/Non-AC='AC')
Vechile2(Make='Tata', Type='3-wheeler', Category='Transport', AC/Non-AC='Non-AC')
Vechile3(Make='Honda', Type='4-wheeler', Category='Sedan', AC/Non-AC='AC')
;
;
and so on upto 'Vehicle10'

我想做的就是为汤姆选择一辆最符合他的偏好的车,也可能按顺序给他选择,即先选择最匹配的车。

我的问题:

  1. 这可以用Mahout Taste完成吗
  2. 如果是,有人能给我指一些示例代码,让我快速开始吗

由于以下原因,推荐器可能不是适合这份工作的最佳工具。首先,我不认为在这个领域最好的答案都是针对个人的。如果我想要一辆福特福克斯,你拥有的最好的替代品可能对大多数用户来说都是一样的。其次,这里没有太多的发现问题。我正在寻找一辆满足特定需求的汽车;我并不特别想要或需要寻找新的和未知的交通工具,就像我为音乐所做的那样。最后,每个用户没有太多数据;我想大多数用户以前从未租过房,很少有人租过3+。

你能把这些数据扔给推荐人吗?当然,试试马胡特口味(我是作者)。如果你有《Mahout in Action》一书,它会带你读完。由于这是非评级数据,我也可以推荐后续项目Myrrix(http://myrrix.com)因为它将更容易设置和运行。你至少可以评估一下结果,看看它是否有用。

无论哪种方式,你的工作都只是从你的数据中制作一个"userID,vehicleID"对的CSV文件并输入。然后它会给你车辆ID作为任何用户ID的推荐。

但是,我想你会做得更好,分析人们在没有车的情况下选择了什么,看看差异,了解他们最有可能和最不可能牺牲的属性,并学会用这种方式为备选方案打分。这是完全可行的,因为这个数据集很小,而且您有丰富的项目属性数据。

最新更新