PyTorch
该专栏将讲解一些PyTorch的常用方法以及一些内部算子是如何使用,并且还存在一些开发项目时遇到的问题解决方案,适合零基础的同学。
海洋 之心
阿里云社区专家博主,图神经网络-大数据-推荐系统研究者,专注于计算机领域前沿技术的分享等人工智能算法研究工作
展开
-
docker将镜像文件保存到本地
需要修改两个参数,第一个为需要保存镜像的ID,第二个参数是该镜像保存到本地的文件名。原创 2022-11-16 15:52:36 · 1205 阅读 · 2 评论 -
使用Docker部署Python深度学习项目
这里有很多种方式可以生成,本文使用的是popreqs这个工具,这个工具能够只将当前项目所需要的库导出。里面包含三个文件,分别是Python项目文件、requirements.txt、Dockerfile。这个按照自己的环境以及需求进行修改。前往项目路径运行上述命令。原创 2022-11-16 15:46:08 · 911 阅读 · 0 评论 -
解决docker FileNotFoundError: [Errno 2] No such file or directory: ‘./data/train
使用docker运行python项目时出现路径不存在。原创 2022-11-16 15:34:26 · 5832 阅读 · 0 评论 -
解决docker 2022-11-16 14:54:26 python: can‘t open file ‘/src/main.py‘: [Errno 2]
使用docker部署Python项目,在运行镜像时出现下面问题。原创 2022-11-16 15:31:07 · 981 阅读 · 0 评论 -
解决failed to solve with frontend dockerfile.v0: failed to create LLB definition: unexpected status co
使用docker生成镜像出现问题。原创 2022-11-15 20:05:58 · 7487 阅读 · 4 评论 -
解决ModuleNotFoundError: No module named ‘distutils.util‘
使用PyCharm配置Docker时更新解释器出现问题。原创 2022-11-15 19:34:33 · 5184 阅读 · 0 评论 -
解决Unable to locate package python3-pip3
docker安装pip3。原创 2022-11-15 19:31:21 · 585 阅读 · 0 评论 -
解决AttributeError: ‘Namespace‘ object has no attribute ‘arch‘
在运行ACmix-ResNet模型时出现问题。原创 2022-11-15 10:53:02 · 10248 阅读 · 5 评论 -
pytorch中keepdim参数归并操作使用方法
从上面例子可以看出,如果将其设置为True,那么将归并的维度依旧会保留,与原来的tensor数据维度一致,如果设置为False,那么改维度经过计算归并则会消失。我们使用一些torch模块中的函数时发现,有时会存在参数keepdim,该参数主要是在归并操作时使用的,为的就是保持原来维度不变。原创 2022-11-14 21:57:12 · 526 阅读 · 0 评论 -
pytorch中torch.clamp()使用方法
我们可以看到小于2的位置的元素全部被替换为最小值2,大于10的位置全部被替换为最大值10,中间位置的数值保持不变。该函数是用来做截断处理的,通常被使用在需要比较大小的地方。原创 2022-11-14 21:50:23 · 1551 阅读 · 1 评论 -
Linux下安装gmp6.2.1的详细操作(深度学习)
方式一:编译gmpGMP官方地址https://gmplib.org/官网下载gmp安装包解压下载好的安装包tar -zxvf gmp-6.2.1.tar.bz2进入解压后的文件夹cd gmp-6.2.1指定安装路径进行安装# /usr/local换成自己的安装路径./configure --prefix=/usr/local编译文件1.make2.make check3.sudo make install配置环境变量vim ~/.bashrc原创 2021-08-10 15:24:23 · 14440 阅读 · 7 评论 -
解决ImportError libgmpxx.so.4 cannot open shared object file No such file or directory
ImportError: libgmpxx.so.4: cannot open shared object file: No such file or directory使用Linux安装MindSpore-gpu版本进行深度学习时,当我们导入mindspore时可能出现上述问题,原因是缺少gmp库的依赖解决办法:安装gmp库Linux下安装gmp6.2.1的详细操作(深度学习)_阿光-CSDN博客...原创 2021-08-10 15:31:44 · 1686 阅读 · 2 评论 -
Linux安装cuda10.1,cudnn7.6.4 (深度学习) MindSporeGPU计算框架
CUDA(ComputeUnified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。当我们在进行深度学习任务时,我们有时需要使用GPU版本的框架,比如tensorflow-gpu或者mindspore-gpu版本就需要安装CUDA和CUDNN进行GPU加速支持1.下载cuda10.1CUDA Toolkit 10.1官方下载地址[外链图片转存失败,源站可能有防盗链机制,建议将原创 2021-08-10 16:26:30 · 2193 阅读 · 0 评论 -
GetsupportedKernelAttrList Not registered CPU kernel:op[AdaptiveAvgPool2D]!
mindspore\ccsrc\backend\kernel_compiler\cpu\cpu_kernel_factory.cc:157 GetsupportedKernelAttrList Not registered CPU kernel:op[AdaptiveAvgPool2D]!上述发生的错误的原因是当前的CPU上还不支持AdaptiveAvgPool2D算子。如果仍需要该操作使用普通的AvgPool池化层,计算相应的kernel和padding就可以了。...原创 2021-08-11 19:02:27 · 483 阅读 · 0 评论 -
PyTorch函数中文文档详细解释及示例(持续更新)
1、torch.rand()torch.rand(*size,dtype=None,layout=torch.dtrided,device=None,requires_grad=False)返回符合0-1均匀分布的随机张量size:定义指定张量的形状,可以是一个标量或者是元组、列表等dtype:返回张量的所需数据类型。默认值:如果为None,则使用全局默认值layout:返回张量的所需布局。默认值:如果为None,则默认为输入的布局device:返回张量的所需设备requires_gra原创 2021-05-25 10:28:30 · 1675 阅读 · 1 评论 -
PyTorch reshape和view的区别
a1=torch.arange(12)b1=a1.reshape(2,6)c1=a1.view(3,4)print(a1.storage().data_ptr())print(b1.storage().data_ptr())print(c1.storage().data_ptr())print(id(a1))print(id(b1))print(id(c1))tensor中会有两个区,分别是数据存储区和头部区tensor如果定义一个a后,随后将a的某一行赋值给b那么a和b就会共享数原创 2021-05-25 10:29:31 · 588 阅读 · 0 评论 -
Pytorch出现‘Tensor‘ object is not callable解决办法
出现该现象原因可能是因为调取张量的属性,而写成了函数形式,把括号去掉原创 2021-02-15 14:07:23 · 9776 阅读 · 6 评论 -
梯度下降算法原理 神经网络(Gradient Descent)
在求解神经网络算法的模型参数,梯度下降(Gradient Descent)是最常采用的方法。下面是我个人学习时对梯度下降的理解,如有不对的地方欢迎指出。1、✌ 梯度定义 微积分我们学过,对多元函数的各个变量求偏导数,把求得的各个参数的偏导数以向量的形式写出来,就是梯度。比如函数f(x,y),原创 2021-02-17 17:26:47 · 1313 阅读 · 5 评论 -
matplotlib python 画图中文显示乱码解决办法 Jupyter
在画图前,加入以下代码:import matplotlib#指定默认字体matplotlib.rcParams['font.sans-serif'] = ['SimHei']#解决负号'-'显示为方块的问题matplotlib.rcParams['axes.unicode_minus'] = False原创 2021-02-11 07:46:17 · 331 阅读 · 1 评论 -
【目录】【ResNet残差网络】—— Pytorch实现
ResNet残差网络Pytorch实现大学生一枚,最近在学习神经网络,写这篇文章只是记录自己的学习历程,本文参考了Github上fengdu78老师的文章进行学习源码下载地址数据下载地址百度云名称地址ResNet残差网络Pytorch实现——BasicBlock残差块传送门ResNet残差网络Pytorch实现——Bottleneck残差块传送门ResNet残差网络Pytorch实现——结合各个残差块传送门ResNet残差网络原创 2021-05-10 11:11:04 · 623 阅读 · 1 评论 -
ResNet残差网络Pytorch实现——cifar10数据集的预测
ResNet残差网络Pytorch实现——cifar10数据集的预测上一篇:【课程1 - 第二周作业】 ✌✌✌✌ 【目录】 ✌✌✌✌ 下一篇:【课程1 - 第三周作业】大学生一枚,最近在学习神经网络,写这篇文章只是记录自己的学习历程,本文参考了Github上fengdu78老师的文章进行学习✌ 使用ResNet进行对cifar10数据集进行预测import osimport jsonimport torchfrom torchvision import transformsfrom原创 2021-05-10 10:55:27 · 739 阅读 · 2 评论 -
ResNet残差网络Pytorch实现——cifar10数据集训练
ResNet残差网络Pytorch实现——cifar10数据集训练上一篇:【课程1 - 第二周作业】 ✌✌✌✌ 【目录】 ✌✌✌✌ 下一篇:【课程1 - 第三周作业】大学生一枚,最近在学习神经网络,写这篇文章只是记录自己的学习历程,本文参考了Github上fengdu78老师的文章进行学习✌ 使用ResNet进行对cifar10数据集进行训练import torchvisionimport torchfrom torchvision import transformsimport os原创 2021-05-10 10:54:31 · 843 阅读 · 1 评论 -
ResNet残差网络Pytorch实现——对花的种类进行单数据预测
ResNet残差网络Pytorch实现——对花的种类进行单数据预测上一篇:【课程1 - 第二周作业】 ✌✌✌✌ 【目录】 ✌✌✌✌ 下一篇:【课程1 - 第三周作业】大学生一枚,最近在学习神经网络,写这篇文章只是记录自己的学习历程,本文参考了Github上fengdu78老师的文章进行学习✌ 使用ResNet进行对花的种类进行单数据预测import osimport jsonimport torchfrom torchvision import transformsfrom PIL原创 2021-05-10 10:49:57 · 952 阅读 · 1 评论 -
ResNet残差网络Pytorch实现——结合各个残差块
ResNet残差网络Pytorch实现上一篇:【课程1 - 第二周作业】 ✌✌✌✌ 【目录】 ✌✌✌✌ 下一篇:【课程1 - 第三周作业】大学生一枚,最近在学习神经网络,写这篇文章只是记录自己的学习历程,本文参考了Github上fengdu78老师的文章进行学习✌ ResNet# 总的残差网络模型class ResNet(nn.Module): def __init__(self,block,block_num,num_classes=1000,include_top=True):原创 2021-05-10 10:44:52 · 1227 阅读 · 1 评论 -
ResNet残差网络Pytorch实现——Bottleneck残差块
ResNet残差网络Pytorch实现——Bottleneck残差块上一篇:【课程1 - 第二周作业】 ✌✌✌✌ 【目录】 ✌✌✌✌ 下一篇:【课程1 - 第三周作业】大学生一枚,最近在学习神经网络,写这篇文章只是记录自己的学习历程,本文参考了Github上fengdu78老师的文章进行学习✌ Bottleneck# 50、101、152层残差块,三个卷积层,1*1,3*3,1*1class Bottleneck(nn.Module): # 这里对应是4,对应每层中的64,64,25原创 2021-05-10 10:42:08 · 2565 阅读 · 0 评论 -
ResNet残差网络Pytorch实现——BasicBlock残差块
ResNet残差网络Pytorch实现——BasicBlock残差块上一篇:【课程1 - 第二周作业】 ✌✌✌✌ 【目录】 ✌✌✌✌ 下一篇:【课程1 - 第三周作业】大学生一枚,最近在学习神经网络,写这篇文章只是记录自己的学习历程,本文参考了Github上fengdu78老师的文章进行学习✌ BasicBlockclass BasicBlock(nn.Module): # 一层中不同卷积层,卷积核的倍数 # 34层网络是64,64,50层网络是64,64,256 ex原创 2021-05-10 10:40:28 · 3645 阅读 · 1 评论 -
ResNet残差网络Pytorch实现——对花的种类进行批量数据预测
ResNet残差网络Pytorch实现——对花的种类进行批量数据预测上一篇:【课程1 - 第二周作业】 ✌✌✌✌ 【目录】 ✌✌✌✌ 下一篇:【课程1 - 第三周作业】大学生一枚,最近在学习神经网络,写这篇文章只是记录自己的学习历程,本文参考了Github上fengdu78老师的文章进行学习✌ 使用ResNet进行对花的种类进行批量数据预测import osimport jsonimport torchfrom torchvision import transformsfrom P原创 2021-05-10 10:51:21 · 1835 阅读 · 3 评论 -
ResNet残差网络Pytorch实现——对花的种类进行训练
ResNet残差网络Pytorch实现——对花的种类进行训练上一篇:【课程1 - 第二周作业】 ✌✌✌✌ 【目录】 ✌✌✌✌ 下一篇:【课程1 - 第三周作业】大学生一枚,最近在学习神经网络,写这篇文章只是记录自己的学习历程,本文参考了Github上fengdu78老师的文章进行学习✌ 使用ResNet进行对花的种类进行训练import osimport jsonimport torchimport torch.nn as nnimport torch.optim as optim原创 2021-05-10 10:48:14 · 1357 阅读 · 7 评论 -
Anaconda ValueError:check_hostname requires server_hostname
用Anaconda pip安装外部库时会报出ValueError:check_hostname requires server_hostname解决办法将urllib3降低个版本就可以了或者每次pip后加个–trusted-host原创 2021-05-27 08:40:49 · 1233 阅读 · 0 评论 -
params argument given to the optimizer should be an iterable
net=nn.Linear(100,1)optimizer_w=torch.optim.SGD(net.weight,lr=0.03,weight_decay=wd)>出现问题的原因是SGD函数所需的param参数应该是迭代器或者是张量对应的字典>但是此时net.weight就是个普通张量>解决办法:>optimizer_w=torch.optim.SGD([net.weight],lr=0.03,weight_decay=wd)>将net.weight变成列.原创 2021-05-25 11:33:44 · 3833 阅读 · 0 评论 -
DeepCTR反复安装各种库numpy,tensorflow
pip install deepctr -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com最开始我用上面这条命令,可以安装,但是会反复的进行安装tensorflow各个版本以及numpy等,我安装了半个小时也没有停止,之后又执行了下面这条命令,然后依赖的各种环境都具备了,就成功了至于为什么,我也没有搞清楚pip install -U deepctr...原创 2021-05-27 10:16:16 · 1680 阅读 · 3 评论 -
Tensorflow训练模型使用history绘制结果无绘制曲线解决方案
使用Tensorflow训练模型,然后调用history里面的日志数据,用于绘制结果,发现图中没有数据出现问题原因可能是你的epoch数为1,图中只是绘制了一个点,并不是没有数据,只是一个点无法看到而已,将epoch调大,这样就可以绘制出折线,两点确定一条直线。...原创 2021-12-26 18:44:17 · 4304 阅读 · 0 评论 -
ValueError: Negative dimension size caused by subtracting 5 from 1 for ‘{{node le_net5/conv2d/Conv2D
ValueError: Negative dimension size caused by subtracting 5 from 1 for '{{node le_net5/conv2d/Conv2D}} = Conv2D[T=DT_FLOAT, data_format="NHWC", dilations=[1, 1, 1, 1], explicit_paddings=[], padding="VALID", strides=[1, 1, 1, 1], use_cudnn_on_gpu=true](le_n原创 2021-12-26 21:57:16 · 875 阅读 · 0 评论 -
TensorflowConv2D:AttributeError: ‘int‘ object has no attribute ‘lower‘
AttributeError: 'int' object has no attribute 'lower'出现问题原因: self.conv1 = Conv2D(filters=6, kernel_size=5, padding='same')当使用Conv2d层搭建网络,需要使用padding进行填充,但是Tensorflow的padding参数值只有两种可选方式,分别.原创 2021-12-27 09:01:53 · 4771 阅读 · 3 评论 -
TensorFlow修改图像尺寸:AttributeError: module ‘tensorflow._api.v2.image‘ has no attribute ‘image‘
AttributeError: module 'tensorflow._api.v2.image' has no attribute 'image'tensorflow版本改动太大,新版2.7修改图像尺寸的函数变成了train_images = tf.image.resize(train_images, [32, 32])原创 2021-12-27 09:15:17 · 923 阅读 · 0 评论 -
ValueError: This model has not yet been built. Build the model first by calling `build()` or calling
ValueError: This model has not yet been built. Build the model first by calling `build()` or calling `fit()` with some data, or specify an `input_shape` argument in the first layer(s) for automatic build.TensorFlow打印模型结构时发生上述问题model.summary()发生问题的原因是.原创 2021-12-27 13:06:55 · 1967 阅读 · 0 评论 -
TensorFlow2._:model.summary() Output Shape为multiple解决方法
使用TensorFlow2.*版本进行构建模型,然后打印模型的结构发现Output Shape为multiple,出现的原因是模型不知道输入数据的格式三种解决办法:方法一:使用函数式API# 指定输入和输出层model=Model(Input(shape=(None,28,28,1)),outputs)方法二:在class类中第一个层添加input_shapeself.conv1 = Conv2D(filters=6, kernel_s.原创 2021-12-27 13:45:14 · 3316 阅读 · 0 评论 -
Optimization loop failed: Cancelled: Operation was cancelled解决方案
2021-12-27 17:45:07.871890: W tensorflow/core/data/root_dataset.cc:167] Optimization loop failed: Cancelled: Operation was cancelled2021-12-27 17:45:07.877953: W tensorflow/core/data/root_dataset.cc:167] Optimization loop failed: Cancelled: Operation was.原创 2021-12-27 18:04:06 · 6998 阅读 · 0 评论 -
解决numpy.core._exceptions.UFuncTypeError: ufunc ‘add‘ did not contain a loop with signature matching
numpy.core._exceptions.UFuncTypeError: ufunc 'add' did not contain a loop with signature matching types (dtype('int64'), dtype('<U1')) -> None问题原因:就是在遍历数据库时没有拆分出每个字段,之后在进行计算时导致一个标量加一个元组出现不能类型匹配...原创 2021-12-31 09:00:51 · 10478 阅读 · 1 评论 -
解决AttributeError: module ‘keras.utils‘ has no attribute ‘plot_model‘
2022-01-01 19:41:58.347964: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: AVX AVX2To en.原创 2022-01-01 19:45:49 · 5165 阅读 · 0 评论