训练|迷你版DALL-E:模型缩小27倍,训练成本仅200美元,在线可玩!( 二 )

3.基于解码器在下一个 token的预测分布,对图像 token进行顺序采样
4.图像token序列通过VQGAN解码器解码
5.Clip用于选择最佳生成的图像
前面也提到,对于图像的编码和解码,作者使用VQGAN。VQGAN的目标是将一幅图像编码成一系列离散的 token,这些 token可用于transformers模型。
训练|迷你版DALL-E:模型缩小27倍,训练成本仅200美元,在线可玩!
文章插图
图注:训练transformers以实现高分辨率图像合成
值得一提的是,为了充分利用TPU,该模型用JAX编程。此外,为了加快数据加载速度,作者使用图像编码器对所有图像进行了预编码。
其中,每个TPU处理的Batch size为56,这可以最大限度地增加每个TPU的可用内存;采用Adafactor为优化器,提高内存效率,使我们可以使用更高的Batch size。作者们还花了半天的时间,通过启动超参数搜索来为模型找到一个好的学习率(0.005)。
2
与OpenAI DALL·E相比
1.Dall·E使用120亿参数版本的GPT-3。相比之下,Dall·E mini的模型小27倍,参数约为4亿。

2.Dall·E mini使用大量预先训练好的模型(VQGAN、BART编码器和CLIP),而OpenAI从头开始训练。

3.在图像编码方面,表( vocabulary )的对比是8192 vs 16384,tokens的对比是1024vs256。Dall·E使用VQVAE,而作者使用VQGAN。

4.在文本编码方面,表( vocabulary )的对比是16384 vs 50264,tokens的对比是256 vs 1024。

5.Dall·E通过自回归模型读取文本,而Dall·E mini使用双向编码器。

6.Dall·E接受了2.5亿对图像和文本的训练,而Dall·E mini只使用了1500万对。
综上,以上的设置差异使得Dall·E mini的训练时间大大缩小,即只在单个TPU v3-8上训练了3天。据作者计算,模型的训练成本不到200美元,即使算上在TPU和超参数搜索上的实验,额外的开销也不超过1000美元。
最后,作者写道:
基于此,Dall·E生成的图像的质量虽然比Dall·E mini模型高得多,但调用的资源非常少。不得不承认这个模型在复现OpenAI几个官方示例中确实失败了。
同时,作者也放出了一些实验结果,如下所示:
训练|迷你版DALL-E:模型缩小27倍,训练成本仅200美元,在线可玩!
文章插图
3
差在哪?
作者也承认了Dall·E mini的几个缺陷,在文末,他们总结到:
1.生成的图片经常有水印;
2.人物和动物的生成往往有缺陷;
3.很难预测该模型的优势和缺陷,例如该模型很擅长生成“鳄梨形状的扶手椅”,但不能生成与“计算机logo ”相关的任何内容;
4.目前仅接受英文输入,在其他语言中表现不佳。
经过分析,作者认为之所以出现缺陷,可能是因为数据集,毕竟数据偏见一直是研究社区所讨论的;另外,模型本身以及训练的流程、推理的流程都有可能是出问题的地方。
【 训练|迷你版DALL-E:模型缩小27倍,训练成本仅200美元,在线可玩!】雷锋网雷锋网雷锋网