返回列表

19 place. Voting and similarity chain

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

开始: 2021-03-09 结束: 2021-05-10 商品理解 数据算法赛
第19名方案:投票与相似度链
作者:Nick Sergievskiy | 排名:第19名

模型

图像 (img): eca_nfnet_l0 + eff_b5
文本 (txt): tfidf + bert(phrase multilang)

技巧与思路:

  1. 投票机制 -- 图像分数和文本分数平均 +0.11 (.739->.750)
    对于每个产品,我们创建一个空数组(字典),并将 NN(最近邻)搜索的结果 1-cosine_nn_dist 添加到单元格中。对于 tfidf 使用 cosine_dist。通过文本和图像的模型数量进行归一化。

  2. 始终搜索配对 +0.05 (.734->.739)

  3. 使用自己的图像模型 +0.02。使用了不同的损失函数(r focal loss)。增加了更多的数据增强。

  4. 文本清洗 +0.01

  5. 如果后缀不匹配,在投票中减去 1。例如 gr, ml, pa。 +0.02
    5.1. spf 类型前缀
    5.2. 后缀的同义词(图1)。并创建数字-后缀的粘合对。
    5.3. 检查后缀是否具有区分能力
    后缀和前缀是从训练样本中收集的,所有与数字连写的文本序列,例如 30meter, spf50。

  6. 相似度链(图2) +0.02
    如果一个产品被以高准确率选中,那么我们会寻找一个与查询产品相似的产品以及一个新产品。

未生效的方法

  1. 使用余弦损失学习 TFIDF 系数
    我想在测试样本上使用参数化训练,但没有时间做。
  2. 分割/检测。使用静默检测/背景去除/抠图对图像进行分割。
    2.1 我将获得的掩码乘以最后的特征图。
    找到一个矩形区域,对其应用全局池化,得到了很多场景片段,我将它们与标记的图像合并到最近邻搜索中。
  3. 最后一层之后的额外注意力机制。ECA, 自监督。

可视化

第一张 -- 查询图,绿色 -- 匹配,红色 -- 错误匹配,蓝色 -- 未找到/匹配


图1. 检查后缀,如 gr, ml, pa


图2. 相似度链。最后两张图片未找到,但图像与匹配的产品相似

同比赛其他方案