MMagic调试(训练)dreambooth

时间:2024.1.23

1.dreambooth配置文件

dreambooth在mmagic中的路径:

configs/dreambooth

本文以dreambooth.py 为例

configs/dreambooth/dreambooth.py

2.下载数据集

下载数据集并保存至data/dreambooth/,数据集:

https://drive.google.com/drive/folders/1BO_dyz-p65qhBRRMRA4TbZ8qW4rB99JZ

文件夹的数据结构如下:

data
└── dreambooth
    └──imgs
       ├── alvan-nee-Id1DBHv4fbg-unsplash.jpeg
       ├── alvan-nee-bQaAJCbNq3g-unsplash.jpeg
       ├── alvan-nee-brFsZ7qszSY-unsplash.jpeg
       └── alvan-nee-eoqnr8ikwFE-unsplash.jpeg

3.修改配置文件中数据集路径

修改配置文件中的数据集路径,就是上一步骤中图片的路径。

data_root='你的数据集路径'

4.从hugging face 下载与训练权重

hugging face 中stable diffusiond的网址如下:

https://huggingface.co/runwayml/stable-diffusion-v1-5

点击Files and versions就能下载相关文件了:
在这里插入图片描述

要下载的权重和配置文件入下:

runwayml
└── stable-diffusion-v1-5
    └── scheduler
       └── scheduler_config.json
    └── text_encoder
		├── config.json
		└── pytorch_model.bin
	└── tokenizer
		├── merges.txt
        ├── special_tokens_map.json
        ├── tokenizer_config.json
        └── vocab.json
	└── unet
		├── config.json
		└── diffusion_pytorch_model.bin
	└── vae
		├── config.json
		└── diffusion_pytorch_model.bin

根据上述说明,从hugging face下载。注意文件夹的数据结构。注意文件的名称不能随意改。注意其他文件不需要,就没不要下载了。
将这些文件放在你喜欢的路径下,记住这个路径,在下一步中要用,用来替换配置文件中的stable_diffusion_v15_url路径。

5.修改stable_diffusion_v15_url路径

在配置文件中configs/dreambooth/dreambooth.py修改stable_diffusion_v15_url路径,默认是:

stable_diffusion_v15_url = 'runwayml/stable-diffusion-v1-5'

这个stable_diffusion_v15_url的作用是读入vae、unet、clip、scheduler的权重和配置文件。但是如果路径不是这个就要改成自己的路径。你自己的路径在步骤3中已经准备好了。

stable_diffusion_v15_url = '你自己的路径'

6.评价

(1)Hugging face喜欢整洋活,把代码集成好放pip中,通过pip安装直接调用。但这有个问题,需要下载权重的时候,自动联网下,但如果连不上网就没有办法下了啊!readme也不说明下哪些权重。
(2)MMagic太依赖hugging face 的diffuser了,干脆直接用diffuser就完了呗,还用mmagic干什么呢?学学隔壁的mmdetection等,要想做一个库,就不要那么依赖diffuser。建议把diffuser的代码该重构重构,权重该转到自家代码库就转。
(3)MMagic中默认提供的能训练的模型太少了,大部分只给了推理代码,没有给训练代码。真离谱!作为openmmlab旗下的扩散模型继承代码库,mmagic中大部分模型竟然不能训练!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/343044.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

buffer pool和查询缓存的区别

在学习buffer pool的时候我产生了疑问,buffer pool和查询缓存是一个东西吗? 结论:不是一回事。 buffer pool buffer pool我之前介绍过,它的出现是为了提高查找效率,缓存磁盘上的数据页。 buffer pool虽说是内存中的一…

【GitHub项目推荐--不错的 C++开源项目】【转载】

01 C 那些事 这是一个适合初学者从入门到进阶的仓库,解决了面试者与学习者想要深入 C及如何入坑 C的问题。 除此之外,本仓库拓展了更加深入的源码分析,多线程并发等的知识,是一个比较全面的 C 学习从入门到进阶提升的仓库。…

Java面试题之基础篇

文章目录 一:谈谈你对面向对象的理解二:JDK、JRE、JVM三者区别和联系三:和equals比较四:hashCode与equals五:final六:String、StringBuffer、StringBuilder七:重载与重写的区别?八&a…

Leetcode27-判断一个数的数字技术是否等于数位的值(2283)

1、题目 给你一个下标从 0 开始长度为 n 的字符串 num &#xff0c;它只包含数字。 如果对于 每个 0 < i < n 的下标 i &#xff0c;都满足数位 i 在 num 中出现了 num[i]次&#xff0c;那么请你返回 true &#xff0c;否则返回 false 。 示例 1&#xff1a; 输入&am…

网络安全--防御保护02

第二天重要的一个点是区域这个概念 防火墙的主要职责在于控制和防护---安全策略---防火墙可以根据安全策略来抓取流量之后做出对应的动作 防火墙的分类&#xff1a; 单一主机防火墙&#xff1a;专门有设备作为防火墙 路由集成&#xff1a;核心设备&#xff0c;可流量转发 分…

Git学习笔记(第3章):Git常用命令

目录 3.1 设置用户签名 3.2 初始化本地库 3.3 查看本地库状态 3.4 添加暂存区 3.5 提交本地库 3.6 历史版本 3.7 修改文件 3.8 版本穿梭 小结 命令 作用 git config --global user.name 用户名 设置用户签名 git config --global user.email 邮箱 设置用户签名 …

Hikvision综合安防管理平台files;.css接口存在任意文件读取漏洞 附POC软件

免责声明&#xff1a;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。 1. Hikvisi…

Python基础之文件操作(I/O)

和其他编程语言一样&#xff0c;Python 也具有操作文件&#xff08;I/O&#xff09;的能力&#xff0c;比如打开文件、读取和追加数据、插入和删除数据、关闭文件、删除文件等。合理应用python提供的文件操作基本函数&#xff0c;可大大提高自动化实现的效率与框架代码的稳定性…

[docker] Docker 基本管理

一、Docker 相关知识 1.1 Docker概述 Docker是一个开源的应用容器引擎&#xff0c;基于go语言开发并遵循了apache2.0协议开源。 Docker是在Linux容器里运行应用的开源工具&#xff0c;是一种轻量级的“虚拟机”。 Docker 的容器技术可以在一台主机上轻松为任何应用创建一个轻…

中国工业设计行业现状及趋势

近几年来&#xff0c;我国工业设计产业的规模不断扩大&#xff0c;逐渐渗透到人们的日常生活当中&#xff0c;企业在通过对市场的需求方面可以对产品的设计方向进行了解&#xff0c;通过以人为本的设计理念&#xff0c;提高我国工业设计产业的总体实力。目前我国工业出口总额为…

navicat数据库密码解密

1、打开 https://tool.lu/coderunner/ 在线工具 2、输入代码 <?php namespace FatSmallTools; class NavicatPassword {protected $version 0;protected $aesKey libcckeylibcckey;protected $aesIv libcciv libcciv ;protected $blowString 3DC5CA39;protected $blow…

vue3 项目中 arguments 对象获取失败问题

问题 在 vue3 项目中 获取到的 arguments 对象与传入实参不符&#xff0c;打印出函数中的 arguments 对象显示如下&#xff1a; 原因 作者仔细回看代码才发现&#xff0c;自己一直用的是 vue3 的组合式写法&#xff0c;函数都是箭头函数&#xff0c;而箭头函数不存在 argumen…

Windows脚本:监控并自动重启某个进程

Windows脚本&#xff1a;监控自动并重启某个进程 一、简介二 .bat脚本方式2.1 编制脚本2.2 创建并运行脚本2.3 设置关闭cmd窗口 三、使用VBScript脚本方式3.1 编制脚本3.2 运行脚本 四、设置脚本开机自启动五、某些软件加入启动项后&#xff0c;开机不会自动启动的解决方法 在实…

Flink多流转换(1)—— 分流合流

目录 分流 代码示例 使用侧输出流 合流 联合&#xff08;Union&#xff09; 连接&#xff08;Connect&#xff09; 简单划分的话&#xff0c;多流转换可以分为“分流”和“合流”两大类 目前分流的操作一般是通过侧输出流&#xff08;side output&#xff09;来实现&…

Javaweb之SpringBootWeb案例本地存储的详细解析

2.2 本地存储 前面我们已分析了文件上传功能前端和后端的基础代码实现&#xff0c;文件上传时在服务端会产生一个临时文件&#xff0c;请求响应完成之后&#xff0c;这个临时文件被自动删除&#xff0c;并没有进行保存。下面呢&#xff0c;我们就需要完成将上传的文件保存在服…

ZigBee学习(一)

文章目录 一、ZigBee介绍1.1 ZigBee协议特点1.2 ZigBee协议体系结构1.3 ZigBee设备类型 二、IEEE 802.15.42.1 物理层2.2 MAC层2.3 如何实现网络和设备寻址2.4 能量管理 三、ZigBee网络拓扑结构四、ZigBee配置参数 一、ZigBee介绍 ZigBee是一种基于IEEE 802.15.4标准的高级通信…

网易云音乐JS逆向分析

文章目录 页面分析抓包分析JS逆向分析代码编写 页面分析 先来分析一下页面 当我们点击播放按钮的时候&#xff0c;音乐开始播放。实际上这个逻辑背后的原理是这个按钮后面对应的是一个url&#xff0c;这个地址是通过ajax来进行局部刷新的。 所以我们可以通过抓包工具&#…

防御保护----信息安全

网络安全概述 信息安全&#xff1a;防止任何对数据进行未授权访问的措施&#xff0c;或者防止造成信息有意无意泄露、破坏、丢失等问题的发生&#xff0c;让数据处于远离危险、免于威胁的状态和特性。 网络安全&#xff1a;计算机网络环境下的信息安全。 网络安全背景 网络空间…

Open3D 与 Point Cloud 处理

点云基础3D数据结构点云采集方法点云处理框架点云操作 Open3D基础操作 点云基础 3D数据结构 点云&#xff08;Point Cloud&#xff09;&#xff1a; 点云是由一组离散的点构成的三维数据集合&#xff0c;每个点都包含了坐标信息 (x, y, z) 、颜色 (RGB)、类别 (cls)、强度值等…