关于 algo-ecom-ranking
algo-ecom-ranking 是用于设计电商商品排序的技能,将文本相关性与行为及商业信号结合。它涵盖从规则评分到学习排序的流程,并包括评估及偏差处理。
主要功能
- 01结合相关性与商业信号
- 02定义规则评分基线
- 03根据点击日志构建 LTR 模型
- 04使用 NDCG 和 A/B 测试评估
- 05处理偏差与冷启动
适用场景
- 01改进超越文本匹配的商品搜索
- 02将转化率、利润和库存纳入排序
- 03根据点击及转化数据训练排序模型
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ asgard-ai-platform/ skills --skill algo-ecom-ranking安装后在 Claude Code 中输入/algo-ecom-ranking确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
examples/sample_scenario.mdreferences/lambdamart.mdposition-debiasing.md详细介绍
电商产品排序
概述
电商排序会将文本相关性(BM25)与商业信号(点击率、转化率、收入、利润率)结合起来,形成统一的排序分数。它使用基于点击和转化数据训练的学习排序(LTR)模型,优化与业务相关的结果。
适用场景
触发条件:
- 构建超越纯文本相关性的产品搜索/浏览排序
- 将业务指标(利润率、库存)纳入排序
- 实现学习排序流程
不适用场景:
- 仅关注纯文本搜索相关性时(使用 BM25)
- 没有点击/转化数据时(从基于规则的排序开始)
算法
IRON LAW: Relevance Is Necessary But NOT Sufficient for E-Commerce Ranking
A result that is textually relevant but has zero sales history, no
reviews, and is out of stock serves no one. E-commerce ranking must
balance: relevance (does it match the query?), quality (is it a good
product?), and commercial value (does it generate revenue?).
阶段 1:输入验证
收集每个产品-查询对的特征:文本相关性分数(BM25)、历史点击率、转化率、平均评分、评论数、价格竞争力、库存水平、利润率。 **门槛:**具备最低限度的特征,且点击数据覆盖 30 天以上。
阶段 2:核心算法
**基于规则的基线:**分数 = w₁×相关性 + w₂×热度 + w₃×评分 + w₄×新近度。手动调整权重。
LTR 方法:
- 根据点击日志生成训练数据(点击 = 正例,跳过 = 负例,并进行位置去偏)
- 特征:文本匹配度、行为数据(点击率、加入购物车率)、产品质量(评分、评论)、新鲜度、价格
- 训练:使用 LambdaMART 或梯度提升排序模型优化 NDCG
- 混合:final_score = α × LTR_score + (1-α) × business_boost
阶段 3:验证
离线评估:NDCG@10、MRR。在线 A/B 测试:每次搜索的收入、点击率、转化率。 **门槛:**NDCG 优于基线,且 A/B 测试的主要指标为正向结果。
阶段 4:输出
返回包含分数分解的排序后产品列表。
输出格式
{
"results": [{"product_id": "P123", "rank": 1, "final_score": 0.92, "components": {"relevance": 0.85, "popularity": 0.95, "quality": 0.90}}],
"metadata": {"query": "wireless earbuds", "model": "lambdamart", "ndcg_at_10": 0.72}
}
示例
示例输入/输出
**输入:**查询“laptop”,500 个匹配产品 **预期:**排名靠前的结果兼顾文本匹配度、高转化率和良好评分,而不只是关键词相关性。
边界情况
| 输入 | 预期 | 原因 |
|---|---|---|
| 新产品,无历史数据 | 依赖文本相关性 + 类别平均值 | 冷启动——没有行为信号 |
| 缺货商品 | 降低排名或移除 | 展示无货商品会令用户不满 |
| 赞助商品 | 将广告排名与自然排名混合 | 清楚区分赞助商品和自然结果 |
注意事项
- 训练数据中的位置偏差:无论质量如何,排名靠前的商品都会获得更多点击。使用逆倾向加权或随机化实验对训练数据进行去偏。
- 热度偏差:如果没有多样性控制,热门商品会主导排名,新品或小众商品得不到曝光。添加探索奖励。
- 优化收入 ≠ 用户满意度:按利润率排序会让高价商品排名上升。如果结果让用户觉得受商业因素操控,他们会失去信任。
- 特征时效性:点击信号每天都会变化。应频繁重新训练或更新特征。过时的特征会降低排序质量。
- 类别专用模型:单一排序模型可能不适用于所有类别。电子产品排序与时尚产品排序有所不同。
参考资料
- LambdaMART 的实现请参阅
references/lambdamart.md - 位置去偏技术请参阅
references/position-debiasing.md
评论
支持 Markdown