549. Stable Diffusion - Image to Prompts | stable-diffusion-image-to-prompts
排名稳定。祝贺所有获奖者!!
这是我第二次 solo 银牌。在结果最终确定后,我终于成为了Kaggle竞赛 Master!!!
我的最终集成包含微调和零样本模型。
简述:KNN回归 + CLIP interrogator + 4个微调模型的集成,手动权重分别为0.3、0.1和0.6。提交笔记本可在这里找到。
对于这部分,甚至整个竞赛,数据预处理和数据集的多样性是最重要的两点。对于每个模型的训练,我使用了来自Diffusion-2M、Diffusion-14M、公开的90万和8万数据集。
预处理的必要性有两个原因:
每个数据集的预处理流程如下:
进行相关性过滤时,利用GPU批处理非常重要。例如使用"Sentence Transformer"库的
encode函数时,启用"normalize_embeddings=True"参数可得到单位长度嵌入,方便用torch.matmul计算余弦相似度。
我使用Stable Diffusion v2按照数据集描述中的设置重新生成了图像。
HorizontalFlip和MixUp有效| 模型 | 公开榜分数 | 权重 |
|---|---|---|
| clip-vit-large-patch14-336 | 0.57954 | 0.3 |
| clip-vit-large-patch14 | 0.57665 | 0.2 |
| blip-image-captioning-large | 0.57621 | 0.2 |
| convnext_large_mlp.clip_laion2b_ft_soup_320 | 0.57907 | 0.3 |
参考公开笔记本,并添加了我自己处理的数据集。
参考公开笔记本。
有几项未能深入探索:
我对多模态领域仍是新手,但这次竞赛是个很好的起点!