🔍 什么是倒排索引?(Inverted Index)
你可以想象一下:
“当我们想找一篇文章里有没有某个词,比如‘floor lamp’,最传统的方法是从头到尾一篇篇文章地去翻。”
但如果文章太多,这种方式非常慢。
所以搜索引擎发明了一种“倒过来建索引”的方法:
✅ 正排索引 vs 倒排索引的区别:
|
|
|
|---|---|
|
|
|
举个例子:倒排索引会建一个表:
“floor lamp” → [ASIN001, ASIN129, ASIN356...]
“RGB” → [ASIN129, ASIN201]
“corner light” → [ASIN356, ASIN789]
所以当用户搜索“floor lamp”时,亚马逊可以一秒钟从这个词的对应索引中提取出所有相关ASIN,而不用去“翻每个商品”。
✅ 这就是搜索快且精准的秘诀之一。
🧠 什么是向量索引?(Vector Index)
这是近年来亚马逊和Google都在用的“语义理解升级技术”。
你可以这样理解:
“倒排索引”只能找到“词完全一样”的内容,而“向量索引”可以理解“意思相近”的东西。
比如:
用户搜的是 "LED bedroom lamp"
但你写的是 "RGB mood light for nightstand"
在传统倒排中,你的ASIN可能不会被找到,因为你没写"bedroom lamp"。
但如果用了向量索引,系统会把每个商品“理解成一个多维的含义向量”,就像是一张图谱,能计算“语义相似度”。
🧠 向量技术背后就是大型语言模型的 embedding 技术,让系统“理解你说的和我说的是一回事”。
💾 什么是分布式缓存?(Distributed Cache)
这个很好解释。
你可以把亚马逊看成一家巨大的商场,每天有成亿用户搜索“floor lamp”、“usb cable”、“protein powder”...
这些搜索都太热门了,系统如果每次都从数据库去查,效率很低。
所以亚马逊会提前把热门搜索结果“算好”,存在一个快速缓存系统里,放在“离用户更近的地方”,谁来搜就直接返回这些结果,几毫秒就能响应一次搜索请求。
这就像:把菜提前炒好,放在热菜保温柜里,顾客来了就马上上菜,而不是临时现炒。
✅ 复述总结一下:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
下面,我们来正式演示一下,这些算法在搜索过程中,实际发挥出作用的过程,让大家更好理解。表演开始:
假设现在有个美国用户,在亚马逊搜索框里打下了:“floor lamp for bedroom”
这时候你会发现,几百毫秒后,亚马逊就刷出了几十条看起来还不错的商品结果。
看起来只是“结果刷出来了”,但背后,其实系统经历了一整套筛选流程——
🧩 第一步:关键词召回(用倒排索引)
系统会先查一下:“floor”、“lamp”、“bedroom” 这三个词分别有哪些商品用到了?
这个过程就用到了倒排索引表。
简单说,这像一本词典:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
于是系统找到了所有带这些关键词的商品,做个交叉,就得到了一个初步候选池,比如 2 万个 ASIN。
⚠️ 第二步:过滤不合格的产品(过滤规则)
系统不可能给用户展示2万个商品,所以它会马上排除掉一批“明显不适合”的商品,比如:
挂在“汽车配件”类目的灯 → 类目不相关
最近一周退货率高的产品 → 质量问题
关键词相关性弱的 → 比如“lamp”只是写在Search Term里,但前台完全没出现
不支持Prime配送的 → 用户有Prime系统会优先推荐带Prime标的产品
假设这个阶段过滤完,剩下 1,500 个比较合适的商品。
🧠 第三步:智能排序(评分排序 + 向量匹配)
接下来就是最关键的一步:
在这1500个商品里,系统到底怎么决定谁排前?谁上第一页?谁只能去第七页?
亚马逊会用一套“加权打分公式”来算每个ASIN的表现分:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
系统会对每个ASIN打一个总分,然后排序。
🧠+💡 加分项:向量理解(语义推荐)
亚马逊最近几年在做的升级就是:
不是只比词对不对,还要“理解你想找什么”
比如你没写“RGB”,但你搜“mood floor lamp”,系统知道“RGB变色灯”是“mood灯”的热门类型,于是它会从向量空间中找出“语义相近”的ASIN一并纳入候选。
这就是“向量索引”的真正价值:
→ 找那些“你没说,但你会想要”的商品
🎯 第四步:展示组合(决定谁在哪儿)
这时候,前100名的商品都排好了,但页面展示的逻辑也不是那么简单:
第1页要展示:4个TOS广告位 + 10个ROS广告位+48个自然位 + 1个轮播模块
有些广告出价高,但相关性弱 → 被排在底部广告位
有些自然位相关性超高,但没有广告出价 → 给自然Top3位
有些商品被系统认为适合出现在“类目页推荐” → 进入COSMO推荐流量而不是搜索结果
✅ 到了这个阶段,你才能真正出现在用户眼前。
感谢各位捧场看到这里,如果想跟我交朋友的话,加我微信,一起探讨

