512. Google Universal Image Embedding | google-universal-image-embedding
我知道这不是最好的解决方案,但我想分享这个非常简单的方法,它在Private LB(私有排行榜)上获得了6.37分。具体配方如下:
冻结在 LAION-2B 上预训练的 openCLIP ViT-H-14 骨干网络。
可训练的线性头(无批归一化,无Dropout)。
在130k数据集上进行自监督学习训练:
https://www.kaggle.com/datasets/rhtsingh/130k-images-512x512-universal-image-embeddings
对比损失:
https://kevinmusgrave.github.io/pytorch-metric-learning/losses/#contrastiveloss
(NTXentLoss 也产生了类似的结果)
图像批次简单地创建为:
[batch, augment(batch)](SimCLR 风格)
其中增强由以下操作组成:
随机裁剪、随机旋转、随机模糊、颜色抖动、Cutout
总批次大小为 512,优化器使用 Adam
训练 30 个 Epoch
使用方形填充(零填充)和简单的 224 尺寸调整进行 TTA(测试时增强)。
总结:也许使用更大的数据集可以提高分数,但我没有时间测试。希望这对大家有所帮助。