
摘要
近期大规模文本到图像扩散模型的发展显著提升了我们基于文本生成图像的能力。这些模型能够为各种令人惊叹的提示生成逼真的图像,并展现出令人印象深刻的组合泛化能力。然而,迄今为止几乎所有应用场景都仅集中在采样上;实际上,扩散模型还可以提供条件密度估计,这对于超出图像生成的任务非常有用。在本文中,我们展示了如何利用像Stable Diffusion这样的大规模文本到图像扩散模型提供的密度估计,在无需额外训练的情况下进行零样本分类。我们提出的这种分类方法称为扩散分类器(Diffusion Classifier),在多种基准测试中取得了优异的结果,并且优于从扩散模型中提取知识的其他方法。尽管在零样本识别任务上,生成式方法与判别式方法之间仍存在差距,但我们的基于扩散的方法在多模态组合推理方面明显强于竞争的判别式方法。最后,我们使用扩散分类器从在ImageNet上训练的类别条件扩散模型中提取标准分类器。我们的模型仅使用较弱的数据增强技术就实现了强大的分类性能,并且对分布偏移表现出更好的“有效鲁棒性”。总体而言,我们的研究结果朝着使用生成式而非判别式模型进行下游任务迈出了重要一步。结果和可视化展示可访问 https://diffusion-classifier.github.io/
代码仓库
SamsungSAILMontreal/ForestDiffusion
pytorch
GitHub 中提及
diffusion-classifier/diffusion-classifier
官方
pytorch
GitHub 中提及
tajamul21/fate
tf
GitHub 中提及
LiYinqi/DIVE
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| domain-generalization-on-imagenet-a | Diffusion Classifier | Top-1 accuracy %: 30.2 |
| fine-grained-image-classification-on-fgvc | Diffusion Classifier (zero-shot) | Accuracy: 26.4 |
| image-classification-on-cifar-10 | Diffusion Classifier (zero-shot) | Percentage correct: 88.5 |
| image-classification-on-flowers-102 | Diffusion Classifier (zero-shot) | Per-Class Accuracy: 66.3 |
| image-classification-on-imagenet | Diffusion Classifier | Top 1 Accuracy: 79.1% |
| image-classification-on-objectnet-imagenet | Diffusion Classifier | Top 1 Accuracy: 33.9 |
| image-classification-on-objectnet-imagenet | Diffusion Classifier (zero-shot) | Top 1 Accuracy: 43.4 |
| image-classification-on-oxford-iiit-pets-1 | Diffusion Classifier (zero-shot) | Per-Class Accuracy: 87.3 |
| image-classification-on-stl-10 | Diffusion Classifier (zero-shot) | Percentage correct: 95.4 |
| visual-reasoning-on-winoground | Diffusion Classifier (zero-shot) | Text Score: 34.00 |
| zero-shot-transfer-image-classification-on-1 | Diffusion Classifier (zero-shot) | Accuracy (Private): 61.4 |
| zero-shot-transfer-image-classification-on-17 | Diffusion Classifier (zero-shot) | Top 1 Accuracy: 77.7 |