作者:青峰 (一淘及搜索事业部-搜索技术-算法技术)
淘宝有十亿商品,挂靠在几千个叶子类目,上百个一级类目,十几个行业下面,如何能让用户快速的找到符合意图的商品,是淘宝搜索需要解决的首要问题。
淘宝搜索从大的架构或流程上来说,与传统的搜索引擎有不少相似的地方。由于淘宝搜索面对的是站内卖家上传的商品,这些商品挂靠在人工整理的类目属性体系下,所以除了不需要像传统搜索引擎一样有爬虫对网页进行收集,以及网页信息的分类处理等部分工作外,其它部分的流程和工作原理都有相通的地方,包括对数据的整理、分析、索引产生索引库,如何根据用户输入的关键词在索引倒排表中进行检索,完成商品与检索之间的相关度评价,对将要输出的结果进行排序,并实现某种用户相关性反馈机制等。
除了上述与全网搜索的相似的地方外,淘宝搜索有很多自己独特的地方
1.淘宝搜索面对的既有非结构化的详情页商品描述信息,也有结构化的商品和属性数据。每个商品下挂在一个有层次的类目体系下,同时又关联到很多相关的属性。比如对于一件连衣裙的商品,它可以下挂在连衣裙类目,连衣裙类目又属于女装类目;同时这个连衣裙商品又可以关联很多相关属性,比如它的品牌是歌莉娅,袖长是七分袖,颜色是白色,材质是棉等等;所以淘宝搜索并不是单纯的匹配一段文字,而是需要从结构化的数据出发满足用户的搜索词和偏好
2.淘宝的数据变化和更新非常快。每天很多的新商品数据被上传到网站,一旦新商品被上传,这个商品就是需要被搜索到的。不像全网网页任何人可以发布一个,是否被搜索引擎收录是另一回事。另外在淘宝每天有大量的商品不停的在做更新,包括商品标题描述的变化,商品价格的改变,商品图片的更新,商品的上下架等等,这些变化需要实时的更新到搜索中,以便让用户及时找到更新后的商品信息。而在全网搜索中,很多网页是静态不变,网页之间的相互关系也变化缓慢,大量索引的更新没有类似淘宝搜索这种实时性的需求。
3.导航,类目属性导航在网页搜索中基本是不可见的。在淘宝搜索中,浏览和导航则是用户在线寻找和购买商品的重要途径,占商品搜索流量的25%-30%,在淘宝,大量的商品搜索是关键词和导航的组合。
4. 图片,商品的图片在用户研究和购买过程中起到了很大作用,搜索的展现结果中有很大一部分被图片所占据。图片的质量,图片与文本的相互关系都是我们需要考虑和处理的,不像全网搜索,基本就是在文本中做匹配和排序。
5.淘宝是一个生态系统。搜索,比较以及购买都发生在淘宝站内,不像一般的全网搜索引擎,用户搜索完后就跳离到其它网站,搜索前和搜索后的用户行数据是很难拿到的。而在淘宝搜索,一般来说用户搜索完后,会点击其中一些商品,然后比较这些商品,和卖家进行沟通,然后下单购买,或者返回来继续搜索,搜索前,搜索中和搜索后的数据和信息非常丰富,有非常多的用户行为数据能帮助我们设计一个更好的搜索排序算法
6.单一维度排序,商品需要在多种维度上相互之间进行比较,比如按价格进行比较,按卖家的信用进行比较,按商品的销量进行比较,所以淘宝搜索除了提供一个综合排序外,也有很多按一个维度进行的排序方式,方便用户做多层次的商品比较和挑选,不像网页搜索就是一套固定的排序体系
7. 社会责任。淘宝搜索的发展不只是体现了搜索本身的技术追求,也包含了很多的社会责任。在全网搜索中,一般的网页是不是被索引,被索引后是不是能展现,对网页的拥有者来说并不是一个事关生活的决定点。在淘宝上则完全不同,很多商家依赖于淘宝来解决民生就业问题,网店的流量以及成交关系到很多人的生活。在淘宝搜索的算法设计中,既要考虑用户的搜索体验,也要考虑商业规则来保障公平性和流量的分散性。很多的搜索算法原理,规则或算法结果都会向卖家宣导,引导卖家向更好的方向发展
除了与传统的网页搜索有比较大的差异外,淘宝搜索和其它大型的电子商务网站搜索比如Amazon相比也有一定的差异性, Amazon基本是一个基于产品的搜索形态,它的数据量,多样性,更新的量和实时性等都和淘宝有比较大的差别。淘宝搜索面临的挑战大概和Ebay有比较大的相似性。
—
微信名称:阿里技术嘉年华
微信号:alibabatech
简介:面向互联网行业全体工程师的技术交流盛会,分享实战技术,拜各路大神,听业界干货,享年度码农聚会!