2024年 第16篇
业界技术介绍
我们的实现
行业对标
我们优化了什么
搜索词分析
通过用户输入的关键词,搜集库中的信息,用来帮助用户快速获取信息、提高效率、探索新内容、解决问题和做出决策。
商城搜索CSI用户体验群里反馈的问题:搜索结果不准确
| 2.1 搜索演化
| 2.2 方案架构
| 2.3 技术要点
「 2.3.1 召回 」
query改写
内容分词
分词的应用场景
1、商品索引构建时,识别关键词
2、在用户搜索时,识别用户搜索诉求
我们的关键词
BCD-449WDCO Haier/海尔 冰箱 冰冷电器 冰箱 多门 冰箱 Myzone变温,高配双变频,变频一级能耗 ,彩晶法式四门,铝合金把手 轻奢金,220V/50HZ,0.76,多门,变频,675,钢化玻璃,675*700*1908,1级,BCD-449WDCO,0,1908,电子控温,彩晶,700
BCD-426WDCEU1 Haier/海尔 冰箱 冰冷电器 冰箱 多门 冰箱 阻氧干湿分储,全新渐变玻璃,金属匀温背板,全温区变温 BCD-426WDCEU1,675*700*1908,700,675,1级,1908,43,多门,彩晶,钢化玻璃,0.76,电脑控温,变频 智能
BCD-503WDCEU1 Haier/海尔 冰箱 冰冷电器 冰箱 多门 冰箱 全空间保鲜,阻氧干湿分储,冷冻智能恒温,全新渐变玻璃 220V/50HZ,多门,0.82,BCD-503WDCEU1,变频,钢化玻璃,657,1级,0,657*833*1910,电子控温,1910,彩晶,833 智能
分词开源框架
分词类型 | ik | jieba (结巴分词) | SnowNLP | HanLP | FoolNLTK | LTP | THULAC | PKUSeg |
实现语言 | Java | C++/Python | Python | Java/Python | Python | C++ | C++ | Python |
原理 | 基于词典的分词 | 基于序列标注分词 | 基于统计学分词 | 深度学习模型 | 基于规则和统计方法实现 | 基于统计机器学习和深度学习模型 | 基于序列标注分词 | 深度学习模型 |
适用场景 | 高性能、高准确度的中文分词 | 适用于快速原型开发、中小规模文本处理任务,尤其适合对分词速度要求较高的项目 | 适合对中文社交媒体文本、网络评论等进行快速分析 | 适用于对分词准确性要求较高的科研项目、企业级应用 | 适合教学、学习、小规模实验项目 | 适用于大规模、高性能的NLP项目 | 适用于对词法分析精度要求高的研究项目、文本挖掘任务 | 适用于处理特定领域或跨领域文本的分词任务 |
智能纠错
「 2.3.2 排序 」
| 3.1 分词
召回方式用的es的最大分词(ik_max_word),匹配得分方式用的es的智能分词(ik_smart)
ik_max_word:基于词典的正向最大匹配法/逆向最大匹配法,取并集
ik_smart:基于词典的双向最长匹配法
「 词形式 」
支持:拼音、汉字、拼音+汉字、汉字转拼音、简单截词
「 搜索目标字段及分数 」
命中累加分数越高,排序越靠前,一次搜索抓取分数前一千商品。
字段 | 分数 | 是否模糊 | 备注 |
---|---|---|---|
品牌-中文 | 1 | 是(分词) | |
品牌-英文 | 1 | 是(分词) | |
品牌-拼音 | 0.5 | 是(空格分词) | |
类型-中文 | 0.6 | 是(匹配度越高分数值越大) | 动态分值 |
类型-中文 | 0.6 | 是(分词) | |
类型-拼音 | 0.5 | 是(空格分词) | |
标题 | 0.5 | 是(空格分词) | |
标题-中文 | 0.5 | 是(分词) | |
标题-拼音 | 0.25 | 是(空格分词) | |
标签-中文 | 0.5 | 是(分词) | |
标签-拼音 | 0.2 | 是(空格分词) | |
卖点-中文 | 0.5 | 是(分词) | |
卖点-拼音 | 0.2 | 是(空格分词) | |
商品属性 | 0 | 是(分词) | |
商品副标题 | 0 | 是(分词) | |
活动信息 | 0 | 是(分词) | |
产品组名称 | 0 | 是(分词) | |
物料编码(sku) | 0 | 是(分词) |
| 3.2 个性化业务支持
滤芯搜索:根据净水产业要求搜索净水器型号,模糊匹配,带出适用的滤芯
淘宝 | 京东 | 拼多多 | 商城 | ||
数据量 | 超过15亿 | 已超过10亿 | 超过亿级 | 万级 | |
品类量级 | 万级 | 万级 | 万级 | 百级 | |
sku级别 | 店铺 | 店铺 | 店铺 | 平台 | |
召回 | 分词 | 智能+自定义分词 | 智能+自定义分词 | 智能+自定义分词 | 智能分词,基于公共词典的分词 |
纠错 | 智能纠错 | 智能纠错 | 智能纠错 | 拼音纠错 | |
权重 | 智能化分析 | 智能化分析 | 智能化分析 | 无 | |
query改写 | 智能改写 | 智能改写 | 智能改写 | 简单丢词处理,按拼音首字母丢词 | |
排序 | 粗排 | 匹配度召回 | 匹配度召回 | 匹配度召回 | 匹配度召回 |
精排 | 个性化智能化排序 | 个性化智能化排序 | 个性化智能化排序 | 销量排序无个性化 | |
筛选 |
| 5.1 解决搜索不准确问题
「 query改写 」
query归一:大小写转化、清理特殊字符、繁体转化简体
query改写:丢词(根据词库匹配数量丢词)
『格力空调』搜索词,之前搜的是『格力』,当前搜的是『空调』
「 类目预测 」
类目模糊匹配并加强命中类目可能性
「 排序优化 」
粗排:召回时用了基础分+销量分
精排:在粗排基础上加上了运营分
「 搜索得分规则 」
搜索分数=基础分*5+销量分+运营分*4
基础分:搜索商品关联得分,按匹配字段分数高的返回,最多100分
销量分:指商品总销量*0.01,销量超过一万按一万计算,最多100分
运营分:指商品配置活动上得分,一种类型活动10分,活动数据每五分钟全量获取一次。
「 搜索目标字段及分数 」
基础分取命中最高分数,一次搜索抓取分数前一千商品。
字段 | 分类 | 召回方式 | 匹配得分方式 | 分数 |
---|---|---|---|---|
物料编码(sku) | 原文 | 分词精确召回 | 分词精确匹配 | 100 |
类目 | 一级-中文 | 分词召回,模糊匹配 | 分词精确匹配 | 80 |
分词模糊匹配 | 64 | |||
二级-中文 | 分词召回,模糊匹配 | 分词精确匹配 | 85 | |
分词模糊匹配 | 64 | |||
三级-中文 | 分词召回,模糊匹配 | 分词精确匹配 | 90 | |
分词模糊匹配 | 64 | |||
四级-中文 | 分词召回,模糊匹配 | 分词精确匹配 | 95 | |
分词模糊匹配 | 64 | |||
拼音 | 分词召回 | 无 | 0 | |
商品类型 | 中文 | 分词召回 | 分词精确匹配 | 80 |
分词模糊匹配 | 64 | |||
拼音 | 分词召回 | 无 | 0 | |
商品品牌 | 中文 | 分词召回 | 分词精确匹配 | 70 |
分词模糊匹配 | 56 | |||
拼音 | 分词召回 | 无 | 0 | |
商品名称 | 中文 | 分词召回 | 分词精确匹配 | 30 |
模糊匹配召回 | 分词模糊匹配 | 24 | ||
拼音 | 分词召回 | 无 | 0 | |
商品属性 | 中文 | 分词召回 | 分词模糊匹配 | 16 |
适用型号 | 模糊匹配召回 | 无 | 0 |
「 效果对比 」
改动点 | 效果 | |
---|---|---|
原来 | 现在 | |
基础分由累加分改为最大分优先 | ||
新增类目分值 | ||
类目模糊召回和分词召回结合 |
| 5.2 搜索找不到预期目标商品的问题
「 案例 」
测试反馈:券适用列表页,返回热水器商品,但是搜索“热水器”时,返回结果中无此商品,建议优化
「 列表逻辑 」
「 原因 」
「 为什么限制1000 」
如果加大商品召回数量,会导致首页搜索热水器时『获取门店商品及详情』效率降低
看效果
以公域搜索『热水器』为例
「 初步解决方案 」
全量召回商品,优化『获取门店商品及详情』效率
提前处理数据,实时监控商品和门店信息变更,20张表数据实时处理成综合表,并存储到es中,减少查询次数。
进度:综合表具体实现方案(已完成),只剩平台搜索列表和对外统一列表逻辑迁移工作,计划跟商城改版上线
预发环境效果示例
深入分析原因:召回数据不够准确,应提高召回商品数据有效性。
这样是否彻底解决了搜不到商品的问题吗?
基于我们商城商品展示特性,我们是搜索平台商品,不是店铺商品(我们找店逻辑的特殊化)。
如果某个店,只上了几款冷门海尔商品,如果搜索『海尔』,依旧可能会出现搜不到的情况,原因是这个时候的过滤点在后面『找商品承接门店』。
二次全量召回:优化代码逻辑,当一次召回后,进行精确限制导致商品不足时,做二次全量召回(做好二次召回占比分析)
工作台和私域小程序为私域使用,按具体型号搜索占比超过95%,属于特殊场景不做通用性分析
对智家APP商城搜索词分析如下:
其中占比前五位的分类是 商品类型(不包含滤芯)、按型号、滤芯、其他、配件
其中商品类型(滤芯)搜索占比如下:
特殊说明的是洗衣机和热水器首页点击用类目来做的,所以所占比例较小。
点击率高的有类型、型号、配件,高点击证明用户对该部分商品感兴趣。
用户成交情况如下:
其中销量最高的三类商品为滤芯、洗衣液、清洗剂,三类商品都有两个共同的特性:绑定家电、消耗品使用,当然,洗衣液还有洗护产业的活动支持,带来了高订单量
洗衣机和空调较多,深入分析滚筒洗衣机订单 同一IP同一收货区域同一店铺订单超过一单的占比91.77%,这类订单通常为代客下单,实际成交订单只有40多单。结合搜索数据,家电搜索的实际转化很低。
「三翼鸟数字化技术平台-商城」负责搭建门店数字化转型工具,包括:海尔智家体验店小程序、三翼鸟工作台APP、商家中心等产品形态,通过数字化工具,实现门店的用户上平台、交互上平台、交易上平台、交付上平台,从而助力海尔专卖店的零售转型,并实现三翼鸟店的场景创新。
_________________ END__________________