学生教材网 >程序设计 > 程序资讯 > 软件研发 > 浏览文章

LBS推荐系统的设计方法[页10]

来源:网络编辑:佚名时间:2016-01-04人气:

通山一中,杀伐曲,吱吱喳喳kyo让封了

  • 效率(Efficiency):效率;
  • 稳定性(Stability):选择基于变动频度较低的因子来建立推荐算法。例如,如果商品基本固定,用户不断变化,则选择基于item的算法;
  • 说服力(Justifiability):如果要考虑说服力,则优先选择基于item的算法,因为比较容易理解;例如,因为你喜欢三星Galaxy,所以给你推荐HTC One;
  • 惊喜度(Serendipity):如果要考虑惊喜度,则优先选择基于用户的推荐。

在工业界,通常采用的推荐算法如下:

  • 多种算法融合+ 统一模型(Model)→划分等级(Ranking/Filtering);
  • 通过不同的输出来决定使用不同的算法。

(3)做协同过滤推荐的步骤

1)若要做协同过滤,那么收集用户偏好则是关键。可以通过用户的行为诸如评分(如不同的用户对不同的作品有不同的评分,而评分接近则意味着喜好口味相近,便可判定为相似用户)、投票、转发、保存、书签、标记、评论、点击流、页面停留时间、是否购买等获得。

2)收集用户行为数据之后,接下来便要对数据进行减噪与归一化操作(得到一个用户偏好的二维矩阵,一维是用户列表,另一维是物品列表,值是用户对物品的偏好,一般是 [0,1] 或者[1, 1]的浮点数值)。

3)计算相似用户或相似物品的相似度。

4)计算出来的这两个相似度将作为基于用户、物品的两项协同过滤的推荐。

基于内容的推荐

所谓内容(Content),是指能够描述用户/物品的特征,比如:

对于物品来说,要考虑的内容特征有以下三项。

(1)电影

对电影来说,需要考虑的特征如下。

  • 电影:红番区;
  • 类型:动作/冒险;
  • 演员:成龙;
  • 年份:1997。

(2)文本

对文本来说,需要考虑的特征如下。

  • 词性;
  • 单词转化为向量(Word2vec);
  • 主题。

(3)多媒体

对多媒体来说,需要考虑的特征如下。

  • Audio;
  • 图片像素。

总的来说,对用户特征来说,要考虑的内容特征如图2所示。

图2  用户特征

将用户或物品的特征进行统一表示(例如表示成特征向量),即可利用相似度来进行等级(ranking)划分,从而推荐。

总的来说,协同过滤往往没有考虑用户或物品本身的特征,但能保证有一定的惊喜度。而基于内容的推荐能够充分应用物品(item)和用户自身的特征信息,且能够提供明确的推荐理由,但是容易推荐过于一致的结果。

综上所述,我们已经把推荐系统的数学基础和设计原理讲完了。为了读者能深入了解推荐系统的设计,我们可访问《推荐系统的应用案例剖析》一文,了解更多推荐系统应用案例。

作者简介

贾双成,阿里巴巴资深工程师,擅长于数据编译、数据挖掘的系统分析和架构设计,主持研发过多个高端车载导航及adas数据编译器。曾发表发明专利、论文四十余篇,著有《LBS核心技术揭秘》、《数据挖掘核心技术揭秘》。

超越Web:2015年的JavaScript

感谢对《》一文的翻译。

热门推荐