每当逛(guàng)淘宝,京东的时候,线上AI机(jī)器人人就会自动保留你浏览的页面(miàn),推荐相似的产品给你,增加人们的购买力,这(zhè)个推荐系统在线(xiàn)上新零售中扮演的是什么角(jiǎo)色呢?
当人们讨论信息(xī)价值(zhí)的时候,讨(tǎo)论的不光是量和传播速(sù)度(dù),还有信息共享的范围,这一点其实和(hé)推荐系统中协同(tóng)过(guò)滤有着密切关(guān)系,即(jí)通(tōng)过(guò)共享其(qí)他人或者物品的信息进行(háng)推(tuī)荐,共的范围对信(xìn)息价值(zhí)所产(chǎn)生的影响最大。
推荐系统
推荐系(xì)统其实就是给用户推荐(jiàn)物品(pǐn)或者预(yù)测喜好(hǎo),当然还包(bāo)括(kuò)其他各方(fāng)面(miàn)的(de)东西。上图展示(shì)了各种推荐的场景,主要由(yóu)用户和(hé)产品两部分组成,这(zhè)种图(tú)模型(xíng)也(yě)是推荐系统的一种解(jiě)决方案,比如图中两个物品的(de)相识度就可以使(shǐ)用图计算(suàn)的方法(fǎ)进(jìn)行量化的解释。
国内在推荐系统(tǒng)方面主要想做的是千人千面,通过千(qiān)人千面(miàn)来实(shí)现增加点击,发(fā)掘长尾的目标。
目前推荐系统常见的使(shǐ)用场景(jǐng)有电商、社交、影音、资讯这(zhè)四个平(píng)台(tái)。
常见的推荐算法有(yǒu)基(jī)于内容、系(xì)统过滤、关联规(guī)则、基(jī)于效用以及基(jī)于知(zhī)识这几个。其(qí)中最主要(yào)的还是协同过滤,它又被(bèi)分为两类:一类是基于用户,主要在资(zī)讯平台;一类是居于物品,这类很明显是(shì)电(diàn)商平台。
基(jī)于用户的算法计(jì)算(suàn)的是(shì)用户相似度,需要维护用户信息矩阵,更社会化,而(ér)基于物品(pǐn)的(de)算法计(jì)算的是物品相似度,需要维护物品信息举证,更个性化。
上图是协同(tóng)过(guò)滤的评分预测算法,ALS中评分由两个向量(liàng)的乘积决定,SVD++认(rèn)为评分不光是有两个向量乘(chéng)积决定,个体差(chà)异(yì)同(tóng)样(yàng)也会产生影(yǐng)响(xiǎng)。
推荐需(xū)要(yào)的(de)数据一般分为三块(kuài),用户(hù)、物品、时间。时间用来(lái)关联用户和(hé)物品(pǐn),用(yòng)户数据主要是人口统计学数据、用户行为数据、用户标签,物(wù)品数据则(zé)是(shì)物(wù)品基本属(shǔ)性、物(wù)品标签、物(wù)品效(xiào)用。
对于推(tuī)荐结果的检验分(fèn)为准确率、召回率(lǜ)、覆(fù)盖率、多样性、新(xīn)颖度/流行度(dù)。
上(shàng)图展(zhǎn)示(shì)的为机(jī)器学习算法(fǎ)的5个(gè)流派,其中联结主(zhǔ)义可(kě)能是大家最熟悉的(de),所有的神经网络的算法都属于这一类。最后的(de)行为(wéi)类推其实就是推荐算法。随着后续(xù)的发展(zhǎn)这几个流派肯定会被结合起(qǐ)来。
新零(líng)售中的推荐
推荐系统中除了技术(shù),还需要有很大程度(dù)的(de)业务支持。作为一个数据(jù)科学家不(bú)光要有数据和计算机基础,还要(yào)专业知识(shí),也(yě)就(jiù)是(shì)对业务的(de)理解。在新(xīn)零(líng)售行业很(hěn)多时候(hòu)都是以业务为(wéi)主导。
新零(líng)售是(shì)2016年提出的概念,简单来说就是线(xiàn)上加线(xiàn)下加物流,比较典型的(de)有盒马生鲜、小米体验店、微(wēi)信群营(yíng)销等。从推荐的角度上来(lái)看,微信群营销其(qí)实也算作新零售(shòu)。微信群(qún)虽然可以获取到很多数(shù)据,但是和体验店一样(yàng)客户(hù)无法确认。并且每个微信群都有针对人群(qún),可以没有办法(fǎ)拿到除了头像和姓名之外的信息,用户身份(fèn)也(yě)无(wú)法获得认证,人员流(liú)动非常频繁。这些特性与实体店非(fēi)常相似,即使我们无法从单(dān)个用户的角度(dù)来进(jìn)行推荐。
与(yǔ)互联网推荐的区别新(xīn)零售(shòu)推荐与互联网推荐最大的差异在于一(yī)个线上一个线(xiàn)下,我们在做图书项目的时候发现,用户(hù)在(zài)线上买书的行为(wéi)喜好与线下(xià)很不一样。线(xiàn)上的(de)卖书的店铺经常会有一些满减促(cù)销,它的折扣力度是很吸引人的,但是(shì)在(zài)线下很少有超过5折(shé)的活动。
在互联(lián)网上由于可以实施用(yòng)户行(háng)为采集(jí),所以可(kě)以实现千人千面,但是在线下只(zhī)能(néng)通过(guò)门店的角度来进行推荐,无法具(jù)体(tǐ)到(dào)单独的(de)个体上。因此新(xīn)零(líng)售所(suǒ)能实(shí)现的是千店(diàn)千面,目标也转为(wéi)了(le)增加销量和信息共享,其实也就是信(xìn)息扩缩的过程。
上图(tú)是我们项目中的(de)图(tú)书推荐界面,也是门(mén)店所使用的(de)后台。可以(yǐ)看到这里(lǐ)包含了(le)很多信息,比如书名、作者、出版日(rì)期、销量等,每一列信息(xī)中都有很(hěn)多的(de)业务背景(jǐng)需要了解。比如对于出版超过3年的书市场效果其实已经很容(róng)易看出来了,并不需(xū)要我们再去做推荐。
之(zhī)后我(wǒ)们对该项(xiàng)目进(jìn)行了总结。首先是可用信息少,只能获(huò)取到行为信息以(yǐ)及物品信息。其次是需求不(bú)同,必须要以门店为主,也(yě)就是基于用(yòng)户的协同过滤体系(xì)。而(ér)且(qiě)图书行业每年(nián)新出(chū)版的书可能(néng)有(yǒu)几十万,但真(zhēn)正有销量(liàng)的(de)一半都不到,所(suǒ)以存在很多空值数据,没(méi)有办法做基于物(wù)品的协同过滤。最(zuì)后是反馈周(zhōu)期长,对于图书这样的线下销(xiāo)售虽然每天都能拿(ná)得数据(jù),但是(shì)反(fǎn)馈至少是以周(zhōu)为单位,因此对结(jié)果检验会产生影响。
推荐算法的应(yīng)用当算法上线的时候,一切才刚刚开始,之后还会出现各种问题,接下(xià)来(lái)我们来(lái)看一些典型的场景。首先(xiān)是(shì)强特征,有(yǒu)时(shí)会出现业务人员在与技术对(duì)接的后发现一些很重要的特(tè)征在库中不存在。其(qí)次(cì)特征不仅会增加还会消失,比如对于我们来说,客(kè)户的产品信息有时会(huì)进行改版,数据库信息也会随(suí)之改变,而我们在不(bú)知(zhī)情的情况下获取的信(xìn)息就可能会不存在,这(zhè)主(zhǔ)要(yào)是因为客(kè)户觉得(dé)这类信息不重要,而将它去除了。
这张图(tú)是算法的数据处理流程。原始数(shù)据导入后(hòu)会进行数据清洗,之(zhī)后通过不同的算法模型(xíng)或者业务规则(zé)生成模型(xíng)和结果集,最后输出结果集,再使用(yòng)不(bú)同的过滤规则(zé)得到结果(guǒ)。
上面的(de)流程适用于离线(xiàn)或者无需实时更新的场景,而如果需(xū)要实时则要在图中的推荐流程中添加召回模块。打造实(shí)时推荐不(bú)意味着实时计算,因(yīn)为(wéi)数据(jù)量实(shí)在过于(yú)庞大,而(ér)是先对提(tí)前算好的结(jié)果进行筛(shāi)选,再由一(yī)个特殊的模块(kuài)根据用户的(de)实时行为(wéi)做出(chū)推荐。一(yī)般来说计算(suàn)时间要(yào)小于0.1秒。
最后给(gěi)大家分享一些我们在新零售推荐应用上的一些想法:业务效果好的算法并不一(yī)定是复(fù)杂的算法;做项目要比光看书的收(shōu)获(huò)大得多(duō);推荐是(shì)个系统工程,算法很重(chóng)要,但不是全部。