Facechain系列:命令行进行LoRA训练

2024-06-06 23:28

本文主要是介绍Facechain系列:命令行进行LoRA训练,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

FaceChain也支持在python环境中直接运行脚本进行训练和推理。为了避免人物肖像的版权问题,文章中使用的图片不是由FaceChain实际生成的图片,特此说明。

在克隆facechain源文件(克隆方法可以看这里Facechain系列: 独立安装)后的文件夹中新建一个imgs目录,将训练使用的人物照片保存在该目录下,然后执行直接运行如下命令来进行训练:

accelerate launch 

facechain/train_text_to_image_lora.py 

--pretrained_model_name_or_path="ly261666/cv_portrait_model" #modelscope初始训练模型

--revision="v2.0" 

--sub_path="film/film" #这个目录在modelscope的缓存目录中

--dataset_name="./imgs" 

--output_dataset_name="./processed" #在processed目录下可以看到训练使用的人物照片

--output_dir="./output"   #训练完成后,在output目录下会生成pytorch_lora_weights.bin文件,可用于后续推理使用。  

--caption_column="text"  

--resolution=512 

--random_flip 

--train_batch_size=1 

--num_train_epochs=200 

--checkpointing_steps=5000 

--learning_rate=1.5e-04 

--lr_scheduler="cosine" 

--lr_warmup_steps=0  

--seed=42 

--lora_r=4 

--lora_alpha=32 

--lora_text_encoder_r=32 

--lora_text_encoder_alpha=32 

--resume_from_checkpoint='fromfacecommon'

说明:

在processed_labeled目录下可以看到经过处理分析,可以使用的人物照片的轮廓图。如果处理时发现原始图片无法用于训练,比如照片中出现多个人脸,就不会出现在这个目录中。

这篇关于Facechain系列:命令行进行LoRA训练的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Pandas使用AdaBoost进行分类的实现

《Pandas使用AdaBoost进行分类的实现》Pandas和AdaBoost分类算法,可以高效地进行数据预处理和分类任务,本文主要介绍了Pandas使用AdaBoost进行分类的实现,具有一定的参... 目录什么是 AdaBoost?使用 AdaBoost 的步骤安装必要的库步骤一:数据准备步骤二:模型

使用Pandas进行均值填充的实现

《使用Pandas进行均值填充的实现》缺失数据(NaN值)是一个常见的问题,我们可以通过多种方法来处理缺失数据,其中一种常用的方法是均值填充,本文主要介绍了使用Pandas进行均值填充的实现,感兴趣的... 目录什么是均值填充?为什么选择均值填充?均值填充的步骤实际代码示例总结在数据分析和处理过程中,缺失数

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

QT进行CSV文件初始化与读写操作

《QT进行CSV文件初始化与读写操作》这篇文章主要为大家详细介绍了在QT环境中如何进行CSV文件的初始化、写入和读取操作,本文为大家整理了相关的操作的多种方法,希望对大家有所帮助... 目录前言一、CSV文件初始化二、CSV写入三、CSV读取四、QT 逐行读取csv文件五、Qt如何将数据保存成CSV文件前言

SpringShell命令行之交互式Shell应用开发方式

《SpringShell命令行之交互式Shell应用开发方式》本文将深入探讨SpringShell的核心特性、实现方式及应用场景,帮助开发者掌握这一强大工具,具有很好的参考价值,希望对大家有所帮助,如... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定

通过Spring层面进行事务回滚的实现

《通过Spring层面进行事务回滚的实现》本文主要介绍了通过Spring层面进行事务回滚的实现,包括声明式事务和编程式事务,具有一定的参考价值,感兴趣的可以了解一下... 目录声明式事务回滚:1. 基础注解配置2. 指定回滚异常类型3. ​不回滚特殊场景编程式事务回滚:1. ​使用 TransactionT

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

Java中使用Hutool进行AES加密解密的方法举例

《Java中使用Hutool进行AES加密解密的方法举例》AES是一种对称加密,所谓对称加密就是加密与解密使用的秘钥是一个,下面:本文主要介绍Java中使用Hutool进行AES加密解密的相关资料... 目录前言一、Hutool简介与引入1.1 Hutool简介1.2 引入Hutool二、AES加密解密基础

SpringSecurity6.0 如何通过JWTtoken进行认证授权

《SpringSecurity6.0如何通过JWTtoken进行认证授权》:本文主要介绍SpringSecurity6.0通过JWTtoken进行认证授权的过程,本文给大家介绍的非常详细,感兴趣... 目录项目依赖认证UserDetailService生成JWT token权限控制小结之前写过一个文章,从S

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.