PyTorch参数自动命名规则 PyTorch参数自动命名规则 当我们使用 12for name, params in model.named_parameters(): print(f"Parameter Name: {name}, Parameter Shape: {params.shape}") 时可以看到模型的参数以及参数的名字,PyTorch内部实际上有 2025-05-12 AI Infra > PyTorch #PyTorch #深度学习
详解大型项目中的AMP训练 1 什么是AMP Automatic Mixed Precision是百度联合英伟达一起推出的一个训练trick,通过在训练过程中部分使用FP16的半精度数据来极大节省内存,同时能加快训练速度。最开始要使用Apex框架来开启AMP训练,但现在PyTorch已经自带AMP相关功能。 2 AMP训练的挑战 AMP训练一般会遇到几个问题,第一是有可能遇到数值下溢和数值上溢,由于FP16能表示的范围要小很 2025-05-12 AI Infra #PyTorch #深度学习
Optimizer Factory -- 写一个能够按层衰减的优化器工厂 1 Introduction 按层调节学习率是很重要的,但原始的torch.optim.optimizer类不含按层调整的功能,所以我们需要自定义一个流程来实现。为了方便的创建带这个功能的optimizer,最好的做法是使用工厂设计模式来创建optimizer。当我们需要不同的优化器的时候,optimizer factory总能够帮我们“加工”torch的optimizer来增加按层调整功能。 2 2025-05-12 AI Infra #PyTorch #深度学习
RLHF -- From Zero to PPO 代码篇 RLHF: From Zero to PPO 代码篇 1 简单的强化学习示例 ongoing 2 从OpenRLHF中看PPO实现 ongoing 2025-05-12 LLM > RLHF #深度学习 #智能系统 #AIGC
RLHF -- From Zero to PPO 理论篇 RLHF: From Zero to PPO 理论篇 1 强化学习101 1.1 建立基本框架 假设我们有一个个体(agent),其处在某个环境中,个体在这个环境里一定会存在一个状态(state)(空间中的位置,时间中的某一刻),个体会采取某个行动(action)(例如空间中移动)导致状态更新。个体行动的方式被policy建模。 policy的作用是使用概率建模个体在某个状态下采取某个行动的概率。 2025-05-12 LLM > RLHF #深度学习 #智能系统 #AIGC
最初的sin/cos编码 位置编码–最初的sin/cos编码 1 1D 序列的sin/cos编码 1.1 介绍 众所周知,Transformers模型本身没有关于位置的inductive bias,所以需要额外注入位置信息。在最初的《Attention is All You Need》[1]文章中,作者提出了首个流传至今的位置编码方式: sin/cos位置编码。 假设模型的输入embedding为x∈RB×T×dx\in 2025-05-12 LLM > Position Encoding #深度学习 #智能系统 #AIGC
Why model.enable_input_require_grads()? What happens when using LoRA? It starts with the error RuntimeError: element 0 of tensors does not require grad and does not have a grad_fn when you have part of the parameters 2025-05-12 LLM > Troubleshooting #Deep Learning #AI