
cuda&深度学习环境
文章平均质量分 50
cuda&深度学习环境
子燕若水
子燕若水
展开
-
How do I install OpenCV with gpu support
【代码】How do I install OpenCV with gpu support。原创 2025-04-27 22:06:53 · 844 阅读 · 0 评论 -
解释PyTorch中的广播机制
广播(Broadcasting)是PyTorch和其他数值计算库中的一个重要机制,它允许不同形状的张量进行算术运算。原创 2025-04-26 12:39:35 · 446 阅读 · 0 评论 -
Memoripy 是一个 Python 库,用于管理和检索上下文相关的记忆交互,使用短期和长期存储
Memoripy 是一个 Python 库,用于管理和检索上下文相关的记忆交互,使用短期和长期存储。其功能包括上下文记忆检索、记忆衰减和强化、层次聚类和基于图的关联。简而言之,Memoripy 提供了一个框架,利用 AI 模型和图数据库技术来实现具有上下文感知的记忆管理,适用于需要根据历史交互进行响应的应用场景。MemoryStore:在短期和长期记忆中存储和组织交互,支持基于相关性的聚类和检索。旧的记忆会随着时间的推移而衰减,而经常访问的记忆会得到强化。基于嵌入、概念和过去的交互检索记忆。原创 2024-11-21 14:59:28 · 351 阅读 · 0 评论 -
AutoDL 解决Huggingface下载模型的问题
最近几月huggingface彻底无法访问,之前下载模型都是开梯子自己下载到本地再上传到服务器,这样实在比较麻烦,因此查资料之后得到解决方案:使用huggingface镜像站。原文链接:https://blog.youkuaiyun.com/weixin_43303286/article/details/134342476。后面的–local-dir就是指定下载路径(默认的在.~/cache/huggingface/hub 中)如何快速下载huggingface模型——全方法总结 - padeoe的文章 - 知乎。原创 2024-07-29 23:46:52 · 2277 阅读 · 0 评论 -
tensorflow 安装cudnn TensorRT【Ubuntu18】
【代码】tensorflow 安装cudnn【Ubuntu18】原创 2024-07-03 23:33:11 · 284 阅读 · 0 评论 -
pytorch的backward()的底层实现逻辑
构建计算图:当我们调用backward()方法时,PyTorch会自动构建从叶子节点a到损失值d.sum()的计算图,这是一个有向无环图,表示了各个张量之间的运算关系。由于我们只对叶子节点a的梯度感兴趣,所以只有a的grad属性会被计算出来,而中间变量c和d的grad属性会被忽略。a的grad属性的值是损失值d.sum()对a的偏导数,表示了a的变化对损失值的影响。因此,当我们调用backward()方法时,M.parameters()中的参数的grad属性不会被改变,它们的值保持不变。原创 2023-11-18 18:04:24 · 1547 阅读 · 0 评论 -
报错了:torch.load{ModuleNotFoundError}No module named ‘lib‘
如果您的模型定义在文件夹A中的model.py中,而您在文件夹B中的train.py中torch.load加载模型,那么pickle就无法找到model.py,除非您将文件夹A添加到sys.path中。这样,pickle就可以在Python的搜索路径中找到model.py,从而正确地加载模型对象。原创 2023-11-17 16:50:07 · 769 阅读 · 0 评论 -
DistributedDataParallel 模型的“module.”前缀
¹ 当我们保存一个包含张量的对象时,PyTorch会记录每个张量的存储位置,并在加载时尝试将它们恢复到原来的设备。- 一个函数,它接收一个存储对象和一个存储位置作为输入,返回一个新的存储对象和一个新的存储位置作为输出。¹ 这个函数可以根据我们的需要自定义存储位置的映射规则,例如将所有的'cuda'位置映射到'cpu'位置,或者将某些特定的'cuda'位置映射到其他的'cuda'位置。但是,有时候我们可能需要在不同的设备上加载一个对象,例如在一个没有GPU的机器上加载一个在GPU上保存的模型。原创 2023-11-14 13:24:45 · 597 阅读 · 0 评论 -
torch.nn.utils.clip_grad_norm_
这个函数的作用是将所有参数的梯度拼接成一个向量,然后计算其范数,如果范数大于clip_grad_norm,就将所有参数的梯度乘以一个缩放因子,使得范数等于clip_grad_norm,这样就完成了梯度的裁剪。这个函数会修改参数的梯度属性,不会返回任何值。torch.nn.utils.clip_grad_norm_是一个PyTorch提供的函数,用于对一组参数的梯度进行范数裁剪,即限制梯度的大小,防止梯度爆炸或消失的问题。原创 2023-11-09 15:37:18 · 251 阅读 · 0 评论 -
huggingface 模型推理几个重要到类
SegformerForSemanticSegmentation是一个具体的模型类,它由一个分层的Transformer编码器和一个轻量级的全MLP解码器组成,可以实现高效的图像分割³。例如,如果给定的模型名称是"bert-base-chinese",那么这个方法会返回一个BertModel的实例,它是一个用于文本表示的模型。这个方法可以处理多种不同类型的模型,但是它不能处理特定任务的模型,例如图像分割或序列标注。您可以直接用pipeline函数对图像或图像列表进行分割,而不需要关心模型的细节。原创 2023-10-21 20:42:05 · 419 阅读 · 0 评论 -
RuntimeError: Caught RuntimeError in replica 0 on device 0.
这个错误表示在使用分布式训练时,复制0在设备0上遇到了RuntimeError。原创 2023-08-26 21:34:54 · 3753 阅读 · 0 评论 -
xorg.conf配置错误导致无法进入桌面啦
如果您的xorg.conf文件配置出错,可能会导致Xorg显示服务器无法正常启动或工作,从而无法进入桌面环境³。您执行了 `sudo mv xorg.conf xorg.conf.bak` 命令后,就相当于把原来的xorg.conf文件重命名为xorg.conf.bak,并且不再使用它。这样,Xorg显示服务器就会自动检测和回退到默认值,而不会受到错误配置文件的影响²。xorg.conf文件是用来配置Xorg显示服务器的,它包含了当前系统的硬件资源列表,例如图形设备,监视器,输入设备等¹。原创 2023-08-26 20:31:36 · 1924 阅读 · 1 评论 -
GPU 错误中断处理程序(irq/82-nvidia)
中断请求(IRQ)是一种用于通知CPU有一个事件需要处理的机制,它可以由硬件设备或软件程序发出。IRQ 82 是 NVIDIA 显卡设备的中断处理程序,这些错误中断信号表示GPU在执行相关的任务时遇到了一些问题,需要CPU的干预或恢复。原创 2023-08-26 18:17:36 · 1569 阅读 · 0 评论 -
深度学习调参技巧
欠拟合的现象是指模型在训练集和测试集上都表现不好,即模型的拟合能力不足,无法捕捉数据的真实规律。没爆卡速度可以—> 实验log完好可视化loss稳步下降—>回头看实验结果。写完代码—> 小数据上降loss无nan—>原创 2023-08-25 15:52:40 · 697 阅读 · 0 评论 -
DataLoader PyTorch 主要参数的含义
DataLoader类是一个用于从数据集(dataset)中加载数据,并以迭代器(iterator)的形式返回数据样本(data samples)的工具¹²。pin_memory将数据样本保存在锁页内存,这里的内存指的是cpu的内存还是gpu的内存?原创 2023-08-22 19:33:13 · 3306 阅读 · 0 评论 -
pytorch中的register_buffer
示例中,使用self.register_buffer(‘running_mean’, torch.zeros(num_features))向模块中添加了一个名为running_mean的缓冲区,它的初始值是一个全零的张量,维度为num_features。register_buffer(self, name, tensor)是一个PyTorch中的方法,它的作用是向模块(module)中添加一个持久的缓冲区(buffer)参数tensor是一个张量,表示缓冲区的初始值。通过这个名称,可以从模块中获取缓冲区。原创 2023-08-22 17:34:26 · 1382 阅读 · 0 评论 -
pytorch里面的nn.AdaptiveAvgPool2d
举个例子,假设输入信号的大小为(1, 3, 4, 4),即有1个批次(batch),3个输入平面(input planes),每个平面的高度和宽度都为4。如果我们使用nn.AdaptiveAvgPool2d((2, 2))对其进行自适应平均池化,那么输出信号的大小为(1, 3, 2, 2),即有1个批次,3个输出平面(output planes),每个平面的高度和宽度都为2。每个输出平面上的元素都是对应输入平面上的2 x 2窗口内的元素求平均值得到的。原创 2023-08-22 17:09:00 · 1228 阅读 · 0 评论 -
CelebAMask-HQ face_parsing 类别标签
【代码】CelebAMask-HQ face_parsing 类别标签。原创 2023-05-22 11:59:15 · 900 阅读 · 0 评论 -
nn.Parameter和tensor 的异同是:
Parameter 是 tensor 的子类,它有一个额外的属性 requires_grad,默认为 True,表示需要求梯度。- tensor 默认 requires_grad 为 False,表示不需要求梯度。- tensor 可以直接用于数据的存储和计算,而不一定是模型的参数。原创 2023-05-21 13:54:28 · 238 阅读 · 0 评论 -
在conda环境下安装cudnn和cudatoolkit
请注意,您需要确保您的计算机具有支持 CUDA 的 NVIDIA GPU,并且已安装了相应的驱动程序。此外,您需要使用与 CUDA 版本兼容的 cuDNN 版本。cuDNN 通常不是通过 conda 安装的。官方推荐的安装方法是从 NVIDIA 官网下载 cuDNN 的安装包,并按照说明进行安装。尽管如此,您仍然可以在 conda-forge 频道中找到 cuDNN 的第三方包。请注意,这些第三方包可能不受 NVIDIA 官方支持,因此在使用它们时可能会遇到一些问题。原创 2023-05-08 19:00:18 · 15281 阅读 · 0 评论 -
tensorflow报缺少libcudnn.so.7文件
从下载地址:https://developer.nvidia.com/rdp/cudnn-archive#a-collapse804-111下载对应的 cnDNN8。注意/usr/local/cuda/lib64/ 换成你自己的LD_LIBRARY_PATH中的目录。原创 2023-02-24 18:59:31 · 380 阅读 · 0 评论 -
[diffusers系列]Scheduler的配置文件
【代码】[diffusers系列]Scheduler的配置文件。原创 2023-02-07 19:38:46 · 1405 阅读 · 0 评论 -
huggingface大模型载入
【代码】huggingface大模型载入。原创 2023-02-07 11:25:27 · 3988 阅读 · 0 评论 -
梯度累积accumulates-gradient
【代码】梯度累积accumulates-gradient。原创 2023-02-06 19:46:42 · 479 阅读 · 0 评论 -
Pytorch --gradient_checkpointing 使用示例
相比于原本需要存储所有中间变量以供反向传播使用,使用了checkpoint的部分不存储中间变量而是在反向传播过程中重新计算这些中间变量。查了一下,PyTorch提供了一种更优雅的解决方式gradient checkpoint(查了一下应该是0.4.0之后引入的新功能),以计算时间换内存的方式,显著减小模型训练对GPU的占用。减小输入的大小,e.g.332 × \times× 332 × \times× 3 → \rightarrow→ 224 × \times× 224 × \times× 3。转载 2023-01-18 15:24:46 · 1354 阅读 · 0 评论 -
colab 如何释放gpu显存?
当您在笔记本环境中遇到错误时,ipython shell 会存储异常的回溯,因此您可以使用 访问错误状态。然而,使用 Cuda 变量时事情会变得很奇怪,有时不重启内核就无法清除 GPU 内存。到目前为止,答案对于 Cuda 方面是正确的,但在 ipython 方面也存在问题。问题是这需要将导致错误的所有变量保存在内存中,并且它们不会被诸如。通常,引发新异常会释放旧异常的状态。. 基本上你所有的变量都会卡住并且内存泄漏。这是您可以避免重新启动笔记本电脑的方法。清空 PyTorch 缓存。原创 2023-01-17 12:09:11 · 2600 阅读 · 0 评论 -
webui 参数解释
【代码】webui 参数解释。原创 2023-01-13 18:46:25 · 812 阅读 · 0 评论 -
Huggingface的from pretrained的下载代理服务器方法设置
笔者需要用到下载预训练模型,但是此时TUNA和BSFU的镜像已经停止了,希望有可用的途径下载到位于网上的预训练模型。根据文档,该参数proxies (Dict, optional)在StackOverflow有类似解决方法。此时查找了huggingface的文档。即可代理http(s)流量。原创 2023-01-12 21:46:05 · 11843 阅读 · 0 评论 -
fairseq的ddp-backend机制——原理和实现
它只影响速度,不影响最终模型。原创 2022-12-09 11:49:11 · 482 阅读 · 0 评论 -
RNN的反向传播算法(Backpropagation)
英文详细解析:https://neptune.ai/blog/understanding-gradient-clipping-and-how-it-can-fix-exploding-gradients-problem原创 2022-12-08 11:55:37 · 412 阅读 · 0 评论 -
NCCL ‘s all_reduce
All-Reduce operation: each rank receives the reduction of input values across ranks. The all_reduce method in the NCCL (NVIDIA Collective Communications Library) is a collective communication operation that performs an all-reduce on the provided tensor. In原创 2022-12-07 19:22:34 · 791 阅读 · 0 评论 -
图解pytorch里面的torch.gather()
上图显示了 torch gather() 函数在 dim=1 的二维张量上的工作。这里索引张量的行对应于输入张量的行(用灰色阴影突出显示)。现在对于索引张量中的每个索引值,从该行和输入张量的索引中选取相应的值。torch.gather(input=tensor2, dim=1, index = torch.tensor([[2, 1, 0], &nbs原创 2022-12-07 16:53:00 · 605 阅读 · 0 评论 -
图解pytorch中的LSTM
无原创 2022-11-03 22:26:54 · 224 阅读 · 0 评论 -
lua torch 官方学习教程
无原创 2022-10-28 19:05:49 · 451 阅读 · 0 评论 -
cuda10+ 安装torch 和 lua环境
【代码】cuda10+ 安装torch 和 lua环境。原创 2022-10-25 13:52:43 · 260 阅读 · 0 评论 -
tensorflow测试GPU可用
因为自己在实现yolo5的过程中其中所需要的的环境是cuda10.1但是在之前安装的是10.0,所以只有自己折腾一下。1.具体的安装步骤就不在这做详细说明,具体可以去看https://blog.youkuaiyun.com/weixin_43218120/article/details/107708082。原文链接:https://blog.youkuaiyun.com/weixin_43218120/article/details/108447605。在安装cudatoolkit之后再进行安装tensorflow就成功。转载 2022-09-24 11:43:52 · 5307 阅读 · 0 评论 -
moses数据预处理
中文的预处理好做很多,除了分词,可做的就不多了,相比之下,英文的预处理就变得繁琐了很多,比如在bpe的子词词典中,我们可以看到American’s 和american’s同时存在于词典,并且英文的标点符号和单词之间是没空格分隔的,所以如果直接对英文按照空格进行分词,cat和cat.就可能占据词典中两个词的位置,这些都是不合理的,会浪费词典的位置。所以对英文的处理是及其有必要的。但是如果我们要用词级别的翻译,那词典太大了,在机器翻译中词典受限的情况下,很多词就会变为未登录词。–将句子长度控制在1-80。转载 2022-09-23 23:42:30 · 411 阅读 · 0 评论 -
tensorflow 保存恢复模型
【代码】tensorflow 保存恢复模型。转载 2022-09-21 22:29:41 · 163 阅读 · 0 评论 -
手工搭建tensorflow神经网络
无转载 2022-09-21 19:06:37 · 141 阅读 · 0 评论 -
tensorflow 里面的占位符 placeholder
占位符是在执行时才输入值的节点。如果我们的网络输入依赖于一些外部数据,并且我们不希望我们的图在定义开发时依赖于任何实际值,那么占位符就是我们需要的数据类型。事实上,我们可以在没有任何数据的情况下构建图。因此,占位符不需要任何初始值;只有一个数据类型(例如 float32)和一个张量形状,因此即使它还没有任何存储值,图形仍然知道要计算什么。原创 2022-09-21 18:37:45 · 654 阅读 · 0 评论