在网上看到了一些关于推荐算法的感想,都是从无数业务中结合理论升华出来的宝贵经验,在此收集在此。
一、同为推荐,大不同!
不知道同学们是否经常在天猫购物,但是相信大家一定听过音乐,看过电影,读过新闻和小说。大家在享受各种娱乐信息的时候,正在被网站的后台悄悄地记录着你的信息,分析着你的偏好,然后向你推荐越来越喜欢的内容。整个过程也许你并没有明显的感知,但是你会慢慢上瘾,喜欢上它,比如爱上虾米。这其实都是推荐算法的功劳。现在,你们也有机会用自己的算法让大家爱上购物。但是,音乐推荐、视频推荐、新闻推荐和品牌推荐的不同之处还是要注意的,要去思考的。
不都是推荐么?有什么不同的呢?其实,还是有很多不同点的,我觉得没有一个人能把所有的不同点罗列清楚,暂且和大家分享一下我想到的一些点,没有什么逻辑,主要是抛砖引玉,希望大家能跟帖谈谈你们认为的不同点。
1、代价不同。你推荐给我一首歌,不好听,大不了换一首,不好听,再换,最后总能找到自己喜欢的歌。可是购物呢,你推荐我一个服装品牌,我花了半个月的伙食费买了,等待了几天,到货后发现不满意,怎么办?扔掉?太可惜了!穿在身上?天天别扭!退掉?还要再花点邮费!不管结局怎们样,总之不爽。如果是买个家居什么的,不喜欢的话,可能后悔一辈子。所以购物的用户体验周期要远长于音乐、影视推荐。推荐的试错成本很大。
2、需求的单一性与喜好的相似性。喜欢看动作片,那么相似的动作片我都能看一遍。但是购物就不同了,购物更多的是刚需,喜欢可爱的衣服,一般人也不会把所有喜欢的可爱的衣服都买下来,更多的是每个季节只买一件。家居类的频次就低了,可能一辈子就买一次。不同的类目的需求频率是不一样的。
还有很多不同的点,这里不再赘述。找不同有什么用?当然是算法选择了,通过上面的2个不同的点,你还会用协同过滤么?
二、活用数据,不要被数据绑架!
大家一谈到大数据就兴奋,数据就是资产,数据就是财富。
其实,大就是少,越是真实的业务数据,数据量就越大,可用的信息比例就越少,更多的是噪音数据。
玩大数据和玩实验室数据有啥不同?夸张点,就是大海捞针和试管捉鱼的不同!如果没有找到适合的信号探测方法,很难找到那根你要的针。
如果你拟合了噪音数据,那就被数据绑架了,所以不要只看数据,更多地从思考一下业务。
相关与因果
最近有本书很火,里面提到一个论点,大概意思是:大数据更重视相关,不关心因果。大家不要迷信这些话。我举几个例子:1)你如果看数据,手机和手机配件的相关性一定很大,如果一个人买了手机,你推荐手机配件是合理的,但是如果一个人买了手机配件,你去推荐手机就有点弱智了。2)孕妇装和奶粉的相关性也许很大,但是买了奶粉的人,推孕妇装就不合适了。所以买了又买的又字不是同时的意思,是条件的意思。
人的消费行为是有规律的,比如:随着收入的增加会越来越重视品牌,在人生的不同阶段会买不同类目的商品等等;人的消费有心理学现象的,比如:从众购买,容易受限时秒杀等活动影响等。
信号与噪声
信息就像能量一样,总会衰减,最终退化成毫无意义的噪声。我昨天点击了某个品牌,说明可能想买,但是如果是上个月点击的,和现在会不会买基本上没有多大关系了。
对品牌A点击了1次,对品牌B点击了10次,是更喜欢品牌B,还是犹豫不决?需要通过数据去分析,要结合其它指标对判定。
点击了某个品牌是想买,还是过来看看卖家是否发货?或者没到货前,再品味一下?
所以,真实的业务数据处处都是噪声。
活用数据,设计有业务含义的特征体系,是构造鲁棒模型的基础!
feature不但重要而且很关键,模型或者算法的作用在于如何更好组合这些feature。举个例子,就像玩乐高积木,feature就像各种组件,如果你想做一个汽车积木,首先要凑够车轮、车轴等零件和组件(feature),模型或者算法就是你的设计,通过你的设计用你自己选择的零部件组装一辆汽车。然后看谁的车跑的远,或者做的像。如果测评的是谁的车跑的远,就要重点选择车轮、车轴,如果考虑看谁的车做的像,就要考虑车灯,车窗,车架。首先看你要比什么,这是优化目标,然后看需要什么特征(零部件)和算法(设计)。
请关注“天池”平台支持的脚本和已有的算法,在Season 1可以使用自己熟悉的,但是Season 2数据是不可下载的,只能在“天池”平台上操作。
Season 2:2014年4月25日至7月30日,参赛者须使用“天池”平台(阿里巴巴自主研发的分布式计算平台),访问海量的天猫数据,并利用Map&Reduce、SQL及各种平台集成的机器学习算法包调试模型、提交结果。
Season 2:2014年4月25日至7月30日,参赛者须使用“天池”平台(阿里巴巴自主研发的分布式计算平台),访问海量的天猫数据,并利用Map&Reduce、SQL及各种平台集成的机器学习算法包调试模型、提交结果。
F1-score只是衡量模型和算法效果的多种方式中的一种,评分标准的制定是主办方权衡各种利弊制定出来的。同学们要从解决真实业务问题的目的出发,不要刻意去找所谓的漏洞。相信一点,相对于高分,大家更希望看到高分背后的好思路、好算法和好特征。我们要做的是找到业务背后的规律,不是对数据的拟合,也只有前者才可以取得最后的好成绩。
楼主体会很多,相信在建模的过程中,考虑到了很多实际情况,这一点就是做实际工作和搞研究的不一样。最近参加大数据竞赛,看了国内很多写个性化推荐算法的论文,品质不算太高(只是觉得对竞赛的帮助不是特别大,个人鄙见,看的数量不是太多)。具体问题确实需要具体分析,越真实的环境,越需要贯彻:实事求是、求真务实的精神。
至于“天池”平台,希望他能够提供更多的数据工具箱,比如ARMA的时间序列分析,更多的回归方法~~~
建模的魅力是无限的,建立模型量化消费者的购物欲望,进而进行预测推荐,可能是需要我们仔细思考的。
至于“天池”平台,希望他能够提供更多的数据工具箱,比如ARMA的时间序列分析,更多的回归方法~~~
建模的魅力是无限的,建立模型量化消费者的购物欲望,进而进行预测推荐,可能是需要我们仔细思考的。