[sd_scripts]之fine_tune

2023-11-10 13:12
文章标签 sd scripts fine tune

本文主要是介绍[sd_scripts]之fine_tune,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

https://github.com/kohya-ss/sd-scripts/blob/main/docs/fine_tune_README_ja.mdicon-default.png?t=N7T8https://github.com/kohya-ss/sd-scripts/blob/main/docs/fine_tune_README_ja.md

fine-tune微调是指使用图像和文本对来训练模型,不包括lora、textual inversion和hypernetwork。

对stable diffusion的unet进行微调,对应NovelAI的改进:

1.使用clip文本编码器倒数第二层的输出,而不是最后一层。

clip将文本转换为特征,sd中使用clip最后一层输出,但可以更改为使用倒数第二层的输出,NovelAI称这将更准确的反应提示,在sd2.0中,默认使用倒数第二层,不要指定clip_skip。

2.非正方形分辨率训练(Aspect Ratio Bucking)。

sd采用了512×512的分辨率进行训练,同时也会在256×1024、384×640等分辨率下进行训练。这样可以减少被裁剪的部分,更准确地学习提示和图像之间的关系。训练分辨率将根据给定分辨率进行64像素的垂直和水平调整,确保不超出范围。通常情况下,统一输入大小是常见的做法,只要在同一batch内保持一致即可。NovelAI所说的bucketing(分桶)是指根据长宽比对训练数据分类,并通过每个bucket内的图像创建batch来统一batch的图像大小。

3.token长度从75扩展到225。

sd中,token最多75(77个,包括起始和结束符),将其扩展到225,clip接受的最大长度是75个token,因此在225的情况下,需要将其分成三段,调用clip,然后连接结果。在webui中是根据逗号进行分割的。

4.使用blip、DeepDanbooru、WD14Tagger自动生成标题。

5.bs,因为学习整个模型,所以和lora等相比,fine-tune消耗更多的内存。

6.一般学习率,1e-6到5e-6很常见,从llm那边的经验,可能微调包括lora等,lr还是低一些好。

7.train_text_encoder,内存会增加,在正常微调中,text encoder不是学习目标,但是当训练数据较少时,text encoder像dreambooth那样训练也有效。默认情况不执行text encoder的训练,通常对模型训练时,只训练unet。

8.使用diffusers_xformers.

这篇关于[sd_scripts]之fine_tune的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/382839

相关文章

SOMEIP_ETS_095: SD_Check_subscribe_eventgroup_ttl_expired

测试目的: 验证DUT(Device Under Test)能够检测到测试器(Tester)的订阅已过期(ttl = 3秒),并且在TTL过期后不响应测试器触发的事件。 描述 本测试用例旨在确保DUT能够识别测试器的订阅已过期,并在订阅过期后不响应测试器通过TriggerEventUint8方法触发的事件。 测试拓扑: 具体步骤: TESTER:发送订阅事件组消息,用于事件组0x0

损坏SD数据恢复的8种有效方法

SD卡被用于许多不同的产品来存储重要数据,如图片和重要的商业文件。如果您的SD卡坏了,您需要SD数据恢复来获取您的信息。通过从损坏的SD卡中取回数据,您可以确保重要文件不会永远丢失,这对于工作或个人原因是非常重要的。 有许多东西会损坏SD卡,因此有必要从中恢复数据。处理不当,如打碎或沾湿,会使卡无法使用。文件系统中的错误或错误倾倒都可能导致损坏。另一个需要好的SD卡恢复软件的常见问题是意外删除文

Windows环境下SD卡多分区 隐藏分区 解决python裸读写扇区失败

SD卡分区 右键“我的电脑”->“管理”->“磁盘管理”; 如果SD卡有文件系统,点击"删除卷",重新做卡; 删除文件系统后如下图,点击“新建简单卷”; 在导航页“指定卷大小”,设置分区的大小,留出剩余的空间; python读写SD卡 这里需要注意的是,写SD卡需要加锁,否则写不成功 #带文件系统,需要锁定卷,否则无法写扇区@contextlib.contextmanagerd

青云QingCloud SD-WAN 助你分钟级构建企业专属智能广域网络

广域网接入,多地组网,分支机构、数据中心与云端的高速互联已成为保证企业业务与经营活动全程在线的必备条件。 但这也往往意味着复杂漫长的专线网络部署,昂贵的价格,访问速度不可控,缺乏弹性……是不是听起来就头疼? 你需要的是一个跨时代的新服务,一键解决上述痛点。这就是今天要介绍的青云QingCloud SD-WAN 云网一体智能组网服务。 相比传统方案,该服务可帮助用户零部署接入动态多线 BG

SOMEIP_ETS_089: SD_Calling_same_ports_before_and_after_suspendInterface

测试目的: 验证设备(DUT)是否能够在一个请求完成后,对相同的SOME/IP端口恢复监听和分派请求。 描述 本测试用例旨在检查DUT在执行了SuspendInterface操作后,是否仍然能够使用与之前相同的源端口和SOME/IP端口来响应方法调用。 测试拓扑: 具体步骤: TESTER:第一个TestFieldUINT8 Getter和SetterDUT:正常响应TESTER:

SOMEIP_ETS_088: SD_Answer_multiple_subscribes_together

测试目的: 验证设备(DUT)是否能够接受它接收到的每个SubscribeEventgroup条目。 描述 本测试用例旨在检查DUT在接收到包含多个SubscribeEventgroup条目的消息时,是否能够为每个条目发送SubscribeEventgroupAck。 测试拓扑: 具体步骤: TESTER:发送包含多个SubscribeEventgroup条目的消息,用于事件组:

机顶盒App安装在sd卡的目录

/mnt/asec/com.Yinyou.sdjqTV-1/pkg.apk 是mnt asec  不是mnt  sdcard 记录一下,当data分区空间不足时,会安装到此目录下

新路程------udev影响sd卡挂载

本来想搞个开机自动挂载sd卡,那在fstab里加了这么句话 /dev/mmcblk0p1   /mnt          vfat   defaults        0       0 奇怪的是看log报错了 [rcS]: /etc/init.d/S09mountall.sh mount: mounting /dev/mmcblk0p1 on /mnt failed: No such

VK11之BADI增强SD_COND_SAVE_A

T-code se19 例如ZSD_COND_SAVE_A 若不知道增强位置,可以再CLASS CL_EXITHANDLER 的方法GET_INSTANCE设置外部断点,来查看Exit的位置。 此需求是当用户用VK11新增时,检查不能出现在process的值来进行错误反馈 UPDKZ = ‘I’ 指新增 METHOD if_ex_sd_cond_save_a~condition_s

“Flash闪存”介绍 及 “SD NAND Flash”产品的测试含例程

“Flash闪存”介绍 及 “SD NAND Flash”产品的测试含例程 文章目录 一、“FLASH闪存”是什么?1. 简介2. 特点3. 未来发展 二、SD NAND Flash1. 概述2. 特点3. 引脚分配4. 数据传输模式5. SD NAND寄存器6. 通电图7. 参考设计 三、STM32测试例程 三、STM32测试例程 本篇除了对flash闪存进行简单介绍外,另给读