返回列表

8th Place Solution Overview

432. Shopee - Price Match Guarantee | shopee-product-matching

开始: 2021-03-09 结束: 2021-05-10 商品理解 数据算法赛
第8名方案概述

第8名方案概述

作者:kenji, ns64
比赛排名:第8名

我们要感谢所有组织者举办了这场非常激动人心的比赛。
祝贺所有完成比赛的人以及获奖者。

摘要

shopee_overview

  • 验证
    • GroupKFold(k=5),按 label_group 分组
  • 嵌入
    • 拼接图像、TF-IDF 和标题嵌入 (21208维)
    • 图像:CNN(ResNet101/152) + GeM + CosFace (3328维)
    • TF-IDF:TfidfVectorizer (10200维)
    • 标题:BERT(distilbert-base-indonesian) + ArcFace (7680维)
  • 通过 Faiss 对转换为 fp16 的嵌入进行暴力 kNN
    • 使用 αQE + DBA [1][2]
    • 余弦相似度阈值为 0.59(本地 CV 最佳阈值 +0.15)
  • 后处理
    • 仅当没有为产品找到配对时,忽略阈值,并将该产品与其最近邻配对。

模型细节

(稍后补充更多细节)

  • 图像嵌入

    • ResNet152x2, ResNet101x3 配合 GeM 池化 (5折)
    • 损失函数:CosFace
    • 优化器:SGD lr=1e-3,WarmupCosineAnnealing 学习率调度
    • 输入尺寸 512x512
    • 嵌入维度 512(ResNet152), 768(ResNet101)
  • TF-IDF

    • 使用 scikit-learn 的 TfidfVectorizer
    • 预处理
      • Unicode 处理
      • NFKC 标准化
    • 嵌入维度 10200
  • 文本嵌入

    • distilbert_base_indonesian (5折)
    • 拼接第 4、5、6 层的平均值、CLS 和 token 嵌入的平均值(共 3840维)
    • 添加全连接层和 Tanh 激活函数,将嵌入维度从 3840 减少到 1536
    • 损失函数:ArcFace
    • 优化器:AdamW lr=1e-4,WarmupLinear 学习率调度
    • 嵌入维度 1536

Private/Public 排行榜变化

嵌入组合 αQE+DBA Private LB Public LB
Image 0.706 0.714
Image+TF-IDF 0.738 0.749
Image+TF-IDF+Title 0.748 0.759
Image 0.717 0.725
Image+TF-IDF 0.751 0.766
Image+TF-IDF+Title 0.761 0.775

参考资料

[1]: <a href="https://arxiv.org/abs/1610

同比赛其他方案