PyTorch
文章平均质量分 65
PyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序。
它是一个基于Python的可续计算包,提供两个高级功能:1、具有强大的GPU加速的张量计算(如NumPy)。2、包含自动求导系统的深度神经网络。
大风车滴呀滴溜溜地转
为天地立心,为生民立命,为往圣继绝学,为万世开太平。
展开
-
模型训练和推理过程中的显存占用问题
我有两个GPT2的模型,只有1亿参数,并以16位浮点数存储,也就是250MB左右,有35亿参数,同样以16位浮点数存储,也就是7GB左右。我以为推理的时候加载模型到显存中后占用的空间应该也是差不多的大小,但是1亿参数的模型加载到TorchServe中后却占用了957MB,不知道为什么多出来700多MB。原创 2023-03-19 14:09:07 · 3733 阅读 · 0 评论 -
OSError: [WinError 126] 找不到指定的模块。 Error loading “......caffe2_nvrtc.dll“ or one of its dependencies.
昨天晚上跑的好好的训练脚本,今天早晨突然就开始报错了。主要是在Jupyter Notebook上跑的时候报错,但是直接打开Python Console跑是可以的。果然CUDA Version变成了12.0,我记得之前是11.7,所以降级就可以了。(我也想升级,但是当前时间点PyTorch暂时还不支持12.0)然后突然想起来,昨天晚上更新了CUDA驱动,主要是NVIDIA GeForce Experience推荐我更新的,没在意就直接点了。更新完之后重启电脑就可以了,神奇。原创 2023-02-23 08:46:23 · 1977 阅读 · 0 评论 -
TorchServe部署HuggingFace文本生成模型
模型训练完毕后,为了能够让前后端调用,都需要部署上线,提供一个可调用的Restful接口。最近正好在做一个中文文本生成的模型,效果还不错,打算上线,本来研究了半天的TensorFlow Serving,但是最后实在没搞定,太麻烦了,今天换了TorchServe,一天就搞定了,PyTorch yyds!!!本次演示用的模型为IDEA开源的 闻仲-GPT2-100M,这个是一个用于文本生成的模型,能够根据提供的句子进行续写。...原创 2022-07-11 15:24:38 · 1598 阅读 · 3 评论 -
PyTorch慢到无法安装该怎么办?换清华源让你飞速安装!
PyTorch安装的时候,无论pip还是conda安装都太慢了,都是安装官方文档去做的,就是超时装不上,无法开展下一步,卡脖子的感觉太不好受。这些小伙伴按照pytorch官档提示,选择好后:完整复制上面命令到cmd中,接下来界面提示,conda需要安装的包,选择y,继续安装,但是接下来发现进度条几乎一动不动。反复尝试,就是这样,有些无奈,还感叹怎么深度学习的路一开始就TMD的这么难!其实,最有效方法是添加镜像源,常见的清华源或中科大源。安装源命令:依次安装上面所有的源,并设置搜索时显示通道地址,执行下原创 2020-09-23 15:22:46 · 4972 阅读 · 2 评论 -
【PyTorch】tensor和Tensor有什么区别?
今天突然间想起来好久之前遇到的一个问题,虽然忘了具体的问题场景是啥了,但是最终的解决方案就是把用th.tensor创建张量换成了用th.Tensor创建张量,今天再来探究一下tensor和Tensor有什么区别?。先看一下torch.tensor和torch.Tensor的官方文档。torch.Tensor首先torch.Tensor是一个类,是包含单一数据类型元素的多维矩阵。更明确地说,它是默认张量类型torch.FloatTensor()的别名。也就是说,torch.Tensor() 的作用.原创 2022-04-24 21:50:54 · 1208 阅读 · 0 评论 -
torch.nn.functional.pad(input, pad, mode=‘constant‘, value=0)
torch.nn.functional.pad(input, pad, mode='constant', value=0)填充Tensor。填充大小:填充input的某些维度的填充大小从最后一个维度开始向前描述。⌊len(pad)2⌋\left \lfloor \frac{len(pad)}{2} \right \rfloor ⌊2len(pad)⌋input的维度将被填充。例如,只填充输入张量的最后一个维度,那么pad的形式为:(padding_left, padding_right);要填原创 2021-03-03 22:36:42 · 678 阅读 · 1 评论 -
torch.gather(input, dim, index, *, sparse_grad=False, out=None) → Tensor
torch.gather(input, dim, index, *, sparse_grad=False, out=None) → Tensor沿dim指定的轴聚集值。对于三维张量,输出由以下公式指定:out[i][j][k] = input[index[i][j][k]][j][k] # if dim == 0out[i][j][k] = input[i][index[i][j][k]][k] # if dim == 1out[i][j][k] = input[i][j][index[i]原创 2021-03-04 15:31:33 · 485 阅读 · 1 评论 -
PyTorch报错No module named ‘transforms‘
from torchvision import transforms原创 2020-12-07 22:56:18 · 5841 阅读 · 1 评论 -
PyTorch - torchvision - datasets
所有的数据集都是torch.utils.data.Dataset的子类,即它们实现了__getitem__和__len__方法。因此,它们都可以传递给torch.utils.data.DataLoader通过torch.multiprocessing使用多线程并行加载多个样本。imagenet_data = torchvision.datasets.ImageNet('path/to/imagenet_root/')data_loader = torch.utils.data.DataLoader(i原创 2020-10-24 18:14:46 · 828 阅读 · 0 评论