Ryo's Blog
  • Articles
  • Learn from AI
  • Tags
  • More
  • ...
#杂技#Blog#杂谈#C++#Python#数据结构#算法#排序#算法竞赛#设计模式#笔记#GitHub#AWS#CI/CD#IaC#DevOps#VSCode#Hexo#JavaScript#Kubernetes#Docker#Cloud Native#Cursor#可视化#数学#工具#Nextjs#Tag1#Tag2#单行Tag#Tag#Tag/Tag2#Tag3#Linux#systemctl#journalctl#timedatectl#BasicKnowledge#Operation#Signal#memory#schedule#Cloud Computing#PyTorch#ONNX#深度学习#模型部署#学习笔记#OpenCV#图像处理#Rust#编程语言#Windows#macOS#可执行文件#LoRA#参数高效微调#模型训练#反向传播#自动微分#GoLang#Memory Management#Deep Learning#Model Management#Neural Networks#ResNet#Mathematics#协议#IoT#物联网#消息队列#Stable Diffusion#Concurrency#Scheduler#Goroutine#test#wiki#page1#subpage1#page2#subpage2#subpage3#subpage34#page3
PyTorch 实现 Stable Diffusion LoRA 训练脚本:从数据预处理到模型修改与训练循环
2025-03-29

> 本文详细介绍了如何使用 PyTorch 从零开始编写 Stable Diffusion LoRA 训练脚本,包括数据预处理、模型修改、训练循环、参数保存与加载等关键步骤。特别强调了 LoRA 层的手动实现和在 UNet 的 Cross-Attention 层注入 LoRA 的原因,以及在其他层应用 LoRA 的可能性和注意事项。此外,还提供了代码示例和参数效率的讨论,帮助读者深入理解 LoRA 在 Stable Diffusion 微调中的应用。

> [!reasoning]-

>

#深度学习#Stable Diffusion#LoRA#参数高效微调#模型训练#学习笔记
详细介绍 MQTT 协议的内容,原理,应用场景
2025-03-28

> 本文详细介绍了 MQTT(Message Queuing Telemetry Transport)协议的核心内容、工作原理及其在物联网和分布式系统中的应用场景。文章分析了 MQTT 协议的特点、消息质量等级、主题设计以及安全机制,帮助读者全面了解这一轻量级的发布/订阅协议如何支持资源受限设备的可靠通信。

MQTT(Message Queuing Telemetry Transport)是一种轻量级的、基于发布/订阅模式的消息传输协议,专为受限设备和低带宽、高延迟或不可靠的网络环境设计。它由 Andy Stanford-Clark(IBM)和 Arlen Nipper(Cirrus Link)于 1999 年为连接石油管道的 SCADA 系统而开发,现已发展成为物联网(IoT)通信的标准协议之一。

MQTT 协议工作在 TCP/IP 协议栈上,使用了最小化的协议开销,可以在资源受限的设备上实现高效通信。它采用发布/订阅的消息模式,而非传统的客户端/服务器模式,这使得它特别适合构建可扩展的物联网应用。

#协议#IoT#物联网#消息队列#学习笔记
Stable Diffusion UNet 内部结构
2025-03-28

> [!summary]

> 以下内容为 Cursor 中拥有 codebase 上下文的情况下与 claude-3.7-sonnet 的对话记录

在 `train_text_to_image_lora.py` 脚本中,LoRA(Low-Rank Adaptation)通过在模型的特定层中插入低秩矩阵来实现微调。这种方法通过添加两个低秩矩阵来调整模型的权重,而不改变原始权重,从而实现参数高效的微调。

#深度学习#Stable Diffusion#LoRA#参数高效微调#模型训练#学习笔记
PyTorch 自动微分与反向传播机制原理解析
2025-03-06

> 本文为用户与 DeepSeek 的问答。主题为 PyTorch 的反向传播机制。本文从数学原理、计算图机制和实际需求三个方面深入解释其工作原理,并结合 PyTorch 的自动微分(Autograd)系统进行说明。

> [!query]

>

#PyTorch#深度学习#反向传播#自动微分#学习笔记
LoRA微调中的矩阵初始化策略:A随机与B零初始化
2025-03-05

> 本文是与 Deepseek-R1 模型+Search 的对话记录,详细探讨了 LoRA(低秩适应)微调技术中矩阵初始化策略的数学原理。文章分析了为什么在 LoRA 中矩阵 A 采用随机初始化而矩阵 B 采用零初始化的原因,包括保持初始模型稳定性、确保梯度更新有效性、实现逐步学习的低秩更新等方面。同时,文章也解释了为什么反向初始化策略(B随机而A为零)在理论上存在问题,会导致梯度消失和训练效率下降。这些分析有助于理解深度学习中参数高效微调技术的设计原理。

> [!reasoning]-

> 嗯,这个问题是关于LoRA(低秩适应)初始化的。为什么在初始化的时候,矩阵A是随机初始化的,而矩阵B是零初始化的呢?我需要仔细思考一下。

#深度学习#LoRA#参数高效微调#模型训练#学习笔记
可执行文件格式对比:ELF、PE、Mach-O等
2024-12-08

> 本文介绍了几种主要的可执行文件格式,包括Linux系统使用的ELF格式、Windows系统使用的PE格式、以及macOS系统使用的Mach-O格式等。文章详细讨论了每种格式的特点、使用平台和历史演变,帮助读者理解不同操作系统中二进制文件格式的差异。

ELF(Executable and Linkable Format)执行文件是一种用于Linux和类Unix操作系统的标准二进制文件格式。它包含了可执行程序、共享库、目标文件和核心转储文件。ELF文件格式设计灵活、可扩展,并且可移植,它定义了程序代码的加载和执行方式,包括代码段、数据段、符号表和重定位信息等。操作系统根据ELF文件中的这些信息来和执行程序。ELF格式也允许程序共享库,即多个程序可以共享同一段代码,从而减少内存占用并提高效率。在软件开发过程中,ELF文件作为目标文件格式在编译时生成,并最终由链接器组合形成可执行文件或共享库。

是的,除了ELF(Executable and Linking Format)之外,还有其他几种常见的二进制文件格式,它们在不同的操作系统和平台上被广泛使用。以下是一些主要的二进制文件格式:

#Linux#Windows#macOS#可执行文件#学习笔记
OpenCV 坐标表示:理解 (y, x) 与 (x, y) 的区别
2024-11-29

> 📝 本文是我在学习 OpenCV 时遇到的一个问题。问题的解答和中文翻译均由 AI 生成。

Why sometimes opencv represent a point coordinate as (y,x) (e.g. the result of cv2.findContours) , and sometimes it represent as (x, y) (e.g. the arg `center` of cv2.circle)?

> 为什么 OpenCV 有时用 (y,x) 表示坐标点(比如 cv2.findContours 的返回值),有时又用 (x,y) 表示(比如 cv2.circle 函数的 `center` 参数)?

#OpenCV#图像处理#学习笔记
深度学习模型文件格式对比:pth、safetensor 与 onnx
2024-11-29

> 本页面介绍了三种机器学习模型文件格式:.pth、.safetensor 和 .onnx。主要内容包括每种格式的定义、保存的内容、用途以及它们之间的区别和转换方法。

PyTorch 中的`.pth`文件通常用于保存模型的权重(parameters)和训练过程中的优化器状态(optimizer state)。具体来说,一个`.pth`文件可能包含以下内容:

1. **模型状态字典(Model state dictionary)**:

#PyTorch#ONNX#深度学习#模型部署#学习笔记
© 2023 Ryo Jerry Yu. All rights reserved.