
深度学习
code_carrot
这个作者很懒,什么都没留下…
展开
-
PyTorch学习笔记:RuntimeError: one of the variables needed for gradient computation has been modified by
RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.FloatTensor [784, 512]], which is output 0 of TBackward, is at version 3; expected version 2 instead. Hint: enable anomaly detection to fi原创 2022-01-30 13:01:32 · 14137 阅读 · 9 评论 -
PyTorch学习笔记:EOFError:Ran out of input
报错分析:这个错误其实是pytorch函数torch.utils.data.DataLoader在windows下的特有错误,该函数里面有个参数num_workers表示进程个数,在windows下改为0就可以了解决方法:train_loader = Data.DataLoader( dataset=data_x, # 使用的数据集※ batch_size=64, # 批处理样本大小 shuffle=True, # 每次迭代前打乱数据原创 2022-01-30 12:19:46 · 2770 阅读 · 3 评论 -
PyTorch学习笔记:多GPU训练
方法一:# 选择GPU执行 or CPU执行,方法一if torch.cuda.is_available(): AEmodel = AutoEncoder() AEmodel = torch.nn.DataParallel(AEmodel).cuda()else: AEmodel = AutoEncoder()方法二:# 选择GPU执行 or CPU执行,方法二# 定义device,其中需要注意的是“cuda:0”代表起始的device_id为0,如果直接是“.原创 2022-01-29 21:10:01 · 2031 阅读 · 0 评论 -
PyTorch学习笔记:AutoEncoder自编码模型(基于Linear)
import numpy as npimport pandas as pdimport matplotlib.pyplot as pltfrom mpl_toolkits.mplot3d import Axes3Dimport hiddenlayer as hlfrom sklearn.manifold import TSNEfrom sklearn.svm import SVCfrom sklearn.decomposition import PCAfrom sklearn.metric.原创 2022-01-28 21:56:29 · 1008 阅读 · 0 评论 -
PyTorch学习笔记:训练过程的可视化(hiddenlayer库)
ConvNet.py'''搭建一个卷积神经网络,该网络用于展示如何使用相关包来可视化其网络结构'''import torch.nn as nnclass ConvNet(nn.Module): def __init__(self): super(ConvNet, self).__init__() # 定义第一个卷积层: Conv2d + RELU + AvgPool2d self.conv1 = nn.Sequential(原创 2022-01-27 01:01:07 · 1508 阅读 · 0 评论 -
PyTorch学习笔记:训练过程的可视化(tensorboardX库)
ConvNet.py'''搭建一个卷积神经网络,该网络用于展示如何使用相关包来可视化其网络结构'''import torch.nn as nnclass ConvNet(nn.Module): def __init__(self): super(ConvNet, self).__init__() # 定义第一个卷积层: Conv2d + RELU + AvgPool2d self.conv1 = nn.Sequential(原创 2022-01-27 00:57:15 · 985 阅读 · 0 评论 -
PyTorch学习笔记:网络结构的可视化
ConvNet.py'''搭建一个卷积神经网络,该网络用于展示如何使用相关包来可视化其网络结构'''import torch.nn as nnclass ConvNet(nn.Module): def __init__(self): super(ConvNet, self).__init__() # 定义第一个卷积层: Conv2d + RELU + AvgPool2d self.conv1 = nn.Sequential( ..原创 2022-01-27 00:54:18 · 1054 阅读 · 0 评论 -
PyTorch学习笔记:模型保存和加载方法
# 方法一:保存整个模型torch.save(mlp1, "model_saved/mlp1.pkl")mlp1load = torch.load("model_saved/mlp1.pkl") # 导入保存的模型print(mlp1load)print(mlp1load.hidden2.weight)# 方法二:只保存模型的参数torch.save(mlp1.state_dict(), "model_saved/mlp1_param.pkl")mlp1load_param = torc.原创 2022-01-26 13:23:17 · 921 阅读 · 0 评论 -
_pickle.PicklingError: Can‘t pickle <class ‘__main__.MLPmodel‘>: attribute lookup MLPmodel on __main
报错信息:_pickle.PicklingError: Can't pickle <class '__main__.MLPmodel'>: attribute lookup MLPmodel on __main__ failed解决方法:报错信息的意思是在main里面找不到MLPmodel(文末附源代码)因为我是在同一个文件A里定义的网络结构(class MLPmodel),在后面的if __name__ == "__main__"里面使用,故出现上述报错。※ 将class原创 2022-01-26 13:14:59 · 9942 阅读 · 7 评论 -
PyTorch学习笔记:用Module和Sequential两种方式搭建网络
'''搭建网络:用Module和Sequential两种不同的网络定义方式'''import torchimport torch.nn as nn # nn模块方便用户对网络中的层的使用from torch.optim import SGDimport torch.utils.data as Data # Data模块用于对使用数据的预处理from sklearn.datasets import load_boston # 用于导入数据from sklearn.preprocessing.原创 2022-01-26 01:15:31 · 535 阅读 · 0 评论 -
PyTorch学习笔记:针对一个网络的权重初始化方法
# 针对一个网络的权重初始化方法import torchimport torch.nn as nn## 建立一个测试网络class TestNet(nn.Module): def __init__(self): super(TestNet, self).__init__() self.conv1 = nn.Conv2d(3, 16, 3) self.hidden = nn.Sequential( nn.Linear.原创 2022-01-24 22:52:24 · 1321 阅读 · 0 评论 -
PyTorch学习笔记:基础语法及应用
import torchv = torch.__version__cu = torch.cuda.is_available()k = torch.tensor([1.2, 3.4]).dtypex = torch.tensor((1, 2, 3), dtype=torch.float32, requires_grad=True)y = x.pow(2)z = y.sum()z.backward() # 参数必须是个标量print(x.grad)print(x, y, z)# .原创 2022-01-24 20:46:54 · 990 阅读 · 2 评论