自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 torch.cuda.empty_cache()使用场景

合理使用此方法可将GPU利用率提升15-30%(特别是在大模型训练中),但需要结合具体场景权衡性能与显存占用的平衡。的正确使用需要结合具体场景。• 过于频繁调用(如每个batch)会降低性能(约5-10%速度损失)• 使用梯度检查点 (Gradient Checkpointing)• 使用动态计算图或频繁创建/释放临时张量。• 测试最大可用batch size时。• 同一个脚本交替执行训练和评估。• 不同模型共享GPU资源。• 使用GPU加速数据增强。• 模型太大需要分段加载。• 动态生成训练数据。

2025-04-30 09:52:29 963

原创 PyTorch中四种并行策略的详细介绍

• GIL限制:受Python全局解释器锁影响,多卡利用率通常低于60%• 单进程多线程:主GPU(device 0)负责分发数据和聚合结果。• ZeRO-3优化:将参数/梯度/优化器状态分片到所有GPU。• 显存受限时(可用单卡24GB显存训练50B+参数模型)• 多进程模式:每个GPU对应独立进程,无GIL限制。• 主GPU瓶颈:梯度计算和参数更新集中在主卡。• 显存充足的轻量级模型(如ResNet50)• 训练超大模型(如LLaMA-2 70B)• 大规模生产训练(支持多机多卡)

2025-04-30 09:44:01 635

原创 什么是Sphinx注释?

Sphinx注释使用三重引号。一、什么是Sphinx注释?包裹,具有特定语法规则。• 自动参数类型链接。

2025-04-24 15:57:28 173

原创 grad_fn=<AddBackward0>中0是代表什么意义

重要的是函数的名称,它告诉你这个张量是通过什么操作创建的。属性构成了一个计算图,每个节点都是一个梯度函数,用于计算当前张量相对于计算图中其他张量的梯度。这些函数可以是加法、乘法、卷积等基本操作,也可以是用户自定义的操作或模型的参数更新操作。这个数字并不表示函数的顺序或任何特定的属性,它仅仅是一个内部的标识符。属性构成了一个计算图,每个节点都是一个梯度函数,用于计算当前张量相对于计算图中其他张量的梯度。这个数字并不是用来表示函数的顺序或任何特定的属性,它仅仅是一个内部的标识符,用于区分不同的。

2025-04-17 09:29:18 303

原创 为什么主要对叶子张量求梯度?

在模型训练过程中,主要对叶子张量求梯度是因为这些是模型参数,是我们优化的目标。非叶子张量的梯度通常不需要,但在特定情况下可以通过方法来获取。

2025-04-17 09:18:05 186

原创 pytorch自动求梯度autograd

但是,通常情况下,我们不需要对中间变量求梯度,我们只需要对最终输出的梯度感兴趣,然后通过反向传播计算出所有需要的梯度。时,你实际上是告诉 PyTorch 需要跟踪所有对这个张量的操作以便未来可以计算梯度。但是请注意,通常情况下,我们只需要计算最终输出(在这个例子中是。在 PyTorch 中,结合以下代码例子,当你对一个张量。,因此 PyTorch 会跟踪它们所有的操作,你可以计算。通过一个简单的加法操作得到的。的操作历史,因此无法计算。的梯度,并逆向传播回。的梯度,你需要在创建。在这个修改后的代码中,

2025-04-16 23:32:11 386

原创 requires_grad的三种写法以及区分

第一种写法在代码的可读性方面最好,因为它在创建张量时就明确了梯度追踪的需求。第二种写法是最推荐的写法,因为它通过就地操作来设置,避免了创建额外的张量副本,从而更高效。第三种写法虽然功能上等价,但由于它不是就地操作,可能会涉及到额外的内存开销,因此在性能敏感的场景下不推荐使用。在实际开发中,推荐使用第二种写法,因为它在表达意图和性能上都有很好的表现。

2025-04-16 21:29:24 457

原创 理解什么是叶子张量和非叶子张量?

叶子张量是计算图中的起始点,它们通常是用户直接创建的张量,并且没有其他张量作为它们的输入。换句话说,叶子张量是那些不需要通过任何计算就能获得的张量。在神经网络中,叶子张量通常对应于模型的输入数据和模型的参数(权重和偏置)。非叶子张量是计算图中通过某些操作从其他张量派生出来的张量。它们是计算图的中间节点,其值依赖于一个或多个其他张量的值。当你对叶子张量或其他非叶子张量执行操作(如加法、乘法等)时,就会创建非叶子张量。在反向传播时,PyTorch 会自动计算叶子张量的梯度,并将这些梯度存储在叶子张量的。

2025-04-16 17:52:42 482

原创 pytorch计算图的可视化

下面是一个使用torchviz可视化 PyTorch 计算图的示例代码。这个例子中,将创建一个简单的神经网络层,并通过torchviz将其计算图可视化。前提条件::首先,你需要在你的系统上安装 Graphviz 包,而不仅仅是 Python 包。具体的命令取决于你的操作系统。对于 Ubuntu,可以使用命令进行安装。对于 MacOS,可以使用命令进行安装。对于 Windows 用户,你可以尝试从下载并安装 Windows 包,然后安装 Python Graphviz 包。

2025-04-16 17:32:05 309

原创 在Windows系统上进行STM32开发所需的条件和工具

(可选,根据开发板型号选择):包含STM32L4系列的库文件和示例代码。:官方提供的集成开发环境,支持代码编写、编译、调试等功能。:用于图形化配置STM32芯片的外设和生成初始化代码。:用于烧录程序到STM32芯片。

2025-04-14 16:11:00 795

原创 faiss将索引写入本地路径报错

【代码】faiss将索引写入本地路径报错。

2024-03-15 16:21:02 1478

原创 远程连接jupyter-notebook及配置

一站式配置Jupyter-notebook,不走弯路!

2024-01-10 16:53:32 1270

原创 解决pip下载慢的问题:将python pip改成从国内镜像下载

使用conda创建虚拟环境。conda和pip默认使用国外站点来下载软件,我们可以配置国内镜像来加速下载(国外用户无须此操作)。# 配置清华PyPI镜像(如果无法法运行,将pip版本升级到>=10.0.pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple...

2021-10-11 14:38:04 153

原创 linux下安装anaconda

准备:下载Linux版本的anaconda安装文件(.sh)步骤:1、打开终端输入你的安装包所在路径:cd /home/allan/Downloads/ 2、然后在终端上输入这条命令进行安装,bash ./后面是安装包的名字:bash ./Anaconda3-2021.05-Linux-x86_64.sh3、在终端上启动anaconda: anaconda-navigator...

2021-08-25 14:41:42 124

原创 验证集、测试集、训练集的区分

验证集用于评估超参数。测试集用于评估模型的泛化能力。训练集用于训练模型。ps:超参数不参与模型的训练,是人工根据经验设置的参数。超参数的例子:隐藏层数、学习率等。

2021-08-25 10:46:30 151

原创 windows10+anaconda 搭建bert环境

准备条件:1、默认安装了anaconda3(建议) 2、python3.7一、安装tensorflow-gpu conda search tensorflow-gpu #查看可以安装的版本conda install tensorflow-gpu=2.5.0 #选择安装的版本 “=”号后面自己选择可安装的版本之一import tensorflow as tftf.__version__ #测试是否安装成功#若成功,将会输出 ...

2021-08-24 17:30:42 2226 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除