您的位置:首页 > 其它

简单的推荐系统(线性分类器的一种)(就是所说的打分系统)

2016-07-19 10:30 344 查看
这个例子后来发现其实是错误的,不过应该可以用吧

以一个餐厅推荐系统为例。

·····对于每一个餐厅,人们会对其进行评论,就会产生很多的句子(所以不是打星)。我们把所有的评论句子弄成一个个的小短句,寻找对我感兴趣的短句,和短句里面的关键词(关键词就是对餐厅带有正面和负面的词)(并不是特征,因为这里没有特征这一个说法。理由见3)。提前规定(自己规定)每个关键词的权重。然后对关键词进行简单的相加,若求和的值大于0,就是积极的,否则就是消极的。

·····打个比方,我想去一家寿司店,我想吃的是寿司。然后餐厅推荐系统就会找到所有的寿司店,对于每一个寿司店进行如下操作。

1. 把这一家寿司店的所有评论提取出来,然后把句子都分成一个个小短句。由于我想吃的是寿司(而不是拉面),所以系统再次仅仅把短句子中关于寿司(而不是拉面)的评论都提取出来,仅对这些句子分析,不管拉面的评论。

2. 我们自己提前定义关键词,并对每一个关键词赋予权重。(注意关键词和权重是人来定义的,不是像其他的分类问题(logistic,svm)那样用train_data训练出来的。究其原因,我们这里没有“特征”这一个说法)。我们想要的仅仅是对“寿司”的所有评论。我们可以定义 ‘good’打1分,‘great’打2分,‘bad’打-1分,而这些都只是对“寿司”这一个的评价

3. 注意,这里没有“特征”这一说法。因为我们想要的仅仅是对“寿司”的所有评论。不像logistic,svm那样,他们会对餐厅提取特征,比如说 服务员的态度,餐厅卫生情况,食物味道,离我现在位置的距离等等,还要有一些train_data来训练参数,即有的餐厅已经被明确标记为“好餐厅”,“坏餐厅”。但是这样做出来的仅仅是对这个餐厅的总体评价,而我只是想吃一份寿司罢了。

4. 我们把对餐厅寿司的所有分数加起来,如果大于0,表示该餐厅的寿司是“积极的”,否则就是“消极的”

5. 最后,把所有“积极的”寿司推荐给我。

这个打分系统可以类比于阿里天池比赛中 购物推荐系统一样。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: