爱吧机器人网 » 技术 > 大数据 > 正文

关于推荐系统中的特征工程

直接特征和间接特征

直接特征 Extacted Feature 就是比如商品的品牌,间接特征 Derived Feature 可以是从直接特征或者各种数据组合里计算推导出来的。

间接特征的一个例子还是品牌特征,拿女性服饰类举例。比如我太太很喜欢LOFT的衣服,但如果一个推荐引擎使劲给推荐LOFT牌的衣服,她也会很烦。所以品牌并不完全是一个直接特征,它可以有一些变化。比如从购买数据里面看到,购买了LOFT牌衣服的,有20%也购买了J Crew牌,15%也购买了Ann Taylor牌。所以 LOFT 这个特征应该变成一个向量[LOFT:1, J_Crew:0.2, Ann_Taylor:0.15,…]。实际效果上它提高了推荐的多样性,在多个测试函数中都有不错的提升。

间接特征另外一个高级一些的例子就是用户职业。绝大多数用户都不会填自己的职业等个人相关信息,主要是因为隐私或者就是因为麻烦。从用户的购买记录和浏览记录里面,我们可以定义几个预设的职业类型然后用户的职业预测到这几个类型里。比如用户买过一些转换插头和充电器还有旅行电脑包,所以他可能常外出旅行,所以以后推荐的商品可能是轻便携带;又比如用户买过母婴用品就知道该用户可能自己是妈妈或者家里有小孩。

关于间接特征我印象最深的是美国亚马逊上的性别特征。我有一次给我太太买了给女生修眉毛的剃刀,亚马逊的推荐内容就立刻从推荐相机鼠标键盘等男性特征较强的变成了推荐时尚杂志这种有女性特征的东西。

间接特征的提取可以用到很多 机器学习 的技术,比如根据商品的文本描述提取它的文本向量,以这些文本向量为特征训练多分类的分类器,可以把商品分类对应到各种用户职业特征上。它也可以利用人工标记的类型列表,比如时尚杂志的女性特征。它也可以利用一些统计规则,比如单反相机的购买记录里,男性的比例会高于女性,所以单反相机的性别特征向量可以是购买人数性别的比例值。

特征选择

这部分的工作就看起来比较高级一些,比较贴近 机器学习 的研究工作。一般来说是两个方法:基于领域知识的手工选择以及自动选择方法。

对于关联规则和统计规则的模型来说,手工选择的比重要大一些。比如我们已有了baseline的特征向量,现在加进去品牌偏好,给一定的权值,看评价函数输出的结果是否增强了推荐效果。对于学习的模型来说,可以通过模型自动选择每个特征的权值,按照和效果的关联来调整模型的参数。这里需要提醒的是,这个选择过程不是单增单减,很可能遇到两个特征组合A+B效果很好,A+C效果也很好,但是A+B+C效果就呵呵了。个人建议在关联和统计规则里面把最重要的几个特征放进去然后优化关于这几个特征的规则,把复杂的特征选择留给学习出来的模型。

自动选择方法就很多了,用的也是常用的各种自动选择方法,什么forward selection啊backward selection啊各种regularization等等,全写在这里篇幅就太长,推荐看看一些其他关于 机器学习 里 feature selection 的blog和综述。值得提醒的是选择方法和评价函数的关联。推荐系统的评价函数一般不是AUC曲线等按照error计算的函数,也就是说推荐的效果并不是按照“精准”来衡量,要遵循特定问题需要的评价函数比如nDCG,所以以error matrix为标准的一些方法可能效果会不好。比如说用PCA降低特征的维度很可能把那些对推荐效果很重要的长尾特征给舍弃了。

特征的组合变化

这部分工作看起来就比较碉堡,可发挥的空间就看你的想像力和经验了。这里的组合变化远不限于把已有的特征加减乘除(比如Kernel Tricks之类),我举个比较有想像力的例子。

现在市面上社交网络里面“你可能认识的人”的推荐 算法 几乎都是基于补全网络的办法,这样推荐的人可能只是单纯的补充和完善朋友圈,推荐的人可能很无趣,这样会导致推荐效果不好让用户失去接受推荐的兴趣。目测新浪微博用的还是这种补全的方法,因为整天向我推荐丁一晨李开复姚晨等人或者最近关注的人的共同关注人,所以推荐的人很无趣几乎都不会点关注。

斯坦福小帅哥教授 Jure Leskovec 在2010年的一篇文章“Predicting Positive and Negative Links in Online Social Networks”说到过一种基于用户反馈的推荐“你可能认识的人”的推荐 算法 ,他把邻近三人之间的三角关系总共16种正负反馈的组合当作特征向量用来表达用户A和被推荐目标用户C之间的正负反馈,在图里去掉一些已知正负反馈的边来构建训练数据,用简单的Logistic Regression训练模型达到了不错的效果。可以谷歌找到这篇文章的幻灯片,里面有图示讲解。

结语

这篇文章就简单提及一些特征工程的常用方法,说的是手工提取特征,从这些入手可以深入研究研究具体问题的具体做法,这是一个很细致的工作可以多钻研钻研。这里面没有说到自动提取方法比如深度学习和卷积网络等等,也没说到推荐系统的其他方面比如大规模用户聚类。构建一个推荐系统需要涉及很多东西,绝对不是GraphLab或者Mahout跑个协同过滤就能上马的,这里面特征工程是很重要的一部分工作,在很多其他数据和 机器学习 的工作里面特征工程也差不多是从根本上改变模型效果的重要办法之一。大家在欢乐调参的过程中不妨考虑考虑搞搞特征。

上一页12下一页

上一篇:中移动31.72亿元设苏州研发中心 着眼云计算和大数据
下一篇:做大数据过程中遇到的13个问题
精选推荐
科学家从蟑螂获得启发 教机器人更好地走路
科学家从蟑螂获得启发 教机器人更好地走路

[2017-12-11]  Weihmann指出:“我特别感到惊讶的是,动物运动稳定机制的变化与腿部协调的变化是一致的。昆虫的慢运行非常稳定,因为它的重心很低,三条腿总是以协调的方式运动。...

人工神经网络技术解码人类行为和想象时的大脑活动信号
人工神经网络技术解码人类行为和想象时的大脑活动信号

[2017-08-23]  为搜索引擎过滤信息,棋盘游戏对弈,识别图像 人工智能在某些任务中远远超过了人类智能。来自弗莱堡由神经科学家私人讲师Tonio Ball博士领导的几个杰出的BrainLinks-Bra......

机器人工程师具体都做什么?
机器人工程师具体都做什么?

[2017-12-08]  机器人工程师是幕后设计师,负责创建机器人和机器人系统,能够执行人类无法完成或不愿意完成的任务。 通过他们的创造,机器人工程师帮助工作更安全,更轻松,更高效,特别是......

全自动膝关节置换手术机器人被美国FDA批准上市
全自动膝关节置换手术机器人被美国FDA批准上市

[2019-10-14]  美国Think Surgical公司已获得美国食品和药物管理局(FDA)的批准,在美国销售用于全膝关节置换(TKA)的TSolution One®全膝关节应用 ...

瑞士研发出微型机器人集群 可像蚂蚁一样互相交流并协同工作
瑞士研发出微型机器人集群 可像蚂蚁一样互相交流并协同工作

[2019-07-12]  EPFL(瑞士联邦理工学院)的研究人员受到了蚂蚁的启发,开发了一款仅有10克重的小型机器人:他们可以相互交流,分配角色并完成复杂的任务。 ...

2023年服务机器人市场将超过250亿美元
2023年服务机器人市场将超过250亿美元

[2017-09-04]  全球服务机器人市场预计到2023年将达到250亿美元, 并在预测期内登记15% 的复合年增长率。短期中期回收期和投资回报率高 (ROI), 以及在教育和研究、临场感、防御、救援和安......

这个外科手术机器人可以为患者“量身定制”
这个外科手术机器人可以为患者“量身定制”

[2019-07-12]  世界首创,来自澳大利亚机器人视觉研究中心的研究人员正在推动手术机器人的发展边界,他们创造了可定制的、小型化的手术机器人,能够唯一地 ...

新型轻便机器人套装重5kg,辅助跑步和步行
新型轻便机器人套装重5kg,辅助跑步和步行

[2019-10-23]  虽然步行对大多数人来说似乎不是负担,但对有些人来说,这项简单的运动往往会让人感到筋疲力尽。比如手术或中风后恢复的患者、帕金森氏症患 ...

本周栏目热点

[1970-01-01]   这可能是未来最具发展潜力的职业之一,我们从职场角度为你解读如何成为 大数据 工程师,以及它的职业发展 ...

从Facebook社交媒体情绪实验看大数据道德困境

[1970-01-01]   今年曝光的Facebook私自进行社交媒体用户情绪实验的新闻引起了不小的争议,这把很多数据实验卷入到社会 ...

大数据时代的美国隐私权保护制度

[1970-01-01]   2014年5月,美国总统执行办公室(Executive Office of the President)发布2014年全球大数据白皮书 ...

那些年,曾经被我们误读的大数据

[1970-01-01]   如今,业界和学术界一直在热议大数据,不管是学术圈还是IT圈,只要能谈论点儿大数据就显得很高大上。然 ...

未来农业将在田里处理大数据

[1970-01-01]   基普·汤姆(Kip Tom)是第7代家庭农场主,他的农场种植的主要农作物是玉米和大豆,他同时也在进行玉 ...