前情提要

2023-06-18 周日 杭州 小雨

小记: 昨天搞的好累,10点左右就想着先躺一会儿,然后就睡过去了,很奇怪,如果进行 AI 绘画,晚上就会做很奇怪的梦,说不上来的那种感觉,就是莫名的不舒服。
人类到底是宇宙的一种偶然奇迹还是概率统计下的一种必然现象,不必要搞那么清楚,只要保持原始的生物欲望就可以了,往往好奇心是害死猫的最常规途径。

任务清单:
a. LORA 训练脚本;
b. 训练集选择;
c. 裁剪&打标;
d. 生成模型;

简介

LoRA的全称是LoRA: Low-Rank Adaptation of Large Language Models,可以理解为stable diffusion(SD)模型的一种插件,和hyper-network,controlNet一样,都是在不修改SD模型的前提下,利用少量数据训练出一种画风/IP/人物,实现定制化需求,所需的训练资源比训练SD模要小很多,非常适合社区使用者和个人开发者。LoRA最初应用于NLP领域,用于微调GPT-3等模型(也就是ChatGPT的前生)。由于GPT参数量超过千亿,训练成本太高,因此LoRA采用了一个办法,仅训练低秩矩阵(low rank matrics),使用时将LoRA模型的参数注入(inject)SD模型,从而改变SD模型的生成风格,或者为SD模型添加新的人物/IP。用数据公式表达如下,其中
是初始SD模型的参数(Weights),
为低秩矩阵也就是LoRA模型的参数,
代表被LORA模型影响后的最终SD模型参数。整个过程是一个简单的线性关系,可以认为是原SD模型叠加LORA模型后,得到一个全新效果的模型。

在著名的模型分享网站https://civitai.com/上,有大量的SD模型和LoRA模型,其中SD模型仅有2000个,剩下4万个基本都是LoRA等小模型。例如下图,水墨画和原神八重神子就是LoRA模型来实现特定的画风和人物IP。

应用实践

1. LORA 模型训练脚本

方式一: Dreambooth

Dreambooth 是一种使用少量图像来训练模型的方法,是一种基于深度学习的图像风格转换技术。它可以将一张图片的风格应用到另一张图片上,以生成新的图像,Dreambooth 的一个优点是它可以生成高质量的艺术作品,而无需用户具备专业艺术技能。

特点:

  • 模型文件很大,2-4GB
  • 适于训练人脸,宠物和物件
  • 使用时需要 加载模型
  • 可以进行模型融合,跟其他模型文件融合成新的模型
  • 本地训练时需要高显存,>=12GB
  • 推荐训练人物*画风

方式二: Lora

Lora是一种使用少量图像来训练模型的方法。与 Dreambooth 不同,LoRA 训练速度更快:当 Dreambooth 需要大约二十分钟才能运行并产生几个 GB 的模型时,LoRA 只需八分钟就能完成训练,并产生约 5MB 的模型,推荐使用kohya_ss GUI 进行lora训练。

特点:

  • 模型大小适中,8~140MB
  • 使用时只需要加载对应的lora模型,可以多个不同的(lora模型+权重)叠加使用
  • 可以进行lora模型其他模型的融合
  • 本地训练时需要显存适中,>=7GB
  • 推荐训练人物

** 下载地址 **
链接:https://pan.baidu.com/s/1xrsbVvpkkPs7dzJ3nY2yuQ
提取码:goat

# 下载项目到本地
git clone https://github.com/bmaltais/kohya_ss.git# 运行设置脚本
setup.bat

2. 优秀训练集选择

** 参数 **
选择标准: 风格一致,统一;
训练集数量: 30张左右的图片(100以内,不然容易过拟合);

** 目标 **
自我假设: 我是一个 UI 设计师,我有一个比较中意的图标设计,但是居然收费,我只需要学习他的风格,然后定制类似的图标进行设计;
目标网站(挑选喜欢的图标): https://www.iconfont.cn

3. 裁剪&打标

** 参数 **
显卡: 8G及以上
图片尺寸: 512512/512768/768*768;
标签参数: 排除颜色或者特定限制性的词汇;

** 裁剪 **

图片源路径: F:\AILab\AI 绘画\图标训练集\icon\in-001
图片目标路径: F:\AILab\AI 绘画\图标训练集\icon\out-001

** 打标 **

输入目录: F:\AILab\AI 绘画\图标训练集\icon\out-001
输出目录: F:\AILab\AI 绘画\图标训练集\icon\out-001

4. 模型训练

** 训练集 **

训练图片路径   F:\AILab\AI 绘画\lora-scripts\train\001-icon\5_icon# 备注: 001-icon 训练图片的路径,可随意;5_icon,其中的数字表示每张图片训练的次数;

** 选定底模 **

训练底模: F:\AILab\AI 绘画\lora-scripts\sd-models
SD模型位置: F:\AILab\AI 绘画\sd-webui-aki-v4\models\Stable-diffusion\chilloutmix_NiPrunedFp32Fix.safetensors

** 训练参数 **

** 运行训练 **

5. 模型测试(鸡准测试)

** 参数配置 **

文生图描述: a man in a suit and bow tie <lora:vpc123-caixukun:1>
训练就绪的模型: vpc123-caixukun.safetensors
底模: chilloutmix_NiPrunedFp32Fix.safetensors
# 测试时,底模和 lora 最好配套,不然可能文不对题

生成图:

总结

AI 绘画界一大神器,蔡徐坤的鸡准测试,当代二次元的少年们就是这么直白的嘲讽不留任何情面的,测试的模型还是可以看到生成人物的风格特色的,不过也走了不少的弯路,底模和基于底模训练出来的 lora 模型需要配合使用,还有些底模是不包含图片特征的关键字的,所以人物和建筑模型训练时选择的模型是不同的,需要结合实际需要进行合理的选择与训练。

QA

问题一: 无脚本执行权限

无法加载文件 F:\AILab\AI 绘画\lora-scripts\train.ps1。未对文件 F:\AILab\AI 绘画\lora-scripts\train.ps1 进 行数字签名。无法在当前系统上运行该脚本。有关运行脚本和设置执行策略的详细信息,请参阅 https:/go.microsoft.com/fwlink/?Li nkID=135170 中的 about_Execution_Policies

# 开启脚本执行能力
set-ExecutionPolicy RemoteSigned

问题二: 开启 python 环境变量设置失败
activate : 无法将“activate”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。 所在位置 行:1 字符: 1

问题三: 缺少训练脚本依赖

处理办法:

cd F:\AILab\AI 绘画\lora-scripts\sd-scripts\
pip install -r .\requirements.txt

AI 绘画 - 建筑绘图辅助设计之模型训练相关推荐

  1. AI 绘画 - 建筑绘图辅助设计之 SD 基础

    前情提要 如果你想学会一门东西,那么就给交给自己一个明确的任务,然后独立完成,之后我们就可以掌握这门技术了: 简介 SD建筑绘画主要目的是将建筑概念转化为可视化的表达形式,以便更好地传达设计理念给业主 ...

  2. AI 绘画 - 建筑绘图辅助设计之生图

    前情提要 2023-06-16 周五 杭州 小雨 小记: 今天下班,回来比较晚,端午节去看老弟,只希望下周不要那么多乱七八糟的事情了,继续AI 绘画,之前上学的时候从来不爱做笔记的,现在或许是老了吧, ...

  3. (十三)AI作画、AI绘画、AIGC本地大模型

    (十三)AI作画.AI绘画.AIGC本地大模型 AI作画近期很火,涌现出了很多AIGC(AI内容生成)的网站.平台,但这些平台都是使用的云上的算力,基本都有使用的各种限制等. 一.本代码自动将大模型下 ...

  4. AI 绘画 stable diffusion webui 常见模型汇总及简介

    主要是记录索引一下常见的 AI 绘画作画模型,方便自己用.主要收集 stable diffusion webui 用大模型(ckpt与safetensors)包括了常见的模型比如的Waifu Diff ...

  5. AI绘画爆火背后:扩散模型原理及实现

    Datawhale干货 技术:Diffusion扩散模型 最近爆火的AI绘图,相信大家并不陌生了. 从AI绘图软件生成的作品打败一众人类艺术家,斩获数字艺术类冠军,到如今DALL.E.Imagen.n ...

  6. DeepMind助力Waymo!提升自动驾驶AI准确率,还能加快模型训练

    鱼羊 发自 凹非寺  量子位 报道 | 公众号 QbitAI 在自动驾驶领域,谷歌Waymo无疑是标杆一样的存在. 现实世界中,Waymo已经行驶了1000多万英里(约1600万公里),而在模拟驾驶中 ...

  7. ai绘画到底有大强?我开发了一款ai绘画(来看看)

    ai绘画,是依靠强大模型训练出来的结果. 那么我开发了一款小程序,也是依靠强大的模型训练出来的. 先来看看结果 首先我们先画两张图 小程序·内部展示() 那么我们来看一下,我这位普通的0基础第一天画手 ...

  8. ERNIE-ViLG文心跨模态AI绘画大模型——中文版stable-diffusion

    上期图文教程,我们分享了stable-diffusion AI绘画大模型,且分享了如何使用stable-diffusion的代码实现过程,可以说stable-diffusion绘画模型开创了AI绘画的 ...

  9. AI绘画——了解AI绘画爆火原因与工具,并生成几个端午绘画小作品

    作者简介:一名云计算网络运维人员.每天分享网络与运维的技术与干货.   座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​ 目录 前言 一.AI绘画 1.AI绘画爆火原因 2.AI绘画背后原 ...

最新文章

  1. python在windows下操作word的方法的代码
  2. oracle插入java时间,java向oracle中插入字符或时间型 时间数据
  3. hibernate oracle驱动,出错场景是升级oracle驱动,将版本从ojdbc14升级到ojdbc6,hibernate执行原生态sql语句会报如下错误...
  4. 案例讲清如何构建“What-if分析”,教你轻松玩转动态参数
  5. 星辰天合:为云存储而生 Ceph社区代码贡献领先的国产企业
  6. Linux系统编程下做一个简易的shell
  7. c语言编程题2^0+2^1+……+2e63,牛客网刷题33(2道题)
  8. 如何退出python程序_python怎么退出程序
  9. azure 使用_使用Azure Data Studio开始您的旅程
  10. basis问题专区(文档)
  11. (7)numpy.delete删除np数组的某一行或某一列
  12. 计算机建立excel文件,用Excel建立数据库 -电脑资料
  13. python 函数修饰器 父类_Python函数嵌套、回调函数、闭包、装饰器和类
  14. 运维学python用不上_运维朋友们,别再问需不需要学 Python 了!
  15. CANOE使用三:不用diva也能自动化测试UDS(创建TestModule-搭配Panel界面及使用Capl识别配置文件TXT编写基于14229的UDS自动化测试流程)
  16. WinRAR突现骇人漏洞,官方:没必要修复
  17. NDIS驱动(一)协议驱动
  18. 闲人闲谈PS之一项目库存跨公司业务STO解决方案--SAP闲人的开篇
  19. flex 居中并两端对齐
  20. 数据结构 堆 heap

热门文章

  1. 基于Vue的问卷调查app页面的开发
  2. [人工智能-深度学习-24]:卷积神经网络CNN - CS231n解读 - 卷积神经网络基本层级
  3. 国内有哪些知名IDC机房?
  4. 什么是单臂路由技术?
  5. HINT: Use the Theano flag 'exception_verbosity=high' for a debugprint and storage map footprint of t
  6. 2020年前端面试问题汇总
  7. h5下载预览pdf,excel
  8. 基于深度混合核极限学习机的多变量输入时间序列预测
  9. html5 头部阴影,兼容各种主流浏览器的CSS阴影效果
  10. 值得推荐的几款免费在线甘特图工具【写本子的都说好!】