当前位置: 首页 > 科技观察

天天淘宝,你却不知道个性化推荐技术...

时间:2023-03-15 09:00:49 科技观察

这个时代,信息爆炸、长尾问题屡见不鲜,解决方案之一就是个性化推荐技术,那么什么是个性化推荐呢?,如何实现这个过程?读者阅读本文后需要做的是对个性化推荐技术有一个全局的、宏观的认识,不要对细节要求太高。个性化的具体表现:以购物APP(淘宝)为例。日常生活中,打开淘宝购物,可能会遇到以下情况:与好友同时打开淘宝后,发现两人首页各频道入口不一样。图片和文字不一致?为什么在搜索可爱背心时,您和您的朋友有不同的产品列表?为什么我浏览裤子后首页上各个频道的显示都变了?你喜欢我自己的界面吗?注:这里的渠道概念是指淘宝/好布/必买榜等电商渠道。不懂的读者可以打开App。上述情况背后的答案是个性化推荐技术。包含相关的搜索技术。那么淘宝是怎么做到的呢?其实这背后是数据的收集、挖掘计算、个性化呈现。那么基于以上问题,我们又会问:淘宝怎么知道我喜欢什么,我可能想买什么?为什么它让每个人都不一样?为什么要这样做?淘宝是怎么知道的?回答这个问题其实是有一套机器学习方法支持的,所以我们首先要搞清楚什么是机器学习。机器学习概述我们先来看看什么是人类学习。这里的主题是人。学习是指通过阅读、聆听、思考、研究和实践获得知识或技能的过程。学习分为狭义和广义:狭义:通过阅读、聆听、研究、观察、理解、探索、实验、实践等方式获取知识或技能的过程,方法和过程,情感和价值的提升和升华)行为。从广义上讲,它是在生活过程中通过获得经验而产生的一种相对持久的行为模式或行为潜能。学习后,主体可以将过去所学的知识和技能应用到今后的生产和生活中,开展工作。从字面上理解,机器学习就是用机器代替主体的过程,通过一定的方式获取知识或技能,并将其应用到未来的生活和工作中。人获取知识的外化载体是书籍、音频、视频等,传输通道是人的感官,处理中枢是大脑,对应于机器,外化载体也可以有以上各种信息源,并使用各种外部存储设备收集信息,处理中心由CPU和存储共同维护。人类学习有两种基本方法,一种是演绎法,一种是归纳法。这两种方法对应人工智能中的两个系统:专家系统和机器学习系统。所谓演绎法,就是从已知的规则和事实中推导出新的规则和新的事实,与专家系统相对应。专家系统也是早期的人工智能系统。它也被称为规则系统。找一群某个领域的专家,比如医学领域的专家,他们会把自己的知识或经验总结成一定的规则和事实。比如一个人体温超过37度,流鼻涕,流泪,那就是感冒了,这是一个规律。当这些专家把自己的知识和经验输入到系统中,系统就开始运行,每遇到一些新的情况,就会把它们变成事实。当事实输入专家系统后,专家将根据规则或事实进行推论和整理,得出最终结论。这就是专家系统。归纳法是从已有的样本数据中不断观察、归纳、归纳规律和事实,对应机器学习系统或统计学习系统,以统计学习为重点,从中统计、挖掘、发现潜在的规律和事实。大量样本。事实。举个栗子大家可能更容易理解这个过程,对于已经对机器学习有一定了解的同学,我们来说说什么是特征工程中的交叉特征和线性/非线性模型。①数据→单一特征(低级特征)+线性模型→预测假设有一对情侣,你是主角(女朋友),2个月前,朋友给你介绍了一个工作狂男友。为了了解对方,每个周末都会约个饭局;你们约会8周了,男朋友每周都会比约定时间晚10-30分钟吃饭,所以你们每次约会也会比约定时间晚10-30分钟。而你总结了一个规律:如果你在约会前打电话说你在上班,你会迟到30分钟左右,如果你说你在家,你会迟到10分钟。②数据→交叉特征(高层特征)+线性模型+单特征(低层特征)+非线性模型→预测上述情况不会持续太久,男朋友迟到的情况有所增加。有时他会在公司迟到15分钟。但有时我会在家迟到20分钟。所以有时候你等男朋友来了很久,问完迟到15分钟和迟到20分钟的具体情况后,你得出的结论是:如果男朋友在家,没有开车过来,通常需要20分钟,如果男朋友在上班但他开车过来,则只需15分钟。③Data→crossfeature(highlevelfeature)+singlefeature(lowlevelfeature)+非线性模型→prediction但是没过多久,男朋友的迟到时间又变了,这次基本上迟到时间在10-45分钟之间,并且非常不规则。然后你总结了你的经验,认为我应该分析分析本质原因,然后看看迟到多久合适,于??是你得到以下可能对你男朋友迟到时间有用的因素(特征):是出发,是否开车,是否下雨,出发时间等等。所以最后你通过分析发现你没有找到一个很强的规则:下雨了(不是下雨),男朋友HH:MM从家里出发(公司),并在开车(不是开车)的特定时间迟到。但是你分析过,下雨天男朋友迟到17:00以后,一般迟到30-45分钟,不下雨的时候,男朋友一般迟到10-20分钟。他在17:00之前离开家,依此类推。健康)状况。但是你还是想更精确一点,于是你问了你的好朋友——一个算法工程师,经过一番数据挖掘,他告诉你一个公式,按照他的公式算出你的迟到时间就可以了。你想知道他是怎么做到的,所以你开始向他征求意见。他告诉你,以上所有因素都可以作为一个变量,每个变量都有一个权重;比如天气的权重是8,下雨的时候,迟到的时间会加8分钟,如果不下雨,则不加。再比如,是否开车的权重为10,不开车加10分钟迟到,开车时不加,以此类推。那么更进一步的问题是这个重量是怎么来的呢?那么学习上述决策机制的过程需要以下几个要素:数据:男朋友每次迟到的时间,以及迟到前的状态(天气、地点、出发时间等)。特征工程:比如上面位置和是否开车的二维组合就是特征工程(crossfeature)。算法:使用决策树(非线性)或线性回归(线性)等算法。Learnedmodel:主要是指由上述特征的权重组成的公式。注:这里涉及到一个问题,多少重量才是合适的重量?这就涉及到一个模型评估的问题。例如,如果你用你学习到的权重来比较模型A和模型B,模型A在接下来的10个约会中有10分钟的累积误差,而模型B有15分钟,那么模型A的权重就比B好。当然,具体算法模型的迭代过程我们以后再说。延伸:上面的例子讲述了在机器学习的整个框架下,有两类深度挖掘特征和深度挖掘算法。makingfeatures就是针对具体的问题,构造各种可能影响问题结果的因素(包括单一特征和交叉特征)。深度挖掘算法实际上是在尝试不同的算法,比如线性和非线性(浅层学习和深度学习算法)。目前业界比较有代表性的做法是LR+deepfeatures,DNN+shallowfeatures。以上三个约会例子的渐进性其实对应的是机器学习中的反馈学习和强化学习。根据男友迟到的时间,女孩正在动态调整自己的迟到时间。机器学习过程中的几个注意点①从感知到认知:感知的一个重要表现是对数据的获取和收集(可以类比为人类对信息的获取,比如眼睛),而认知则强调理解。②从学习到决策:学习,将相关算法应用于已有数据进行计算,归纳规则/模型;决策,遇到新问题时,用学到的知识去学习。算法和数据哪个更重要:数据秒杀所有算法,但真正推动社会进步的是算法,而不是数据。数据就像工业革命时期的煤炭,非常重要,而蒸汽机就像算法。***大家记住的是瓦特发明了蒸汽机,而不是英国的煤矿。机器学习的通用概念是监督学习。监督学习的数据比较特殊。比如你中学学英语,在老师的帮助下练习英语发音,数据就是你的发音和这个发音的正确/准确度(对错度/准确度是老师告诉你的)。那么算法就是你试着模拟数据的规则(发音),根据英文单词的拼写规则不断学习发音,最后你学会根据句子的拼写和上下文来调整发音.无监督学习无监督学习数据中没有人可以告诉你正确或错误的信息。比如今天老师给了你一个碗,里面有黑米和红米,让你把这个碗里的米归类。您可以根据颜色分类,也可以根据大小和重要性分类。没有问题,因为老师没说什么样的分吧?降维就是从更基本的维度看问题。比如这双鞋,降维可以是运动品牌Nike,也可以是运动鞋的品类。GeneralizationGeneralization是你学到的规则/模型的普适性。比如今天老师给你看20个西瓜,告诉你熟了没有,然后给你一个西瓜,让你看外表。西瓜熟不熟,可以根据以下几点来判断。也许你是这样做的:看表皮,你发现这20个瓜中,表皮光滑、花纹清晰、纹路明显、底黄的瓜都是熟的,但不满足其中任何一个条件的都不是熟了。所以你学的模型是这样的:如果瓜皮表面光滑,花纹清晰,纹路明显,底面呈黄色,说明瓜熟了;其他的是未成熟的瓜。但实际上,有的时候,纹路并不明显,但在满足其他条件的情况下,有的是熟瓜。所以你学习到的模型有一定的泛化性能,但是泛化性能不是很高。如上图所示,目标就是蓝线。你已经从数据中学习了左右红线。左边有一些错误,右边没有错误,但是对于真正的目标,还是左边的好一些,因为在日常的问题中,你不可能得到所有的数据,所以会出现泛化的问题。机器学习最难的是什么?机器学习最难的一步就是将现实生产生活中的一个问题提炼成机器学习问题。这是基于对问题本身的深刻洞察。如何从一个新的领域中提炼出机器学习可以帮助解决的最重要的问题。淘宝的机器学习可以从上面机器学习相关的介绍类推。为什么淘宝App能知道你喜欢什么,是基于一个假设:一个人历史上的购物行为和喜好,在未来的行为中也会有迹可循。所以利用机器学习,我们利用用户历史交互数据(特征包括:谁在什么时间买了什么,这个东西的名字是什么,什么颜色,价格是多少等等)。更有用的可以指导未来推荐的特征包括:购买力,一个平时只买100元左右牛仔裤的用户,未来短期内购买10000元或10元牛仔裤的概率远低于购买100或200的牛仔裤概率,所以推荐的时候会优先看100-200左右的裤子。性别,通常在淘宝上只购买男装或男女通用产品的用户,未来短期内购买女装产品的概率远低于男装和男女通用产品的概率。年龄,20-25岁左右一直购买服装的用户,未来短期内购买其他年龄段的概率远小于20-25岁年龄段的概率。等注意:以上所有特征都将有助于***预测用户可能喜欢什么,但请注意,一个人也可能违反以前的购物行为。比如,一个只能为20-25岁的人买衣服的女人,突然就买了婴儿的衣服。在这一点上,这可能是她孩子的出生或给她姐姐的孩子的礼物。这种购物兴趣的瞬时变化,一般是由实时封面推荐决定的。为什么每个人都不一样?参考上面的公式,你会发现如果在机器学习阶段考虑一些与人相关的因素(特征),这个因素的不同取值会影响结果输出。例如,我们现在根据用户对他购买过的商品的评分数据来预测他从未购买过的产品的评分。用户评分背后的因素可能包括:价格、售前/售后、物流、商家主商品类别是否与用户购买的类别相同、其他用户的评分(如果评分其他用户高,一定程度上代表了产品的质量),等等。比如物流、价格等因素(特征),如果和用户的特征相交,其实它们的权重值会有很大的不同,而这一切都是每个用户购买力和用户体验承受能力的差异带来的.所以如果考虑到用户的特点,这会影响到每个人的推荐结果。淘宝为什么要这样做?至于淘宝为何在个性化上花费如此多的资源,可以归纳为以下三点:获取新认知,创造新智慧,做出有价值的决策,从历史数据中挖掘用户的消费需求,从旧数据中挖掘新认知,从新认知出发,结合机器学习算法创造新智慧,帮助用户发现自己感兴趣的产品,并为用户呈现最合适的产品。长尾挖矿打破了80%的用户只购买20%的产品的规律,更好的降低了长尾产品的占比。因为在电商产品中,在非个性化的产品展示过程中,热门产品往往拥有更多的流量,所以实际上优质的长尾用户和优质的长尾产品并不能得到很好的照顾。比如在淘宝某个频道上,有很多裤子。100元的A裤近5天销量可能是1w条,1000元的B裤近5天销量是100条。无论其他因素如何,非个性化模型(或操作排名)通常会偏爱A裤而不是B裤。但是如果用户在平台的历史购物行为集中在高价商品(名牌包包等),那么如果单独考虑每个人的喜好,那么有可能B裤在前,而用户可能真的更喜欢B裤。在App或网站有限的产品曝光机会下,流量利用力求每个展示的产品获得最大的点击/交易。因为用户在平台上的时间是有限的,如果用户能够在海量的商品中找到自己感兴趣的商品,那么平台将在这种有限的流量资源下获得更大的价值。比如某个用户有可能在某个频道看了A,然后是B,然后是C,最后买了D,ABCD这四个产品有一定的相关性,平台能不能一开始,我看了A之后,帮我找到了C,并推荐了A下的D商品,在最大化挖掘用户购物需求的情况下,将用户的购物时间缩短到最少。用户体验为每一位用户创造最佳的用户体验。最好的用户体验是用户对平台的信任和依赖。在每次购物过程中,他们都希望平台能够帮助他们快速、准确地找到自己想要的商品。这个过程包括基于用户历史兴趣的再扩展,以及基于用户角色的行为探索。例如,用户每25-30天就会购买一次纸尿裤。未来的平台能否快速捕捉到23-33岁用户购买纸尿裤的需求?再比如用户第一次在平台上浏览电脑。根据用户的其他购物行为(例如用户之前经常在平台购买20-25岁的衣服,邮寄地址多为大学宿舍),平台是否可以在下次浏览时,向用户展示配备适合学生的高性价比电脑。推荐技术概述①推荐在电子商务决策过程中的作用电子商务网站为顾客提供商品信息和建议,帮助用户决定购买什么商品,并模拟销售人员帮助顾客完成购买过程。经典图:上图暗示了推荐系统的两个重要核心功能:路径优化(弱化主动筛选功能):从看A,再看B,再看C,***买了C到看到A,推荐系统推荐C,用户下单。兴趣发现(贴心小秘书):当你去淘宝不知道买什么的时候,它会告诉你你可能喜欢什么,经常推荐的商品。②推荐系统如何比较人类行为?其实推荐系统做的事情可以比作生活中贴心的男朋友或者女朋友,所以我们把他当成男朋友,看看他是怎么做的:尚知天问,穿越地理:下雨了,你男朋友知道你没带伞,他就把伞送到了公司。看字表情:女朋友一直在看宝贝,尤其是LV的,生日的时候买了一个。人情世故:我看到你几个闺蜜买了某支口红,没几天就买了这支口红。过目不忘:他会记住你常说的偶像和崇拜者,时不时买几部他们的新作。体贴点:他知道你阿姨来的时候喜欢吃甜品,那几天他会带你去。紧跟时尚:新品发布,只要是您感兴趣方向的产品,我们都会为您采购。③推荐系统是如何实现以上几个方面的?Context:推荐系统在向您推荐产品时会考虑您的城市、天气、季节等因素;雨天雨伞比平时好,夏季空调需求高于秋季。北方人比南方人更喜欢保湿化妆品。用户画像:男女/月经时间/甜品都可以作??为标签,作为推荐依据,你上次买的阿姨巾/纸尿裤/奶粉要用多少天,19岁男生一般不(低概率)购买女式比基尼。协同过滤:基于用户:在茫茫购物人群中,总有一些人和你很相似(类似于上面的闺蜜);推荐系统根据你的行为(浏览、点击、购买)计算出与你最相似的那些用户,当他们阅读/购买东西时,他可能会推荐这些产品。基于产品:在浩如烟海的产品中,总有一些产品的属性和描述相似,或者经常一起购买;推荐系统会计算物品之间的相似度或关联度,当你看一个商品时,他会向你推荐最相似/相关的商品。Model-based(这个比较抽象):用数学建模来评估你的购买意愿,把模型计算出来的最好的分数推荐给你。基于内容:在浩如烟海的商品中,总有一些商品的属性和描述非常相似;当您查看某些商品时,推荐系统会向您推荐那些内容最相似的商品。Others:基于统计/知识等。目前主流的推荐系统都是以上几种策略的混合。什么样的产品推荐效果是稀疏性、多样性和及时性的明显平衡?目前来看,推荐更多的是锦上添花。如果没有一定的数据量,效果会大打折扣。Sparseness:Stabletrafficandstableinteractionratio(PV/UV)稳定的流量和稳定的交互比保证了数据的密度。单个用户和单个产品有足够的数据来完成机器学习,并保证一定的置信度Spend。当新用户(新产品)加入系统时,由于系统中缺少用户(产品)历史反馈信息,完全无法推断用户的喜好,无法做出预测。及时性:可以得到快速的反馈用户行为数据越早反馈,产品推荐效果越明显:因为用户的兴趣在变化,通过机器学习推导用户兴趣需要的材料就是数据,如果可以快速反馈用户行为数据,算法模型可以实时捕捉到用户不断变化的兴趣,当然效果自然会很明显。多样性:项目的类别是多种多样的。各种类别可以从不同的角度满足用户。商品体量越大、品类越多,推荐价值就越大。多样性和稀疏性:item增长相对稳定如果产品本身的item增长不稳定,大量新item的涌入会使冷启动非常明显,item增长缓慢会导致多样性问题,并且推荐不能很好的从有限的词条池中选择适合用户的词条。未来电子商务不能只做交易。围绕产品更新、产品质量、产品与买家的匹配度,从以下四点优化推荐:提升买家的用户体验,提高购买决策的质量和效率,实现优质买家的差异化服务。提高产品的有效曝光机会和转化率,提高卖家和用户的效果和收益。利益平衡机制平衡了曝光机会,增加了曝光产品和商户的覆盖率。提高买家的留存率和卖家的续约率,增强买卖双方的忠诚度,增加产品的点击率。浏览和交易之间存在巨大的差距。未来,推荐将帮助平台挖掘消费深度,提升特定场景下的推荐转化。拓宽消费广度,提高推荐素材覆盖率,提高用户覆盖率,拓展每一个场景,实现浅消费到深消费再扩大消费。围绕物与人的连接以及相应的业务需求,连接匹配质量更高,连接广度更广。同时通过机制设计促进整个业务和生态的健康发展,成为带动整个新业务发展的引擎。作者:姚凯飞简介:ClubFactory推荐算法负责人。上海交通大学硕士毕业,前阿里推荐算法工程师,多年电商和视频推荐经验,目前在海外电商俱乐部工厂负责推荐算法工作。