从头开始在单个GPU上训练一个210M文本到图像DiT:我的测量结果 [P]

Reddit r/MachineLearning 论文

摘要

一篇详细的文章,介绍了从头开始在单个GPU上训练一个210M文本到图像扩散Transformer,分享了关于注意力汇聚、损失作为健康信号以及时间步偏移益处的关键测量结果。

我从头开始训练了一个210M参数的文本到图像扩散Transformer(3.5天,一个RTX PRO 6000 GPU,4.2M张256²图像),主要是为了理解整个过程。以下是三个我在其他地方没有看到明确陈述的测量结果,所以我发布了这些而不是样本。1. 学习的空注意力槽成为汇聚点。遵循寄存器token的想法,模型在图像流中有16个寄存器token,加上在每个交叉注意力中附加的2个学习的key/value槽。在中等噪声的中间块中,这两个槽接收了大约90%的交叉注意力质量;通常在交叉注意力模型中作为汇聚点的EOS token下降到约4%;内容词每个保留几个百分点,锐利地集中在它们的对象上。寄存器向量在中间块增长到图像token范数的4-13倍。2. 流程匹配损失是健康信号,而不是质量信号。在整个运行过程中,它从0.805移动到0.754,而保留集的FID从33.7降到27.0,FD-DINOv2从570降到218,基于检测器的对象准确率从65%提高到90%。高噪声下的大部分损失是速度目标的不可约方差;训练和保留集损失在24个epoch内保持相等到第三位小数。3. 训练时的时间步偏移比将步数翻倍更有价值。在2,456个保留提示上使用最终权重:20步带偏移2.8 → FID 27.0;50步 → 26.6;8步 → 28.4;20步无偏移 → 27.3,FD-DINOv2 218 → 228。偏移2.8来自SD3/RAE规则√(32·32·32/4096)用于32通道的FLUX.2潜变量。简要设置:交叉注意力DiT(896 × 16块),2D RoPE,QK-norm,SwiGLU,adaLN-single;使用对数正态时间步和上述偏移的校正流;余弦速度和色散辅助损失;从第一步起五个约256 token的纵横比桶;flan-t5-base冻结,每张图像的长/短标题采样50/40/10(空)。数据:Pexels 2.8M(60%),FLUX-Reason-6M的质量过滤1.2M切片(25%),带有GPT-4V标题的COCO(15%)。批量256,400k步,EMA 0.9999,最后四分之一线性学习率衰减,torch.compile(比eager模式快2.4倍)。所有内容,包括每个决策的来源:https://github.com/ivanmikhnenkov/tinydit · 文章:https://huggingface.co/blog/ivanmikhnenkov/tinydit-text-to-image-from-scratch-one-gpu · 权重:https://huggingface.co/ivanmikhnenkov/tinydit-256 · 演示:https://huggingface.co/spaces/ivanmikhnenkov/tinydit 对于下一阶段(在此基础上的Flow-GRPO),你会从哪个奖励开始:PickScore/HPSv2,基于检测器的对象奖励,还是像计数这样可验证的奖励?
查看原文

相似文章

利用测试时训练线性化视觉Transformer

Hugging Face Daily Papers

本文提出了一种方法,将预训练的Softmax注意力模型转换为线性复杂度的测试时训练(TTT)架构,在显著加速推理的同时,实现了与微调Softmax模型相当的文生图质量。该方法通过对Stable Diffusion 3.5进行线性化得到SD3.5-T^5,在1K分辨率下实现1.32倍加速。

训练了一个在264KB RAM上运行的扩散模型 [P]

Reddit r/MachineLearning

一个人训练了一个扩散模型,在只有264KB RAM的Shrike lite微控制器上生成32x32像素的图像,尝试了FPGA加速但遇到了内存瓶颈,导致输出有时是噪声但有时很有趣。

Abra:扩散图像训练的缩放研究

Hugging Face Daily Papers

本文介绍了针对文本到图像扩散模型的系统性缩放律研究,表明它们可以可预测地缩放,但为了达到最佳训练,每个参数所需的数据远多于语言模型。

Qwen 3.6 27B AR->Diffusion - 在5090上的本地训练

Reddit r/LocalLLaMA

作者详细介绍了尝试在Nvidia 5090 GPU上使用qlora以及来自open-dllm和d3LLM的修改来本地训练Qwen 3.6 27B自回归到扩散模型的过程,在探索单步扩散技术时遇到了显存限制和硬件问题。