电商搜索如何让你买得又快又好「搜索中」(三)

其它相关文章整理:https://zhuanlan.zhihu.com/p/51015148

当然还有很多因素也会去影响这个闭环,如用户(历史行为,性别、年龄等)、地域、天气,一个宏观、长周期的链路等。

      根据搜索的过程,可以拆解用户的搜索流程如下:搜索入口-搜索触发-内容输入-点击搜索-反馈结果。我们从这个流程的各个环节上来看四大电商app(京东、天猫、手淘、拼多多)的搜索功能,进行对比分析。

    前文已经介绍了搜索前的一些产品及技术方案;本文还是电商搜索为例,以用户搜索过程中输入搜索词(点击“搜索“按钮到按下”回车“之间发生的事)的过程为切入点,结合产品及技术方案展开,结合相关搜索词功能进行论述。

搜索词自动补全产品形态

关键词匹配/补全/联想/纠错的作用主要有三个:引导、纠错和高效。

    通过统计发现,用户在第一次查询中得到预期搜索结果的概率非常低,所以需要引导查询自动建议可以减少用户搜索的工作量,并通过数据挖掘(群体行为和智慧)来给出高频恰当的搜索建议。

      四个电商均使用了前缀匹配,但是手淘和天猫使用了拓展icon,可快速将推荐词黏贴至搜索框,京东使用了属性、标签、类目扩展 (除了对输入内容做联想,还会展示出与关键词相关的维度,自动补全关键词,增加用户的选择),拼多多则相对搜索词产品探索较少。不过目的都是帮助用户快速锁定意图,并开展搜索。

    用户在搜索框输入字符时,会在搜索框下面实时显示下拉提示词给用户,方便用户选择。可以帮助用户快速输入和优化搜索条件,且避免输入错误;在此基础上很多电商app也出现了筛选功能,在当前搜索建议词基础上进行扩展,进一步减少用户操作。一般在用户搜索的不够具体,会推荐该搜索词更细的分类。淘宝的辅助多重筛选搜索,输入时展现的一系列联想内容,点击右边的一个拓展icon,就可以采用联想出的内容,在此基础上继续缩小范围筛选,从而帮助用户获得最接近需求的内容。

通过当前实时输入的词去匹配候选词,一般查询频度和同查询词的历史查询记录为重要参考依据。

      在搜索词补全和联想数量上,淘宝为10条,拼多多为10条,京东/天猫超过10条,但是不能过多,过多的选择会给用户造成记忆负担,并且占据空间,有损用户体验,所以需要控制数量以便信息不会过载。

    当然部分电商在历史的版本迭代中会尝试在搜索输入阶段进行纠错,比如输入联衣群,下拉框中自动纠正为连衣裙的一些选项,目前四个电商app均并无此功能,而是在搜索结果展示内做纠错及提醒;自动容错功能,将极大地提升用户体验,并提升用户的购买率。

技术方案

      主旨:前缀匹配原则,完整词未出现时一般使用补全/联想功能,品类引导词为主;当出现明显品类词后开始出现更细粒度属性及标签筛选词。一般从query log中挖掘出大量候选query,并且保证前缀相同,然后根据某种计算模型给候选query 计算一个分数,最后按照分数选出topK作为最终结果。

    主要考虑因素:当前搜索词,用户(性别、年龄等特征),日志中的群体智慧

极简版:

    常见搜索引擎均带有suggestion功能,直接使用

统计版:

    使用前缀匹配后的候选词(Trie树 + TopK算法,回溯算法遍历trie树),使用用户搜索频度最高的topK个搜索词,但是这样会使长尾词无法得到曝光机会。

trie树

  AC算法

简单模型版:

      在用户进行搜索商品时,通过用户与搜索词信息进行意图预测,并辅之以类目、性别预测,前缀匹配后最终将某个性别和类目下的共现最高的topK热搜词作为搜索框下拉框提示词。

复杂模型版1:

      复杂模型版,使用前缀匹配算法进行候选集召回(若召回量过少,考虑非前缀匹配结果),并做简单截断;然后使用用户特征(性别、年龄、行为序列)、context特征(季节、天气、温度、地理位置)进行、当前搜索词的embedding vector,然后候选搜索词也有一个embedding vector,三个vector分别与候选vector计算cosine similarity,最终使用一个线性模型融合三个分数,最终的排序结果会进行语义去重再选择topK(这里也可以用生成模型来做排序)。

context embedding的方式

这里可以将用户、context均视为搜索词,就可以用日志数据构造doc,最终使用doc2vec或word2vec。

  生成式-user-embedding-《云栖社区-query生成与推荐》

生成式-query generate-《云栖社区-query生成与推荐》

复杂模型版2:

主要针对复杂模型版1的排序特征上,继续增加特征,并考虑更多的维度

    通过语义、行为、session log等挖掘出query间相似分,并加入用户、搜索词、context类特征及其交叉特征。多维度相似融合再排序: 按照点击相似度、文本相似度、Session相似度衡量Query之间的相似度,得到候选的Pair(可选)交给重排序模块,对Query pair的优先级做优化,生成Top K的改写结果。

query2query召回

基于行为: item cf/swing、simrank++

  基于session: word2vec、seq2seq

  基于内容: query2vec(类似word2vec,构建query序列)

query排序

模型: LR/GBDT

  样本: 用户日志,行为加权(展现:1,点击:5,购买:50)

  特征: 搜索词的pv/ctr/cvr,用户是否活跃,用户画像/特征,用户+候选词(查询词/浏览详情页与热搜候选词相似度),context特征(地理位置,温度,天气等)

其它算法&产品模块

纠错

      针对纠错,还可以做一个模型,但是上述query方式可以一定程度上避免了很多的输入有误问题。针对纠错可以考虑如下2种:

      Non-word纠错(准备一个电商语料库字典,输入词不在整体字典中,即可以判定为错词)

      Real-word纠错HMM(噪声信道模型,利用unigram+bigram+trigram,选择最优的token组合,Query pair,正确及错误词候选集合训练转移矩阵)

语义归一

针对候选词进行语义归一,一般将候选query相对搜索query的扩展部分进行相似度计算,以高于某个阈值后,只保留得分高的一个候选词,这样可以节省有限的坑位资源。

产品模块

清除的icon: 输入内容时,引导信息消失,有的还会伴随在搜索框中出现清除的icon,清除的icon主要方便用户进行二次搜索时一键清空当前信息,省去了逐字删除的麻烦;根据输入内容,进行关键词的匹配。

联想词下商品数量: 产品层面还可以做一个事情,就是将关键词对应的搜索结果数量前置,便于用户控制搜索词的颗粒度,也避免出现无结果或者少结果的情况,特别是针对相对稍长尾的搜索词而言。

后续文章主题:《国内主流电商搜索功能对比》、《电商搜索-数据分析》、《搜索算法-QR》、《搜索算法-QU》、《搜索算法-相关性》、《搜索算法-排序》。

前几篇文章:

姚凯飞:电商搜索如何让你买得又快又好(一)

姚凯飞:电商搜索如何让你买得又快又好「搜索前」(二)

对电商搜索感兴趣,并想深入了解算法的小伙伴,可参与我的live:

如何让搜索算法提升电商用户体验

其它相关文章及live整理:

姚凯飞:推荐&搜索&广告&用户画像&深度学习整理

谢谢大家的支持!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,504评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,434评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,089评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,378评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,472评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,506评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,519评论 3 413
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,292评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,738评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,022评论 2 329
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,194评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,873评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,536评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,162评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,413评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,075评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,080评论 2 352

推荐阅读更多精彩内容