匹配推荐算法
㈠ 3分钟轻松了解个性化推荐算法
推荐这种体验除了电商网站,还有新闻推荐、电台音乐推荐、搜索相关内容及广告推荐,基于数据的个性化推荐也越来越普遍了。今天就针对场景来说说这些不同的个性化推荐算法吧。
说个性化之前,先提一下非个性化。 非个性化的推荐也是很常见的,毕竟人嘛都有从众心理,总想知道大家都在看什么。非个性化推荐的方式主要就是以比较单一的维度加上半衰期去看全局排名,比如,30天内点击排名,一周热门排名。
但是只靠非个性化推荐有个弊端,就是马太效应,点的人越多的,经过推荐点得人有更多。。。强者越强,弱者机会越少就越弱,可能导致两级分化严重,一些比较优质素材就被埋没了。
所以,为了解决一部分马太效应的问题,也主要是顺应数据化和自动化的模式,就需要增加个性化的推荐(可算说到正题了。。。)个性化的优点是不仅体验好,而且也大大增加了效率,让你更快找到你感兴趣的东西。YouTube也曾做过实验测试个性化和非个性化的效果,最终结果显示个性化推荐的点击率是同期热门视频的两倍。
1.新闻、视频、资讯和电台(基于内容推荐)
一般来说,如果是推荐资讯类的都会采用基于内容的推荐,甚至早期的邮件过滤也采用这种方式。
基于内容的推荐方法就是根据用户过去的行为记录来向用户推荐相似额推荐品。简单来说就是你常常浏览科技新闻,那就更多的给你推荐科技类的新闻。
复杂来说,根据行为设计权重,根据不同维度属性区分推荐品都是麻烦的事,常用的判断用户可能会喜欢推荐品程度的余弦向量公式长这样,我就不解释了(已经勾起了我关于高数不好的回忆)。。。
但是,这种算法缺点是由于内容高度匹配,导致推荐结果的惊喜度较差,而且有冷启动的问题,对新用户不能提供可靠的推荐结果。并且,只有维度增加才能增加推荐的精度,但是维度一旦增加计算量也成指数型增长。如果是非实体的推荐品,定义风格也不是一件容易的事,同一个作者的文风和曲风也会发生改变。
2.电商零售类(协同过滤推荐和关联规则推荐)
说电商推荐那不可能不讲到亚马逊,传言亚马逊有三成的销售额都来自个性化的商品推荐系统。实际上,我自己也常常在这里找到喜欢的书,也愿意主动的去看他到底给我推荐了什么。
一般,电商主流推荐算法是基于一个这样的假设,“跟你喜好相似的人喜欢的东西你也很有可能喜欢。”即协同过滤过滤算法。主要的任务就是找出和你品味最相近的用户,从而根据最近他的喜好预测你也可能喜欢什么。
这种方法可以推荐一些内容上差异较大但是又是用户感兴趣的物品,很好的支持用户发现潜在的兴趣偏好。也不需要领域知识,并且随着时间推移性能提高。但是也存在无法向新用户推荐的问题,系统刚刚开始时推荐质可能较量差。
电商行业也常常会使用到基于关联规则的推荐。即以关联规则为基础,把已购商品作为规则头,规则体为推荐对象。比如,你购买了羽毛球拍,那我相应的会向你推荐羽毛球周边用品。关联规则挖掘可以发现不同商品在销售过程中的相关性,在零售业中已经得到了成功的应用。
3.广告行业(基于知识推荐)
自从可以浏览器读取cookies,甚至获得年龄属性等信息,广告的个性化投放就也可以根据不同场景使用了。
当用户的行为数据较少时,基于知识的推荐可以帮助我们解决这类问题。用户必须指定需求,然后系统设法给出解决方式。假设,你的广告需要指定某地区某年龄段的投放,系统就根据这条规则进行计算。基于知识的推荐在某种程度是可以看成是一种推理技术。这种方法不需要用户行为数据就能推荐,所以不存在冷启动问题。推荐结果主要依赖两种形式,基于约束推荐和基于实例推荐。
4.组合推荐
由于各种推荐方法都有优缺点,所以在实际中,并不像上文讲的那样采用单一的方法进行建模和推荐(我真的只是为了解释清楚算法)。。。
在组合方式上,也有多种思路:加权、变换、混合、特征组合、层叠、特征扩充、元级别。 并且,为了解决冷启动的问题,还会相应的增加补足策略,比如根据用户模型的数据,结合挖掘的各种榜单进行补足,如全局热门、分类热门等。 还有一些开放性的问题,比如,需不需要帮助用户有品味的提升,引导人去更好的生活。
最后,我总想,最好的推荐效果是像一个了解你的朋友一样跟你推荐,因为他知道你喜欢什么,最近对什么感兴趣,也总能发现一些有趣的新东西。这让我想到有一些朋友总会兴致勃勃的过来说,嘿,给你推荐个东西,你肯定喜欢,光是听到这句话我好像就开心起来,也许这就是我喜欢这个功能的原因。
㈡ KMP模式匹配算法是什么
KMP模式匹配算法是一种改进算法,是由D.E.Knuth、J.H.Morris和v.R.Pratt提出来的,因此人们称它为“克努特-莫里斯-普拉特操作”,简称KMP算法。此算法可以在O(n+m)的时间数量级上完成串的模式匹配操作。其改进在于:每当一趟匹配过程出现字符不相等时,主串指针i不用回溯,而是利用已经得到的“部分匹配”结果,将模式串的指针j向右“滑动”尽可能远的一段距离后,继续进行比较。
1.KMP模式匹配算法分析回顾图4-5所示的匹配过程示例,在第三趟匹配中,当i=7、j=5字符比较不等时,又从i=4、j=1重新开始比较。然而,经仔细观察发现,i=4和j=1、i=5和j=1以及i=6和j=1这三次比较都是不必进行的。因为从第三趟部分匹配的结果就可得出,主串中的第4、5和6个字符必然是b、c和a(即模式串第2、第2和第4个字符)。因为模式中的第一个字符是a,因此它无须再和这三个字符进行比较,而仅需将模式向右滑动2个字符的位置进行i=7、j=2时的字符比较即可。同理,在第一趟匹配中出现字符不等时,仅需将模式串向右移动两个字符的位置继续进行i=2、j=1时的字符比较。由此,在整个匹配过程中,i指针没有回溯,如图1所示。
图1改进算法的模式匹配过程示意
㈢ 关于对战游戏,队伍匹配的算法问题。
1
ELO算法是累积
当你赢得顶级球队的时候,你会增加很多的ELO价值
当你失去了一个强大的团队,你会减少少量的ELO BR />当弱队时,你赢了,你会增加少量的ELO值
你输给弱队的时候,你会减少很多的ELO值
不管下降的同时,或以其他方式。该值将被计算。
例如,如果你放弃了,但到底你的球队取得胜利,你还是会增加ELO。
匹配模式ELO隐藏
看不到
多玩盒子看战斗力评估,只需按照你的
行位,胜率,总场数数。 ,
仅供参考,实际的游戏战网与ELO值相差很大。
例如,你能赢得两强的球队失去了一个强大的团队,你一个实际的ELO值高
但是,如果你赢了弱和他的团队输给弱队,您的实际ELO值?低
但的发挥更只有运营商,两场比赛.500胜率的字段数。
㈣ 推荐算法模型原则~运营推广
网店运营:推荐算法建模原理。
直通车,手淘搜索,手淘首页推荐两个核心原则:第一,标签匹配度高优先,第二,权重高优先。
标签匹配,有顾客标签和宝贝标签,顾客标签包括浏览痕迹和购买记录,有些顾客标签比较模糊。婴儿标签包括成交记录,顾客搜索你的婴儿然后成交,顾客标签和搜索关键字给婴儿打标签。
先基本加权店权,再基本加权点击率、转化率、坑产、评价。半标品基本是销量权重越大越好。非标品的热度权重较高。
总之,算法模式在淘宝上都是为了使顾客能够快速找到他们需要的产品,并获得满意的产品。还能使公司利润最大化。很多商店不能做到这一点,是因为同行竞争太激烈,功夫再高也比不上菜刀。
网店运营中,如何做好主图和直通车图点击率高。
淘宝店的运作。
销售不到300的宝贝(对标同店销售超过10000个),最好的办法就是搞优惠活动。
然后是销售300以上(对标同店最高1万以上),方法二:
淘宝店的运作。
在同类公司中研究一下销量前10名的主图和他们的汽车图,看看他们的汽车图就知道了,汽车图很费时找,再结合他们的优势做主图和车图。
叫客服统计的客户咨问做多了有什么问题?把客户关心的问题列出来,制作一个表格,统计15天的数据,找出三个客户最关心的问题,然后把客户关心的三个问题以图表的形式展示出来,这样就可以消除客户关心的三个问题。
㈤ 王者荣耀的匹配算法是怎么实现的
王者荣耀的匹配机制至少分为三种,分别是匹配赛匹配机制,赏金赛匹配机制,以及排位赛匹配机制。
先来说说匹配赛排位机制吧,这个匹配机制,其实参考的并不是小伙伴的段位胜率等因素,而是把小伙伴打的所有比赛以某种算法的形式算出一个“综合分”,这个综合分又被叫做隐藏分数,仅最大可能代表一个人的最真实实力。所以匹配的话,青铜遇到王者也不奇怪,毕竟有人王者实力就是不喜欢打排位。
赏金赛的匹配机制采用的是一种难度递进的机制:最通俗的说法就是像闯关一样,一关比一关难。对于真正的大神来说可能无所谓,但对于小白来说,前后实力差距之大真不是吹的。
最后是排位赛匹配机制:单排,双排,三排都是按照队伍平均段位水平去匹配,五排是按照五个人中最高的段位去匹配。一般情况下,黄金双排不会遇到铂金玩家,除非是另外的人里有铂金,而假设对面有三铂金,说明你这边至少有对应的段位。
最后,赛季初是一段很混乱的时期,既有大神掉下来的,又要浑水摸鱼上来的,除非你有真大神的实力,否则不建议打排位。总体来说,只要技术过硬,上王者基本都是时间早晚的问题。
㈥ 生活中的人工智能之搜索和推荐算法
姓名:陈心语 学号:21009102266 书院:海棠1号书院
转自: 人工智能在搜索中的应用_u014033218的专栏-CSDN博客
人工智能在搜索的应用和实践_qq_40954115的博客-CSDN博客
【嵌牛导读】日常生活中的搜索和推荐算法也与人工智能有所关联,让我们一起来看看吧!
【嵌牛鼻子】人工智能运用于搜索和推荐算法。
【嵌牛提问】人工智能在搜索和推荐算法中有什么运用呢?
【嵌牛正文】
智能交互
智能交互有三个方面的这部分组成,第一个就是Query推荐,这是比较古老的课题;第二个做智能导购,这是现在正在做的一个原形,后面我会讲为什么做智能导购;第三个内容的展示和个性化的创意。就是说你把商品怎么展示给用户,也是我们认为是交互的一部分。
第一个是Query推荐,这个问题怎么来抽象呢?Query推荐是一个用户当前Query下面我们怎么推荐其它Query,这是我们相关搜索一样的。我们推荐这样的一个Query以后,如果用户一旦点了其中的一个Query,用户的状态就会发生变化,从当前的Query跳到另外一个Query,这是用户状态的变化。第二个就是说我们怎么评价我们推荐的Query的好坏,它由几部分组成,一个Query有没有被点,第二个就是说推荐Query里面,它的SRP页会不会点,因为Query推荐本质上不是Query推荐做的最好就是最好的,它是说最终要在搜索SRP用户有没有买,有没有点击,这才是做的好的,这是第二个收益。还有一个更加间接的,通过Query推,这个状态转到下一个状态以后,这个里面还会推其它Query,还会有其它点击,这个时候也是个间接推荐。如果我不推Query就不能到这个状态,不到状态不会有这个Query,不会有这个收益。我们了解,这就是典型的一个马尔科夫决策过程,我们是用强化学习来做的,Actions就是我们的Query list,根据用户和当前Query推荐其他Query,状态就是User + Query,收益就是包括推荐Query击,还有一个间接收益,间接收益通过bellman 公式可以算出来,这就是一个DQN的强化学习项目。
智能导购
现在的搜索呈现的问题就是说,如果去看搜索的Query都是一些品类词、品牌词、型号词或者属性词。假定用户他知道买什么再来搜索搜,但是有各很大的东西用户不知道买什么吗?智能导购就是做做一个类似智能导购机器人的产品,引导用户怎么搜,用户也可以主动问,获取知识或购物经验。这是后台的算法的一个原形,不久后会上线。
智能内容
因为淘宝的商品,卖家为了适应我们的引擎,做了大量的SEO,里面都是罗列热门的关健词,导致问题淘宝的标题没什么差异,都写的差不多,看标题也不知道什么东西,或者知道但里面没有很多特色的内容。我们做智能内容很重要的出发点是怎么从商品的评价、详情页、属性里面挖出一些比较有卖点,或者商品比较有特色的东西展示给用户,让用户更好的了解商品,这是第一个。第二个淘宝上面还有类似商品聚合的,比如清单,生成一个清单,怎么给清单生成一个比较好的导入的描述,让用户描述这个清单干什么。这里面主要做了这两个事情。具体怎么做的?一个会生成一些Topic,比如行业运营加上我们挖的一些点,比如像手机一般大家关注点会是手机的性价比,拍照是不是清晰,还有速度是不是快,是不是发热什么的,这是用户关注的兴趣点。然后它会根据这个商品会选择一个兴趣点,通过Seq2seq生成短文本。
语义搜索
我们的商品属性基本上是比较标准化的,因为这里淘宝有一个这样的商品库,非标准化的内容是没法上传的。导致的问题是我们的商品内容相对来说是比较规范化的,但是用户的输入的Query不是这样的,比如我这里举一些例子,比如一个新品有各种表达,2017新品,2017冬季新品,是吧?新品,有很多的表达。所以就是从从用户的需求跟商品的内容,就存在了一个语义的Gap。还有我们经常举例,比如三口之家用的电饭锅,很多这种语义的问题,这个语义从语义角度解决语义Match的事情。
大概会有这么几个方面。比如一个就是意图的理解,还有意图的Mapping,比如大容量冰箱,首先知道大的是跟冰箱的容量相关的,冰箱是个类目,最后要Mapping到人的冰箱,把‘大’改写成一个容量大于多少升,类目是冰箱这样才能够比较好的解决我们这个搜索的这个召回的问题。 第二个语义理解,这里面包括Query和商品都要做语义理解,比如通过image tagging计算从图片里面抽取很多文本的语义标签补充到商品文本索引中。 第三个就是现在有这个端到端的深度学习技术来直接学Query和商品的Similarity,通过端到端的深度学习技术来做语义的召回和语义的相关性。
智能匹配
主要就是讲个性化,做个性化的首要就是个性化数据。个性化本质上就是说以用户为中心构建用户的标签,用户的行为,还有用户的偏好,再通过这些数据找到,去Match到商品,比如说你看过相似商品,典型的协同过滤,还有你偏好的品牌的其它商品。那就是基于这些经历了一个以用户为中心的电商图谱,这里面还加了一些辅助的数据,比如商品的相似度,店铺之间的相似度,这样构建了我们这样的叫电商图谱。
个性化召回与向量化召回
召回是这样的,首先从咱们的电商图谱里取出用户的信息,包括比如说年龄性别,还有当地温度是多少,还有行为足迹等等之类的,社交现在没用了,因为这是几年前社交特别火,什么都要掺和一下,其实社交,信息的社交到电商其实风马牛不相及的领域,没有任何价值。所以现在好友这东西几乎没有用。因为不同Query中,用户信息重要性是不一样的,我们根据上下文会做用户信息的筛选或者排序,会找出比较重要的信息做个性化召回。以上是淘宝商品索引结构,传统的搜索关键字是通过搜索关键字召回,而个性化商品索引,除了Query还会有商品簇,簇与簇之间的关系,品牌店铺等等之类的,会加很多个性化的特征做召回,通过这种带的好处是召回的结果跟用户是直接相关的,就召回这一步带来个性化。
但是这种基于行为召回还是存在一个问题的。最重要的问题它的泛化能力会比较差。最典型的比如说你通过协同过滤来做,如果两个商品,没有用户同时看过的话,这两个商品你认为他们相似度是零,这个结论是错的,但是如果通过协同过滤就有这个问题。我们今年实现了向量化召回,包括两步:一个是Similarity learning,通过这个深度学习做端到端的Similarity learning,就会把这个我们的User 和Item会变成一个向量;第二步就是做向量化召回,比如层次聚类,随机游走,learning to hash等,这样的话就是说会极大的提升召回的深度。
个性化工作
在个性化领域其实最重要的一个核心的问题就是怎么去理解用户,怎么感知用户和预测用户行为及偏好。
首先是数据,用户在淘宝有两个中类型重要的基本信息:一个是用户标签,比如年龄、性别、职业等;第二是用户足迹,比如 点过,买过的商品,店铺等;
其次是用户感知要和搜索上下文相关,即这个用户的表征和要用户搜索意图相关;
第三是搜索有很多差异化的任务,比如用户消费能力的预估, User到Item的CTR预估和用户购物状态预估等,是为每个任务做个端到端的深度学习模型还是用统一的用户表征来完成不同的Task?如果每一个任务都做端到端深度学习会有很多问题,比如离线和在线的性能开销会大很多,或部分任务样本太少。
如图是用户感知深度模型,输入X是用户的点击行为序列,下一步是embedding,embedding完以后,通过LSTM把用户行为序列做embedding,因为在搜索用户感知和Query相关,所以加入query 的 attention层,选择和当前query有关系的行为,表征完是Multi-task learning 网络。整个这个网络的参数大概有一百亿个参数,我在双11我们还实现了在线学习。
算法包括智能交互、语义搜索、智能匹配和搜索策略四个方向。
智能交互
商品搜索就是带交互的商品推荐,用户通过关键字输入搜索意图,引擎返回和搜索意图匹配的个性化推荐结果,好的交互技术能够帮助到用户更好的使用搜索引擎,目前搜索的交互主要是主动关键字输入和关键字推荐,比如搜索框中的默认查询词和搜索结果中的文字链等,推荐引擎根据用户搜索历史、上下文、行为和状态推荐关键字。和商品推荐的区别是,关键字推荐是搜索链路的中间环节,关键字推荐的收益除了关键字的点击行为外,还需要考虑对整个购物链路的影响,包括在推荐关键字的后续行为中是否有商品点击、加购和成交或跳转到另外一个关键字的后继行为,这是一个典型的强化学习问题,action 是推荐的关键字候选集合,状态是用户当前搜索关键词、上下文等,收益是搜索引导的成交。除了被动的关键字推荐,我们也在思考搜索中更加主动的交互方式,能够做到像导购员一样的双向互动,主动询问用户需求,挑选个性化的商品和给出个性化的推荐理由,目前我们已经在做智能导购和智能内容方向的技术原型及论证,智能导购在技术上主要是借鉴对话系统,通过引导用户和引擎对话与关键字推荐方式互为补充,包括自然语言理解,对话策略,对话生成,知识推理、知识问答和商品搜索等模块,功能主要包括:a. 根据用户搜索上下文生成引导用户主动交互的文本,比如搜索“奶粉”时,会生成“您宝宝多大?0~6个月,6个月到1岁….”引导文案,提示用户细化搜索意图,如果用户输入“3个月”后,会召回相应段位的奶粉,并在后续的搜索中会记住对话状态“3个月”宝宝和提示用户“以下是适合3个月宝宝的奶粉”,b. 知识导购,包含提高售前知识问答或知识提示,比如“3个月宝宝吃什么奶粉” 回答“1段”,目前对话技术还不太成熟,尤其是在多轮对话状态跟踪、知识问答和自动评价几个方面,但随着深度学习、强化学习和生成对抗学习等技术在NLP、对话策略、阅读理解等领域的应用,越来越多的训练数据和应用场景,domain specific 的对话技术未来几年应该会突飞猛进;智能内容生成,包括生成或辅助人工生成商品和清单的“卖点”,短标题和文本摘要等,让淘宝商品表达更加个性化和多元化。
语义搜索
语义搜索主要是解决关键字和商品内容之间的语义鸿沟,比如搜索“2~3周岁宝宝外套”,如果按照关键字匹配召回结果会远小于实际语义匹配的商品。语义搜索的范围主要包括:a. query tagging和改写,比如新品,年龄,尺码,店铺名,属性,类目等搜索意图识别和归一化,query tagging模型是用的经典的序列标注模型 bi-lstm + CRF,而标签分类(归一化) 作为模型另外一个任务,将序列标注和分类融合在一起学习;b. query 改写,主要是计算query之间相似度,把一个query改写成多个语义相似的query,通常做法是先用不同改写策略生成改写候选query集合,比如词替换、向量化后top k、点击商品相似度等,然后在用ltr对后续集合排序找出合适的改写集合,模型设计和训练相对简单,比较难的是如何构建高质量的训练样本集合,线上我们用bandit 的方法探测部分query 改写结果的优劣,离线则用规则和生成对抗网络生成一批质量较高的样本; c. 商品内容理解和语义标签,通过商品图片,详情页,评价和同义词,上下位词等给商品打标签或扩充商品索引内容,比如用 image tagging技术生成图片的文本标签丰富商品内容,或者更进一步用直接用图片向量和文本向量融合,实现富媒体的检索和查询;d. 语义匹配,经典的DSSM 模型技术把query 和商品变成向量,用向量内积表达语义相似度,在问答或阅读理解中大量用到多层LSTM + attention 做语义匹配,同样高质量样本,特别是高质量负样本很大程度上决定了模型的质量,我们没有采样效率很低的随机负采样,而是基于电商知识图谱,通过生成字面相似但不相关的query及相关文档的方法生成负样本。从上面可以看到query tagging、query相似度、语义匹配和语义相关性是多个目标不同但关联程度非常高的任务,下一步我们计划用统一的语义计算框架支持不同的语义计算任务,具体包括1. 开发基于商品内容的商品表征学习框架,为商品内容理解,内容生成,商品召回和相关性提供统一的商品表征学习框架,重点包括商品标题,属性,详情页和评价等文本信息抽取,图像特征抽取和多模信号融合;2. query 表征学习框架,为query 类目预测,query改写,query 推荐等提供统一的表征学习框架,重点通过多个query 相似任务训练统一的query表征学习模型;3. 语义召回,语义相关性等业务应用模型框架。语义搜索除了增加搜索结果相关性,提升用户体验外,也可以一定程度上遏制淘宝商品标题堆砌热门关键词的问题。
智能匹配
这里主要是指个性化和排序。内容包括:a. ibrain (深度用户感知网络),搜索或推荐中个性化的重点是用户的理解与表达,基于淘宝的用户画像静态特征和用户行为动态特征,我们基于multi-modals learning、multi-task representation learning以及LSTM的相关技术,从海量用户行为日志中直接学习用户的通用表达,该学习方法善于“总结经验”、“触类旁通”,使得到的用户表达更基础且更全面,能够直接用于用户行为识别、偏好预估、个性化召回、个性化排序等任务,在搜索、推荐和广告等个性化业务中有广泛的应用场景,感知网络超过10B个参数,已经学习了几千亿次的用户行为,并且会保持不间断的增量学习越来越聪明; b. 多模学习,淘宝商品有文本、图像、标签、id 、品牌、类目、店铺及统计特征,这些特征彼此有一定程度的冗余和互补,我们利用多模学习通过多模联合学习方法把多维度特征融合在一起形成统一的商品标准,并多模联合学习中引入self-attention实现特征维度在不同场景下的差异,比如女装下图片特征比较重要,3C下文本比较重要等;c. deepfm,相对wide & deep 模型,deepfm 增加了特征组合能力,基于先验知识的组合特征能够应用到深度学习模型中,提升模型预测精度;d. 在线深度排序模型,由于行为类型和商品重要性差异,每个样本学习权重不同,通过样本池对大权重样本重复分批学习,有效的提升了模型学习稳定性,同时通过融合用户状态深度ltr模型实现了千人千面的排序模型学习;e. 全局排序,ltr 只对单个文档打分然后按照ltr分数和打散规则排序,容易导致搜索结果同质化,影响总页效率,全局排序通过已知排序结果做为上下文预测下一个位置的商品点击概率,有效提升了总页排序效率;f. 另外工程还实现了基于用户和商品向量的向量召回引擎,相对倒排索引,向量化召回泛化能力更强,对语义搜索和提高个性化匹配深度是非常有价值的。以上实现了搜索从召回、排序特征、排序模型、个性化和重排的深度学习升级,在双11无线商品搜索中带来超过10% (AB-Test)的搜索指标提升。
智能决策
搜索中个性化产品都是成交最大化,导致的问题是搜索结果趋同,浪费曝光,今年做的一个重要工作是利用多智能体协同学习技术,实现了搜索多个异构场景间的环境感知、场景通信、单独决策和联合学习,实现联合收益最大化,而不是此消彼长,在今年双11中联合优化版本带来的店铺内和无线搜索综合指标提升12% (AB-Test),比非联合优化版本高3% (AB-Test)。
性能优化
在深度学习刚起步的时候,我们意识到深度模型inference 性能会是一个瓶颈,所以在这方面做了大量的调研和实验,包括模型压缩(剪枝),低秩分解,量化和二值网络,由于缺少相应的指令集和硬件支持,最终只在个别场景下上线,期待支持低精度矩阵计算和稀疏矩阵计算的硬件早日出现。
未来计划
通用用户表征学习。前面介绍的DUPN 是一个非常不错的用户表征学习模型,但基于query 的attention 只适合搜索,同时缺少基于日志来源的attention,难以推广到其他业务,在思考做一个能够适合多个业务场景的用户表征模型,非搜索业务做些简单fine tuning 就能取得比较好的效果;同时用户购物偏好受季节和周期等影响,时间跨度非常大,最近K个行为序列假设太简单,我们在思考能够做life-long learning 的模型,能够学习用户过去几年的行为序列;搜索链路联合优化。从用户进入搜索到离开搜索链路中的整体优化,比如 搜索前的query 引导(底纹),搜索中的商品和内容排序,搜索后的 query推荐(锦囊)等场景;跨场景联合优化。今年搜索内部主搜索和店铺内搜索联合优化取得了很好的结果,未来希望能够拓展在更多大流量场景,提高手淘的整体购物体验;多目标联合优化。搜索除了成交外,还需要承担卖家多样性,流量公平性,流量商业化等居多平台和卖家的诉求,搜索产品中除了商品搜索外还有“穹顶”,“主题搜索”,“锦囊”,“内容搜索”等非商品搜索内容,不同搜索目标和不同内容(物种)之间的联合优化未来很值得深挖。
㈦ 个性化推荐算法
随着算法的普及,大量的产品有了个性化推荐的功能,这也成为内容类产品的标配。个性化定制化逐渐成为了互联网思维的新补充,被提升到了越来越重要的地位。算法推荐经过了很长一段时间的发展,才逐渐达到能给用户惊喜的阶段。比如在电商领域,推荐算法可以挖掘用户潜在购买需求,缩短用户选取商品的时间,提升用户的购物体验;在新闻或段视频领域,推荐算法可以推送用户喜欢的内容,提高用户的阅读效率,减少用户选择内容的时间,也增加了用户在产品上的停留时长。
算法应用阶段
内容类产品发展初期,推荐算法一般为“热度算法”,就是系统把热点内容优先推荐送给用户,完成热点内容的高阅读率。在积累了一定的用户数据后,会发现用户阅读内容过于集中于热点信息,长尾信息中的优质资源往往被忽略,造成资源浪费。“千人一面”的状况已不是一个优质的解决方案,所以算法逐渐演变为“个性化推荐”,也就是协同过滤的方法论支撑下的一种算法。协同过滤能很好的根据用户的喜好,推荐匹配的内容,减少资源浪费,增加用户使用的友好体验。真正做到“千人千面”。
推荐算法的信息来源
第三方数据
一个新系统在初期没有数据积累的情况下,可与第三方合作,互授部分信息共享。比如,很多系统支持微信登陆,这时候可以获取客户的微信信息,生活地点,部分生活习惯等。同时会获取用户的社交信息,共同好友越多表明圈子越相似,可以推荐更多相似的内容。
用户行为数据
记录用户在系统内的使用习惯,可以准确的描述单个用户的行为特征,爱好特征等有效的信息,系统根据提取出的分析结果,将内容与之匹配,完成更精准的推荐。如,某用户经常浏览体育信息,系统将对应推荐更多体育相关的咨询,省去用户搜索筛选的时间。
基于生活习惯
基于生活习惯,生活常识的推荐,往往也可以作为内置的一个信息来源途径。比如,外卖的app推荐用户的餐厅,一般默认是位置优先,就近推荐,如果是快中午的时间段使用,系统默认推荐午餐,其次是晚餐。靠生活常识作出的系统算法,可以更符合人类的习惯,给用户更好的体验。
热度算法
热度算法简单的说就是把最核心的内容优先推荐,用新闻举例,每一条新闻都具有实效性,随着时间的推移,该条新闻的关注度降低,关注点被新的热点新闻取代。量化以上的过程,把各个影响因素设定为变量,会得出以下的公式:
新闻热度=初始热度分+用户交互热度分-衰减热度分
初始热度分为新闻产生时,系统对新闻主体的预判热度值。预判的分值一般为以下两种模式,一种情况,按照新闻类别的不同,娱乐新闻大于财经新闻,大于国际新闻,大于文化新闻等等系统的预设,依次给出不同的初始热度分;另一种情况,系统预置热词词库,用新闻的关键词和词库的去匹配,匹配度高的,初始热度分高。
用户的交互热度分也是一个变量,先要明确用的哪些行为会影响新闻热度,然后对这些行为量化,加权或打分等方式。例如,网易云音乐,用户的听歌,重复循环,收藏,评论,分享等行为,系统为每一种行为打分,求和后得出用户交互的热度分:
用户交互热度分=听歌X10+循环X5+收藏X10+评论X5+分享X3
此公式还可以继续细化,每一种操作的分值也可以作为变量,在产品前期时,传播产品为主要任务,所以分享的加权要大一些,随着网易云的发展,社区的概念逐渐强化,评论区互动的加权会加大,所以评论的分值会增加,系统随时调整分数加权,得出更准确的用户交互的影响值。
衰减热度分是一个随时间变化而变化的数值,往往是一个函数的表达。用新闻举例,新闻的热度会随着时间的推移而衰减,并且趋势是越来越快,人们在接受新的热点后,迅速忘记“旧闻”,直至热度趋近于零。根据理论数据,构建函数,准确的表达衰减分值。
还有很多其他的影响因素,比如传播次数,传播层数,停留时长等等,都会影响热度值,要想更精准的表达,就需要把涉及到的因素都作为变量,不断完善算法,才能更精准的完成推荐。
个性化推荐算法
随着用户量的增加,产品日活的增加,用户也不能仅限于千人一面热点阅读的模式中,个性化推荐在此时显得尤为重要。个性化推荐有两种常见的解决方案,一种是基于内容的推荐算法,推荐内容往往是根据用户的使用习惯得来,较为精准;另一种是基于用户的协同推荐算法,系统会根据以往使用内容,为用户建模,然后根据群体中个体的使用习惯,推荐更多超预期的内容,达到预测推荐的效果。
基于内容的推荐算法-预期内
基于内容的推荐算法,靠收集用户的使用习惯,进而推荐相关的内容。系统使用分词库匹配、关键词匹配等等方式,达到内容的匹配,做到内容的精确划分。比如,用户浏览了某部科幻电影,系统就会按照该电影所对应的标签,如科幻,然后系统推荐相同标签的影片给用户。
这样的推荐方案,确定性强,推荐的内容都是根据用户的历史来确定,不能挖掘用户的潜在需求。
基于用户的协同推荐-超预期
做到精准推荐后,系统会继续挖掘更潜在的推荐需求,给用户超预期的推荐体验。这就到了基于用户协同推荐的阶段。简单的说,这种算法是增加了用户建模的环节,将同标签的用户群分,对比群体中单个个体的特征,默认这种特征为这类人的潜在特征,再将此特征内容推荐给同标签的用户,达到超预期的推荐效果。
比如,某用户购买了一个苹果手机,系统会将此用户归类为果粉,系统识别出很多果粉除了买苹果的商品,还会购买小米作为备用机,这个特征会被系统识别为潜在需求,推荐给果粉,减少果粉选择备用机的时间。
这样的推荐算法,不仅能完成精准的推荐,还能给用户小惊喜,让系统“有温度”。但是这样的推荐方式,往往需要积累了大量用户资料为基础,才可以精确的完成。
㈧ 推荐算法中有哪些常用排序算法
外排序、内排序、插入类排序、直接插入排序、希尔排序、选择类排序。
推荐算法是计算机专业中的一种算法,通过一些数学算法,推测出用户可能喜欢的东西,应用推荐算法比较好的地方主要是网络。所谓推荐算法就是利用用户的一些行为,通过一些数学算法,推测出用户可能喜欢的东西。
在基于内容的推荐系统中,项目或对象是通过相关特征的属性来定义的,系统基于用户评价对象的特征、学习用户的兴趣,考察用户资料与待预测项目的匹配程度。用户的资料模型取决于所用的学习方法,常用的有决策树、神经网络和基于向量的表示方法等。基于内容的用户资料需要有用户的历史数据,用户资料模型可能随着用户的偏好改变而发生变化。
基于内容的推荐与基于人口统计学的推荐有类似的地方,只不过系统评估的中心转到了物品本身,使用物品本身的相似度而不是用户的相似度来进行推荐。
㈨ 图像匹配的算法
迄今为止,人们已经提出了各种各样的图像匹配算法,但从总体上讲,这些匹配算法可以分成关系结构匹配方法、结合特定理论工具的匹配方法、基于灰度信息的匹配方法、基于亚像元匹配方法、基于内容特征的匹配方法五大类型 基于内容特征的匹配首先提取反映图像重要信息的特征,而后以这些特征为模型进行匹配。局部特征有点、边缘、线条和小的区域,全局特征包括多边形和称为结构的复杂的图像内容描述。特征提取的结果是一个含有特征的表和对图像的描述,每一个特征由一组属性表示,对属性的进一步描述包括边缘的定向和弧度,边与线的长度和曲率,区域的大小等。除了局部特征的属性外,还用这些局部特征之间的关系描述全局特征,这些关系可以是几何关系,例如两个相邻的三角形之间的边,或两个边之间的距离可以是辐射度量关系,例如灰度值差别,或两个相邻区域之间的灰度值方差或拓扑关系,例如一个特征受限于另一个特征。人们一般提到的基于特征的匹配绝大多数都是指基于点、线和边缘的局部特征匹配,而具有全局特征的匹配实质上是我们上面提到的关系结构匹配方法。特征是图像内容最抽象的描述,与基于灰度的匹配方法比,特相对于几何图像和辐射影响来说更不易变化,但特征提取方法的计算代价通常较,并且需要一些自由参数和事先按照经验选取的闭值,因而不便于实时应用同时,在纹理较少的图像区域提取的特征的密度通常比较稀少,使局部特征的提 取比较困难。另外,基于特征的匹配方法的相似性度量也比较复杂,往往要以特征属性、启发式方法及闭方法的结合来确定度量方法。基于图像特征的匹配方法可以克服利用图像灰度信息进行匹配的缺点,由于图像的特征点比象素点要少很多,因而可以大大减少匹配过程的计算量同时,特征点的匹配度量值对位置的变化比较敏感,可以大大提高匹配的精确程度而且,特征点的提取过程可以减少噪声的影响,对灰度变化,图像形变以及遮挡等都有较好的适应能力。所以基于图像特征的匹配在实际中的应用越来越广-泛。所使用的特征基元有点特征明显点、角点、边缘点等、边缘线段等。