AI 绘画 | Stable Diffusion 进阶 Embeddings(词嵌入)、LoRa(低秩适应模型)、Hypernetwork(超网络)

本文主要是介绍AI 绘画 | Stable Diffusion 进阶 Embeddings(词嵌入)、LoRa(低秩适应模型)、Hypernetwork(超网络),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

Stable Diffusion web ui,除了依靠文生图(即靠提示词生成图片),图生图(即靠图片+提示词生成图片)外,这两种方式还不能满足我们所有的绘图需求,于是就有了 Embeddings(词嵌入)、LoRa(低秩适应模型)、Hypernetwork(超网络)。

  • Embeddings模型 模型非常小,常常用于放在反向提示词里,让图像不出现生么,当然也可与用于正向提示词,生成我们想要的
  • LoRa模型 模型几十到几百MB,更多用于画特定人物,比如游戏/动漫的人物。平台上lora模型比较多。
  • Hypernetwork模型 大小和作用都和LoRa模型差不多,平台上Hypernetwork模型比较少。

在这里插入图片描述
你只需要在提示词词,使用Embeddings(词嵌入)、LoRa(低秩适应模型)、Hypernetwork(超网络)的标签。

Embeddings(词嵌入)

概念

Embeddings中文翻译为嵌入的,在Stable Diffusion中被称为词嵌入(嵌入式向量),这些向量可以捕捉文本中的语义信息,并在其中映射特定风格特征的信息。Embeddings一般保存的信息量相对较小,对人物的还原、对动作的指定、对画风的指定效果一般。除此之外,它还有另外一个名字Textual Inversion(文本反置、文本倒置)。它的模型被成为嵌入式模型、(反置/倒置)模型 。
Embeddings在Stable Diffusion模型中,又被称作嵌入式向量。它可以将文本编码器(TextEncoder)的输入(例如提示词)转换成电脑可以识别的文本向量,并在其中映射特定风格特征的信息。Embeddings模型和VAE模型一样后缀格式是.pt。大小仅为几kb到几十kb之间。Embeddings和checkpoint模型和lora模型比,它内部不包含图片信息,只是一些电脑可以识别图片的文本向量。举个比喻,如果把checkpoint模型比作一本大词典的话,Embeddings就是这本大词典中一些特定词的标签,它能精准的指向个别字词的含义,从而提共一个高效的索引。
比如我们像要画一个明星,但是checkpoint模型没有该明星名字对应的图片信息,这是我就可以用该明星的Embeddings模型生成这个明星的图片了,这里你可以Embeddings模型理解为包含这个明星的五官,面部、身体特征的嵌入式向量。使用Embeddings,Stable Diffusion就更容易理解我们画的明星长什么样子了!

使用

我们在模型下载网站上下载我们想要的Embeddings模型(国内liblib网站)。
在这里插入图片描述
然后放到SD WEB UI根目录下的embeddings文件夹内。,然后在SD WEB UI页面,点击刷新按钮,加载出来我们下载的Embeddings模型,然后点击Embeddings模型,会自动出现在提示词输入框。(默认会在正向提示词输入框内,但是当鼠标光标在反向提示词框内时,会出现在反向提示词框。)
在这里插入图片描述
这里的Embeddings模型也可以用提示词语法,圆括号和冒号来调整权重系数。
在这里插入图片描述

LoRa(低秩适应模型)

概念

Stable Diffusion Lora模型是一种通过低秩适应大型语言模型的方法。其核心思想是将原始的大型参数矩阵分解成两个或者多个低秩矩阵,并且只更新其中的一部分,从而减少计算量和存储需求,提高训练效率和模型性能。Lora的作用在于帮助你向AI传递描述某一个特征明确,主体清晰的形象。

使用

我们在模型下载网站(liblib.ai)上下载我们想要的lora模型。Lora模型需要放在 SD WEB UI根目录下的models\Lora文件夹内,大小一般为几十MB到几百MB。然后和嵌入式模型操作一样,先刷新在网页上加载出lora模型,然后点击lora到提示词输入框。
在这里插入图片描述
这里和嵌入式模型用法不同的是,lora模型需要加<>括号。格式 <lora:模型名:权重>,权重为1的时候,可以不写 <lora:模型名>,lora的权重建议设置在0.6左右,因为lora的权重越高,其他提示词的作用就越小,lora的权重过低,生成的图片又不像lora的训练的人物模样。当然lora的权重的最佳值,还跟你选择checkpoint模型有关,相同的lora搭配不同的checkpoint模型,生图的效果也有很大差别。经过我自己的大量测试,lora的权重建议设置在0.6左右,搭配大多数checkpoint模型都会有不错的效果。

在这里插入图片描述
值得注意的是有些lora模型需要搭配触发提示词,才能发挥lora的效果。

Hypernetwork(超网络)

概念

Stable Diffusion Hypernetwork是一种神经网络架构,它允许动态生成神经网络的参数(权重)。在Stable Diffusion中,Hypernetwork被用于动态生成分类器的参数,为Stable Diffusion模型添加了随机性,减少了参数量,并能够引入side information来辅助特定任务,这使得该模型具有更强的通用性和概括能力。

Hypernetwork的重要功能之一是对画面风格的转换,即切换不同的画风。它的特点在于能够生成多种画风的作品,同时能够保证画面的稳定性和清晰度。

使用

我们在模型下载网站(liblib.ai)上下载我们想要的lora模型。Hypernetwork模型需要放在 SD WEB UI根目录下的models\hypernetworks文件夹内,大小和lora模型差不多,一般为几十MB到几百MB。
在这里插入图片描述

hypernetworks模型的使用方法和lora模型一样,不同的是<lora:模型名>替换成了<hypernet:模型名>。格式 <hypernet:模型名:权重>
在这里插入图片描述
可以看出除了Embeddings模型的使用不需要<>尖括号外,hypernetworks模型和lora模型的使用都需要<>尖括号,说明hypernetworks模型和lora模型都是类似的,都是需要图片训练的,模型的中包含大量图片信息,而Embeddings模型只是简单的文本标记(向量)。

LoRA和Hypernetwork的区别

  • LoRA和Hypernetwork都是机器学习领域中比较前沿的技术,但是它们的作用有所不同。LoRA是一种图像风格转换模型,它可以将一张图片从一种风格转换成另一种风格,实现艺术风格迁移等功能。而Hypernetwork是一种模型生成技术,它的作用是学习从一个低维空间的潜在表示到一个高维空间的输出的映射函数。这种方法的主要目的是提供更加一般性和灵活性的模型生成能力,从而可以用更少的参数生成效果更好的模型。两种方法都有各自的优点和限制,需要根据具体任务的需求来选择相应的方法。

  • LoRA模型被广泛应用在图像处理领域,有很多应用场景,比如图像风格转换、艺术化渲染等等。同时,LoRA模型模型能够使用预训练权重,因此在实际应用中获取高质量的样本比较容易,并且由于LoRA的模型架构相对简单,因此训练比较容易实现。因此,很多人在图像处理领域中应用LoRA模型来处理图像,使得网上关于LoRA模型的文章和论文比较多。

  • 而Hypernetwork模型则相对较新,目前应用还较为局限。它的一个重要应用方向是用于神经网络架构搜索,可以快速搜索到高效的网络结构。但是,这种方法的难度比较大,需要大量的计算资源和专业知识以及较长的时间进行调试和优化。因此,Hypernetwork模型的文章和论文相对比较少,目前还没有被大规模应用到实际的项目中。

这篇关于AI 绘画 | Stable Diffusion 进阶 Embeddings(词嵌入)、LoRa(低秩适应模型)、Hypernetwork(超网络)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

从基础到进阶详解Python条件判断的实用指南

《从基础到进阶详解Python条件判断的实用指南》本文将通过15个实战案例,带你大家掌握条件判断的核心技巧,并从基础语法到高级应用一网打尽,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录​引言:条件判断为何如此重要一、基础语法:三行代码构建决策系统二、多条件分支:elif的魔法三、

Python进阶之列表推导式的10个核心技巧

《Python进阶之列表推导式的10个核心技巧》在Python编程中,列表推导式(ListComprehension)是提升代码效率的瑞士军刀,本文将通过真实场景案例,揭示列表推导式的进阶用法,希望对... 目录一、基础语法重构:理解推导式的底层逻辑二、嵌套循环:破解多维数据处理难题三、条件表达式:实现分支

基于Python编写自动化邮件发送程序(进阶版)

《基于Python编写自动化邮件发送程序(进阶版)》在数字化时代,自动化邮件发送功能已成为企业和个人提升工作效率的重要工具,本文将使用Python编写一个简单的自动化邮件发送程序,希望对大家有所帮助... 目录理解SMTP协议基础配置开发环境构建邮件发送函数核心逻辑实现完整发送流程添加附件支持功能实现htm

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块

Go语言网络故障诊断与调试技巧

《Go语言网络故障诊断与调试技巧》在分布式系统和微服务架构的浪潮中,网络编程成为系统性能和可靠性的核心支柱,从高并发的API服务到实时通信应用,网络的稳定性直接影响用户体验,本文面向熟悉Go基本语法和... 目录1. 引言2. Go 语言网络编程的优势与特色2.1 简洁高效的标准库2.2 强大的并发模型2.

基于Python实现进阶版PDF合并/拆分工具

《基于Python实现进阶版PDF合并/拆分工具》在数字化时代,PDF文件已成为日常工作和学习中不可或缺的一部分,本文将详细介绍一款简单易用的PDF工具,帮助用户轻松完成PDF文件的合并与拆分操作... 目录工具概述环境准备界面说明合并PDF文件拆分PDF文件高级技巧常见问题完整源代码总结在数字化时代,PD

javaSE类和对象进阶用法举例详解

《javaSE类和对象进阶用法举例详解》JavaSE的面向对象编程是软件开发中的基石,它通过类和对象的概念,实现了代码的模块化、可复用性和灵活性,:本文主要介绍javaSE类和对象进阶用法的相关资... 目录前言一、封装1.访问限定符2.包2.1包的概念2.2导入包2.3自定义包2.4常见的包二、stati

Spring AI使用tool Calling和MCP的示例详解

《SpringAI使用toolCalling和MCP的示例详解》SpringAI1.0.0.M6引入ToolCalling与MCP协议,提升AI与工具交互的扩展性与标准化,支持信息检索、行动执行等... 目录深入探索 Spring AI聊天接口示例Function CallingMCPSTDIOSSE结束语

C语言进阶(预处理命令详解)

《C语言进阶(预处理命令详解)》文章讲解了宏定义规范、头文件包含方式及条件编译应用,强调带参宏需加括号避免计算错误,头文件应声明函数原型以便主函数调用,条件编译通过宏定义控制代码编译,适用于测试与模块... 目录1.宏定义1.1不带参宏1.2带参宏2.头文件的包含2.1头文件中的内容2.2工程结构3.条件编

PyTorch中的词嵌入层(nn.Embedding)详解与实战应用示例

《PyTorch中的词嵌入层(nn.Embedding)详解与实战应用示例》词嵌入解决NLP维度灾难,捕捉语义关系,PyTorch的nn.Embedding模块提供灵活实现,支持参数配置、预训练及变长... 目录一、词嵌入(Word Embedding)简介为什么需要词嵌入?二、PyTorch中的nn.Em