- 博客(32)
- 资源 (2)
- 收藏
- 关注
原创 pytorch:.cuda() & .cpu() & .data & .numpy()
pytorch:.cuda() & .cpu() & .data & .numpy()GPU中的Variable变量:a.cuda().data.cpu().numpy()GPU中的tensor变量:a.cuda().cpu().numpy()CPU中的Variable变量:a.data.numpy()CPU中的tensor变量:a.numpy()总结:.cuda()是读取GPU中的数据.data是读取Variable中的tensor.cp
2022-01-23 22:28:25 3485 2
原创 nn.parallel.DistributedDataParallel报错,一块GPU时不报错
Warning: Traceback of forward call that caused the error: File "train_YnetV2_dist.py", line 273, in <module> pred_waypoint_map,pred_traj_map, pred_traj, pred_goal = model(feature_input,V_obs,A_obs,gt_waypoint_map) File "/gs/home/wangrp/anacon
2022-01-12 16:50:36 848
原创 Pytorch小抄:multinominal采样函数
对torch.multinomial()的理解Pytorch小抄:multinominal采样函数
2021-11-23 10:15:18 1109
原创 einsum pytorch和numpy
np.einsum和torch.einsum均使用一致的签名einsum(equation, operands) 其中equation是表示爱因斯坦求和约定字符串,而operands则是张量序列(numpy和tensorflow中是变长参数列表,而在pytorch中是列表)cj=∑i∑kAikBkj写成equation字符串就是ik,kj -> j。注意这里(i, j, k)的命名是任意的,但需要一致。 PyTorch和TensorFlow像numpy支持einsum的好处之一是eins
2021-11-22 19:33:07 999
原创 optimizer.state_dict()和optimizer.param_groups的区别
参考pytorch源码阅读(二)optimizer原理
2021-10-22 14:38:49 1602
原创 实时可视化数据-流式数据可视化 python
ion版import matplotlib.pyplot as pltplt.ion()fig = plt.figure()ax1 = fig.add_subplot(111)t = []v = []line, = ax1.plot(t, v, linestyle="-", color="r")import numpy as npys = np.random.normal(100, 10, 1000)for i in range(2000): t.append(i) v
2021-10-22 09:32:45 703
原创 ConvTranspose2d 反卷积 PyTorch
1.PyTorch中反卷积的用法2.反卷积原理 + pytorch反卷积层参数output_padding原理主要看1,设置看2总结由于卷积核滑动过程中,边界情况的不确定,使得在运算步长大于1的反卷积时会出现多种合法输出尺寸,pytorch的反卷积层提供了output_padding供使用者选择输出,一般情况下我们希望输入输出尺寸以步长为比例,因此output_padding一般取stride-1,同时padding取 (kernel_size - 1)/2 。理由o = (i-1)s+k-2p
2021-07-15 15:16:20 318
原创 Pytorch单机多卡和多机多卡训练
PyTorch 可以通过 torch.nn.DataParallel 直接切分数据并行在单机多卡上,实践证明这个接口并行力度并不尽如人意,主要问题在于数据在 master 上处理然后下发到其他 slaver 上训练,而且由于 GIL 的存在只有计算是并行的。torch.distributed 提供了更好的接口和并行方式,搭配多进程接口 torch.multiprocessing 可以提供更加高效的并行训练。GIL含义解释多进程我们都知道由于 GIL 的存在, python 要想真正的并行必须使用多进
2021-04-15 21:42:23 10171
原创 cuDNN error: CUDNN_STATUS_BAD_PARAM
cuDNN error: CUDNN_STATUS_BAD_PARAMnn.Conv3d(in_channels=conv3dIn, out_channels=conv3dOut, kernel_size=conv3dKer_size, stride=conv3dStride, padding=conv3dPad) self.adaptive2d = nn.AdaptiveAvgPool2d((H,W))ker
2021-04-11 13:47:04 2236
原创 学习率、weight_decay、dropout的设置
[PyTorch 学习笔记] 6.1 weight decay 和 dropoutPytorch中的学习率衰减及其用法
2021-04-07 14:27:52 1910
原创 2021-04-07
环境配置—Ubuntu 16.04 安装Opencv 3.4.3openCV卸载Ubuntu16.04 上openCV的卸载与 opencv3.0.2安装记录Ubuntu18.04 + Yolov3 + OpenCV
2021-04-07 03:04:56 245
原创 ubuntu16.04安装、测试wxWidget /opencv
安装wxWidgets相关依赖(有的不需要安装)sudo apt install pkg-configsudo apt install libgtk2.0-devsudo apt-get install libwxgtk3.0-gtk3-devsudo apt-get install build-essentialsudo apt-get install mesa*sudo apt-get install mesa-common-devsudo apt-get install libgl1.
2021-03-21 17:54:38 386
原创 模型训练总结
模型训练中的几个问题:1.在建立model时做好详细的顶层设计,每个模型的作用,输入、输出以及参数等都规划好,及时拉长时间线也能继续按照之前的思路续写代码2.在建立自己的基础模型:比如模型中的LSTMCell,参数尺寸设置用self.weight = Parameter()包装起来,初始化隐层的函数即返回隐层的初始值需要用Variable(tensor).to(device)或者Variable(tensor).cuda(device)包装,不然会报参数不在gpu上的错误3.建立基础模型时,参数初始化
2021-01-24 08:37:45 428
原创 torch.Tensor和torch.tensor pytorch的Module类接受输入的数据类型
torch.Tensor()所有的tensor都是torch.Tensor的实例。torch.Tensor是torch.FloatTensor的别名。生成:单精度浮点类型的张量输入的张量类型必须是torch,FloatTensortorch.tensor():是Python的函数,函数原型是:torch.tensor(data, dtype=None, device=None, requires_grad=False)区别torch.Tensor(data)是将输入的data转化torch.
2020-12-21 10:25:28 485
原创 matplotlib---在figure中为多副子图添加一个legend(图例)
参考:https://stackoverflow.com/questions/9834452/how-do-i-make-a-single-legend-for-many-subplots-with-matplotlibimport matplotlib.lines as mlinesblue_line = mlines.Line2D([], [], color=Color[0], marker='.', markersize=10, label=...
2020-06-11 01:04:09 4154
原创 RuntimeError: cuDNN error: CUDNN_STATUS_MAPPING_ERROR #27588
错误的提示信息如下:先说解决方法:1.将batchsize继续调小,直到不出现问题2.添加如下代码:torch.backends.cudnn.enabled = False原因分析:可能是cudnn的一个bug,由Conv3d layer引起的参考:https://github.com/pytorch/pytorch/issues/27588...
2020-05-31 10:54:09 6537 1
原创 ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found
用的服务器系统为:centos7 cuda10.1安装pytorch1.3.1+torchvison0.4.2、pytorch1.4.0+torchvison0.5.0、pytorch1.3.0+torchvison0.4.1测试都能通过,但是都会报下面的错误:ImportError: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /gs/home/wangrp/anaconda/envs/tf115p
2020-05-11 14:37:58 4082
原创 torch.utils.data中Dataset TensorDataset以及Dataloader
在打包自己处理的数据时有两种方法:1.写个数据集的类(myDataset ),并继承Dataset在myDataset 类中实现__len__()和__getitem__两个函数, __len__返回数据集的总长,__getitem__返回每次按照 索引所取的项,即x, y比如:在处理序列问题时:__len__返回的是:all_len/seq_len__getitem__返回的是:一...
2020-04-26 21:25:51 7860 2
原创 numpy函数小节
import numpy as npnp.cumsumnp.tilenp.expand_dimsnp.stacknp.argmax**np.cumsum函数原型:累加**np.cumsum(a, axis=None, dtype=None, out=None)axis=0,沿着axis=0轴累加,即按行累加。axis=1,沿着axis=1轴累加,按照列累加。axis不给...
2020-03-26 00:24:17 239
原创 vscode SSH远程连接服务器-ssh key
VsCode:版本: 1.43.0 (user setup)提交: 78a4c91400152c0f27ba4d363eb56d2835f9903a日期: 2020-03-09T19:47:57.235ZElectron: 7.1.11Chrome: 78.0.3904.130Node.js: 12.8.1V8: 7.8.279.23-electron.0OS: Windows_N...
2020-03-17 23:44:33 680
原创 @用法
类中@的用法给Student类添加一个属性class Scale(): #设置宽 @property def width(self): return self._width @width.setter def width(self,value): self._width = value #设置高 @property def height(self): return ...
2020-03-10 20:28:50 279
原创 Qt中qDebug()的学习
##1.qDebug()的几种总结1.#include <QDebug>qDebug() << "字符串" << endl;2.#include <QObject> int num = 20; char str[20]="hello world"; qDebug("如果只写在括号里,是不需要QDebug头文件的 %d...
2020-01-27 23:19:26 935
原创 Qt中C++关于继承的说法
构造函数的几点总结:1.C++派生类在其构造函数中一般利用初始化列表去初始化派生类中的成员,这样能够提升效率;另外,如果未调用基类的构造函数(初始化列表中为初始化基类),则派生类会调用基类的默认构造函数2.派生类中的构造函数若要调用基类有参构造函数,则在其初始化列表中一般要初始化基类的有参构造函数。3.类在无构造函数时编译器会生成默认构造函数;在有构造函数的时候编译器不会生成构造函数。...
2020-01-27 22:28:30 206
转载 Qt快捷键
Ctrl+F:在当前编辑窗口查询关键字,可以选择大小写相关,全词匹配,正则表达式匹配,而且在查找之后,还可以进行替换操作。Ctrl+Shift+F:全局查找,不只局限在当前文件。注意可能会和输入法快捷键冲突,使用时要关闭中文输入法。Ctrl+Shift+V:剪切板历史列表,你可以通过它选择你之前粘贴过的文字,非常好用。Ctrl+L:输入数字n,可以快速定位到当前文件的第n行。Alt+←:后...
2020-01-27 18:04:35 163
原创 np.concatenate详解和Numpy中的轴
np.concatenate和Numpy中的轴concatenate((a1, a2, ...), axis=0)沿着指定的轴将指定的数组序列进行拼接注意:要拼接的原数组形状除了指定的拼接轴可以不同外,其他轴的形状必须都要相同第一个参数必须是一个多个数组的元组或者列表第二个参数默认是 axis = 0,即按数组的0轴进行纵向的拼接注:一般axis = 0,就是对该轴向的数组进行操作。...
2019-12-25 14:23:15 1109
原创 numpy中transpose用法
np.transpose(a,axes=None)a为输入的数组,axis为int类型的列表,这个参数可选,默认是反转输入数组的维度,指定该值时需要按照参数所指定的值进行数组变换1.它对于一维数组不起作用2.对于二维数组的操作:就是对原数组的转置操作3.对于三维数组:(1)从以上实验可以看出:a.transpose()生成了一个新的数组,新数组和原数组并不共享内存,用c = np.t...
2019-12-21 11:07:33 548
原创 numpy中reshape的用法
numpy.reshape(a, newshape, order='C')[source]a:数组–需要处理的数据newshape:新的形狀–整数或整数数组,如(2,3)表示2行3列,新的形状应该与原来的形状兼容,即行数和列数相乘后等于a中元素的数量order: 可选范围为{‘C’, ‘F’, ‘A’}。使用索引顺序读取a的元素,按照索引顺序将元素放到变换后的数组中。默认参数为C。1)“...
2019-12-21 09:38:16 505
转载 Tensorflow中保存与恢复模型tf.train.Saver类讲解(恢复部分模型参数的方法)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...
2019-11-02 17:06:04 378
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人