活动简介
活动链接:Datawhale AI 夏令营(第四期)
以及AIGC里面的本次任务说明:Task 3 进阶上分-实战优化
这次任务呢,主要是对知识的一个讲解,包括ComfyUI工具的使用啊,以及LoRA的原理啊,还有高质量数据集的准备技巧。这次干货满满,前两次任务主要是对实践流程的解读,这次呢是对背后原理的解释。
同样的,具体细节我就不赘述了,参看教程即可,下面我主要就此次Task3任务学到了哪些内容作一个总结。
个人总结
基础知识
首先来到第一部分:ComfyUI。这个工具我还真没用过,这是头一次见。我们简单地理解它就是一种图形用户界面(就像你的操作系统一样,你直接对电脑操作很复杂不好操作,但是通过操作系统的图形用户界面比如桌面,就很好控制电脑了),从而把你生成图像的流程变得非常简单。类似我原先用过的可视化编程工具WordPress,就是通过容易理解的图形化操作来帮我们做前端页面的(我以前用过它做网站,简单的网站像个人博客购、物网站都可以做)。关于ComfyUI的讲解呢,教程已经非常详细了,以及后面的实践部分也会涉及到。
其次是第二部分:LoRA,是十分有用的一部分。我在Task1的博客就说过,当年我在微调大语言模型的时候就涉及过LoRA,这次在图像模型居然也能用到,真的涨知识了。后来通过学习LoRA的原理明白它其实是一种思想,并不是固定用于语言模型的方法。我用我自己的话语说一说它吧(可能说得乱七八糟),它好像就是在原先模型参数的基础上加了两个向量B和A乘起来的矩阵参数,另外还有两个参数控制这个矩阵的规模(lora-rank)和权重(lora-alpha)。应该是在保持原先模型参数固有的泛化性的情况下,训练新引的这些参数,使模型对特定领域达到一个很好的效果。这个过程让我想起了经典三维工作PointNet中的T-Net模块,T-Net好像就是将原本的三维点云乘上一个矩阵,这个矩阵也需要训练,从而达到一个微调点云位置的效果。
最后是第三部分:关于数据集的技巧。这部分呢虽然相对好理解,但是是十分关键的,毕竟我们常说“没有不好的算法,只有不好的数据”,数据在我们实验中起到非常关键甚至是决定性的作用。最后这部分呢主要是教会我们如何去找数据(其实我们找到数据之后对数据的预处理也是十分关键的一步)。教程中例举了一些公开的数据平台,比较熟悉的就是ImageNet了,因为做图像相关的基本都拿它来跑分吧,还有现在常用的三维物体数据集ShapeNet也是十分出名,斯坦福真是数据集大户。然后我感触特别深刻的就是“数据合成”,因为当年我微调ChatGLM时,因为要用于特定的领域嘛,所以缺乏对应的数据集(当时也是先用的“爬虫获取”),于是当时是用ChatGPT合成的,当时还感觉先造数据再去造大模型很奇怪,没想到这次教程中也提到了。还有教程中提到的“数据增强”也是我以后打算研究的。
实践感受
实践部分呢,首先是ComfyUI的一个使用。下面是正确打开图形用户界面的一个截图:
当加载工作流之后生成图片的效果:
最后是加载LoRA工作流的效果:
这次实践部分呢,给我最大的感受就是,教程只是提供了众多工具中的一种,我们可以使用它,但更重要的的是去探索更多的工具,选择最适合自己的方法。