近些年来 ,中山增长基于散漫模子(Diffusion Models)的大学代码图像天生模子层出不穷 ,揭示出使人惊艳的开源框架天生下场。可是不同,现有相关钻研模子代码框架存在偏激碎片化的规模下场,缺少不同的化运框架系统,导致泛起「迁移难」 、中山增长「门槛高」 、大学代码「品质差」的开源框架代码实现难题 。
为此 ,不同中山大学人机物智能融会试验室(HCP Lab)构建了 HCP-Diffusion 框架 ,规模零星化地实现为了模子微调、化运特色化磨炼、中山增长推理优化 、大学代码图像编纂等基于 Diffusion 模子的开源框架相关算法,妄想如图 1 所示。
图 1 HCP-Diffusion 框架妄想图 ,经由不同框架不同现有 diffusion 相关措施 ,提供多种模块化的磨炼与推理优化措施 。
HCP-Diffusion 经由格式不同的配置装备部署文件调配各个组件以及算法,大幅后退了框架的锐敏性以及可扩展性 。开拓者像搭积木同样组合算法,而无需一再实今世码细节 。
好比 ,基于 HCP-Diffusion,咱们可能经由重大地更正配置装备部署文件即可实现 LoRA,DreamArtist,ControlNet 等多种罕有算法的部署与组合 。这不光飞腾了立异的门槛,也使患上框架可能兼容种种定制化妄想。
HCP-Diffusion 代码工具 :https://github.com/7eu7d7/HCP-Diffusion
HCP-Diffusion 图形界面:https://github.com/7eu7d7/HCP-Diffusion-webui
HCP-Diffusion:功能模块介绍
框架特色
HCP-Diffusion 经由将当初主流的 diffusion 磨炼算法框架模块化,实现为了框架的通用性,主要特色如下:
不同架构:搭建 Diffusion 系列模子不同代码框架
算子插件:反对于数据 、磨炼、推理、功能优化等算子算法,如 deepspeed, colossal-AI 以及 offload 等减速优化
一键配置装备部署 :Diffusion 系列模子可经由高锐敏度地更正配置装备部署文件即可实现模子实现
一键磨炼 :提供 Web UI,一键磨炼 、推理
数据模块
HCP-Diffusion 反对于界说多个并行数据集,每一个数据集可接管差距的图像尺寸与标注格式,每一次磨炼迭代会从每一个数据会集各抽取一个 batch 妨碍磨炼,如图 2 所示。此外,每一个数据集可配置装备部署多种数据源 ,反对于 txt 、json、yaml 等标注格式或者自界说标注格式 ,具备高度锐敏的数据预处置与加载机制。
数据集处置部份提供带自动聚类的 aspect ratio bucket ,反对于处置图像尺寸各异的数据集。用户无需对于数据集尺寸做格外处置以及对于齐,框架会凭证宽高比或者分说率自动抉择最优的分组方式 。该技术大幅飞腾数据处置的门槛,优化用户体验,使开拓者更专一于算法自己的立异。
而对于图像数据的预处置 ,框架也兼容 torch vision, albumentations 等多种图像处置库 。用户可能凭证需要在配置装备部署文件中间接配置装备部署预处置方式 ,或者是在此根基上拓展自界说的图像处置措施。
HCP-Diffusion 在文本标注方面 ,妄想了锐敏且清晰的 prompt 模板尺度 ,可支端庄大多样的磨炼措施与数据标注。其对于运用上述配置装备部署文件 source 目录下的 word_names ,概况可自界说下图大括号中的特殊字符对于应的嵌入词向量与种别形貌,以与 DreamBooth、DreamArtist 等模子兼容 。
而且对于文本标注,也提供了按句擦除了 (TagDropout) 或者按句打乱 (TagShuffle) 等多种文本增强措施 ,可能削减图像与文本数据间的过拟分解绩 ,使天生的图像更多样化。
模子框架模块
HCP-Diffusion 经由将当初主流的 diffusion 磨炼算法框架模块化 ,实现为了框架的通用性 。详细而言,Image Encoder,Image Decoder 实现图像的编解码 ,Noise Generator 发生前向历程的噪声 ,Diffusion Model 实现份散历程 ,Condition Encoder 对于天生条件妨碍编码,Adapter 微调模子与卑劣使命对于齐 ,positive 与 negative 双通道代表正负条件对于图像的操作天生。
如图 5 所示 ,HCP-Diffusion 在配置装备部署文件中经由浅易的组合 ,即可实现 LoRA、ControlNet 、DreamArtist 等多种主流磨炼算法。同时反对于对于上述算法妨碍组合,好比 LoRA 以及 Textual Inversion 同时磨炼