淘宝搜索中Query下拉推荐技术

标签: 系统架构 | 发表时间:2013-08-12 13:35 | 作者:元宗
出处:http://www.blogread.cn/it/

标签:   推荐   搜索


作者:元宗 (一淘及搜索事业部-搜索技术-算法技术-主搜索与商城)

1. 什么是Query suggestion

   Query下拉推荐是指搜索引擎系统根据用户当前的输入,自动提供一个Query候选列表供用户选择,Query下拉提示(Query suggestion)在搜索引擎和广告竞价平台中已经是标配的产品。Query suggestion可以帮助用户明确搜索意图,减少用户的输入并节约搜索时间,提高搜索体验有重要作用。各个搜索系统的下拉推荐的处理流程基本相同,下拉推荐不同主要体现在后台的query候选产生机制不同,下面介绍几种淘宝下拉推荐算法。

2. 基于PV的下拉推荐

最简单的下拉推荐是基于Query log中每个Query历史PV,这是最直观的下拉推荐算法,主要分三步进行

Offline部分

S1: 在海量Query log中,统计一段时间内每个Query的PV和点击数

Online部分

S1: 经过相似度计算,得到与用户输入 Query相似的候选Query集合

S2:  在相似的候选Query集合中,按照Query的 PV和点击数进行排序

这种方案简单易实现,但也存在如下问题

a. 对top Query的推荐解决较好,对于长尾Query,其相似的候选query可能从历史Querylog中挖掘不到

b. 候选Query语义相同问题,比如输入“连衣裙”,可能推荐“连衣裙女”和“连衣裙女款”两个候选Query,他们的语义基本相同,浪费了一个推荐位置

c. 推荐Query的质量问题,一些质量不高或者作弊Query,由于PV或者点击比较高而被推荐,使得一些质量高的Query没有机会推荐出来

3. 基于静态分的下拉推荐


   

   为了改善上述单纯基于PV的问题,增加高质量Query的被推荐机会,增大下拉推荐中作弊的成本,改善推荐Query排序合理性,引入query静态分的概念,并用基于Query静态分的下拉推荐策略替代原来单纯基于PV的策略。那么什么是Query的静态分?

   Query静态分是Query质量的综合指标,该指标拟合了Query各维度的知识:比如Query PV、IPV、UV、IUV、IPVUV、CTR、成交转化率、成交笔数、成交金额、召回商品数等。

   将上述知识用logistic回归的方法拟合成一个实数,基于静态分的下拉推荐与基于PV的下拉推荐不同之处在于:

a. 离线部分计算每个Query的静态分

b. 在线部分,利用静态分而不是PV对候选Query进行排序,Query静态分不仅考虑了Query的历史PV/点击信息,而且考虑了Query的交易信息,使得交易行为良好的Query获得更多的展现机会,大大降低了低质量和作弊Query的展现概率。

4. 基于CTR预估的下拉推荐

   基于静态分的算法解决了给予高质量候选Query以更多的展现机会和排序位置,但是这种算法与基于PV一样,主要依赖于历史Query自身的特征,搜索Query与候选Query之间的联系仅仅是两者的前缀相同。这种简单的动态特征没有将搜索Query与候选Query紧密的结合在一起,同时静态特征和动态特征的组合都是基于线性加权,每种特征的权重都是在BTS中调整得到的。为了解决两方面的问题,建立搜索词与候选Query的动态联系,这种联系通过CTR来表示。搜索词与候选Query关联性强,它的CTR就会高,反之则会比较低。

CTR预估模型

利用Logistic回归模型来预估Query的CTR,在模型中用到的特征如下

(1)搜索词与推荐Query(用表示)相关的特征;

(2)搜索词与推荐Query的类目相关特征;

(3)候选Query静态分相关特征;

(4)搜索(推荐)Query的词性特征;

(5)搜索(推荐)词对应的结果页面特征。

模型评估

   MSE是比较实际值与预测之间的差异,差异值越小越好。

上述特征大部分都能够通过离线计算出来,线上按照通过得到的候选Query的CTR值进行排序。

5. 下拉推荐进阶

1)拼音搜索、拼音和汉字混合

2)拼写纠错与下拉提示

3)作弊Query清理

4)个性化下拉推荐

5)推荐丰富度和多样性

6)多维度推荐(数据规模、商品、买家、卖家、买家卖家握手)

6.1)数据规模维度:买家数量、卖家数量、商品数量;商品属性和类目数量

6.2)商品维度:商品描述角度:卖家经常会对商品进行个性化的描述,以便区别其他卖家并争取更多的曝光量和更好的价格;商品不同分类角度:除了商品所属的后台类目,还可以按照商品使用状态分为用过的,翻新的,珍藏的、有多新/旧;商品准入角度:有一些类目商品是禁止的,如arms,酒精、烟草

6.3)买家:买家类型(casual shopper, impulsive shopper,value-driven shopper, collector flippers)、买家年龄、性别、购买力、价格区间、对品牌是否在意

6.4)卖家:卖家的商品在哪些类目、好评率是否高、发货时间、描述是否属实

6.5)买家和卖家握手:买家和卖家习惯可能不同:买家搜索词和卖家标题、属性、描述可能不一致,如何解决不一致问题

提示:本文同步发布于微信号 {alibabatech}敬请关注。

您可能还对下面的文章感兴趣:

  1. Learning to rank在淘宝的应用 [2013-08-12 13:32:35]
  2. 从概念的角度审视一淘商品搜索的Online系统架构 [2013-08-08 23:30:13]
  3. 基于用户行为分析的搜索引擎自动性能评价 [2013-05-29 22:35:23]
  4. 垂直搜索新问题 [2012-09-20 13:48:29]
  5. 索引页链接补全机制的一种方法 [2012-08-17 13:20:11]
  6. 让搜索跨越语言的鸿沟——谈跨语言信息检索技术 [2012-06-19 23:56:24]
  7. 怎样用好Google进行搜索 [2012-04-15 16:05:01]
  8. 百度搜索URL参数解析 [2012-02-05 15:33:49]
  9. 百度解构第一季 - 理解用户搜索行为 [2012-01-03 23:35:01]
  10. 搜索背后的奥秘――浅谈语义主题计算 [2011-11-23 23:47:15]
  11. 简析搜索引擎中网络爬虫的搜索策略 [2011-07-30 21:23:53]
  12. 淘宝搜索:定向抓取网页技术漫谈 [2011-07-09 22:45:26]
  13. 附近地点搜索初探 [2011-06-20 13:46:22]
  14. 浅析视频搜索中的清晰度识别过程 [2011-06-01 23:59:26]
  15. 如何预测用户query意图 [2011-01-10 23:19:10]
  16. 从狄仁杰的测字占卜到一淘网的Query分析之大结局 [2011-01-05 22:26:37]
  17. Query Forwarding in Geographically Distributed Search Engines [2010-12-28 20:46:49]
  18. 百度这个公司 [2010-11-22 21:17:57]
  19. 几种常见的基于Lucene的开源搜索解决方案对比 [2010-11-21 19:52:27]
  20. 信息时代的双峰 [2010-10-31 20:16:18]
  21. 挑战邮箱搜索(续一) [2010-09-28 09:20:54]
  22. 挑战邮箱搜索 [2010-09-25 09:42:51]
  23. 用搜索的倒排轻松搞定“好友的文章”类相关推荐功能 [2010-09-06 08:46:04]
  24. 排头兵PHP中文分词,纯PHP版实现 [2010-08-05 09:52:57]
  25. 从细节看知识搜索 [2010-07-21 23:38:41]
  26. 用sphinx轻松搞定方便管理的多节点过亿级数据搜索 [2010-07-14 09:53:06]
  27. 用Sphinx快速搭建站内搜索功能 [2010-06-23 12:59:33]
  28. Xapian搜索体系结构 [2010-06-02 11:48:45]
  29. 搜索引擎停用词 [2010-04-06 13:51:08]
  30. 搜索引擎爬虫蜘蛛的USERAGENT收集 [2010-01-15 14:47:25]
  31. 搜索结果显示:栅格视图还是列表视图? [2009-12-18 15:41:07]
  32. 向搜索引擎举报作弊网站地址 [2009-11-20 21:03:31]
  33. 音乐搜索的极致 [2009-11-16 23:21:51]
  34. 关于音乐搜索 [2009-11-04 13:31:24]
  35. 整合搜索,阿拉丁,云计算,以及框计算 [2009-11-04 09:23:54]
  36. 互联网网站的反爬虫策略浅析 [2009-10-31 00:53:36]

相关 [淘宝 搜索 query] 推荐:

淘宝搜索中Query下拉推荐技术

- - IT技术博客大学习
标签:   推荐   搜索. 作者:元宗 (一淘及搜索事业部-搜索技术-算法技术-主搜索与商城). 什么是Query suggestion.    Query下拉推荐是指搜索引擎系统根据用户当前的输入,自动提供一个Query候选列表供用户选择,Query下拉提示(Query suggestion)在搜索引擎和广告竞价平台中已经是标配的产品.

Elasticsearch搜索类型(query type)详解

- - ITeye博客
欢迎发送邮件至 donlianli@126.com. 请支持原创 http://donlianli.iteye.com/blog/2094305. es在查询时,可以指定搜索类型为QUERY_THEN_FETCH,QUERY_AND_FEATCH,DFS_QUERY_THEN_FEATCH和DFS_QUERY_AND_FEATCH.

通过Function Score Query优化Elasticsearch搜索结果

- - ScienJus's Blog
在使用 Elasticsearch 进行全文搜索时,搜索结果默认会以文档的相关度进行排序,如果想要改变默认的排序规则,也可以通过 sort指定一个或多个排序字段. 但是使用 sort排序过于绝对,它会直接忽略掉文档本身的相关度(根本不会去计算). 在很多时候这样做的效果并不好,这时候就需要对多个字段进行综合评估,得出一个最终的排序.

巧用query cache

- - OurMySQL
   收到一用户反馈其应用日志中狂报错误,获取连接超时:. 同时应用报错超出了数据库的最大连接数:max connections:. 这种情况很有可能是有慢sql占用了连接池中的连接没有释放,导致后续进来的请求迟迟获取不到连接池中的连接,导致请求报错,登录数据库排查发现如下sql出现执行非常的慢:.

MySQL Query Cache 小结

- Eneri - Sky.Jian 朝阳的天空
最近经常有人问我 MySQL Query Cache 相关的问题,就整理一点 MySQL Query Cache 的内容,以供参考. 顾名思义,MySQL Query Cache 就是用来缓存和 Query 相关的数据的. 具体来说,Query Cache 缓存了我们客户端提交给 MySQL 的 SELECT 语句以及该语句的结果集.

elasticsearch的javaAPI之query

- - CSDN博客云计算推荐文章
elasticsearch的javaAPI之query API. the Search API允许执行一个搜索查询,返回一个与查询匹配的结果(hits). 它可以在跨一个或多个index上执行, 或者一个或多个types. 查询可以使用提供的 query Java API 或filter Java API.

MySQL Query Cache 小结

- - Sky.Jian 朝阳的天空
最近经常有人问我 MySQL Query Cache 相关的问题,就整理一点 MySQL Query Cache 的内容,以供参考. 顾名思义,MySQL Query Cache 就是用来缓存和 Query 相关的数据的. 具体来说,Query Cache 缓存了我们客户端提交给 MySQL 的 SELECT 语句以及该语句的结果集.

【读图】淘宝搜索排名规则

- - i天下网商
有心人虎用军根据视频《淘宝搜索排名规则——相关性解读及其策略》整理出了详尽的思维导图,虽然不能完全代表淘宝搜索排名规则,但对于初级阶段的卖家来说,是不可多得的一份实战干货. 天下网商视觉团队设计,图说淘宝搜索排名规则. (注:此图仅供卖家学习交流,具体操作请以淘宝官方制定的淘宝搜索排名规则为准. 【网商百宝箱】淘宝搜索新规解读.

淘宝搜索算法现状

- - 互联网分析
淘宝搜索排序的目的是帮助用户快速的找到需要的商品. 从技术上来说,就是在用户输入关键词匹配到的商品中,把最符合用户需求的商品排到第一位,其它的依次排在后续相应的位置. 为了更好的实现这个目标,算法排序系统基本按三个方面来推进:. 当用户输入关键词进行搜索的时候,系统依据算法模型来给匹配到的每个商品进行实时的计算,并按照分数的大小对商品进行排序.