对PyTorch中inplace字段的全面理解


Posted in Python onMay 22, 2021

例如

torch.nn.ReLU(inplace=True)
inplace=True

表示进行原地操作,对上一层传递下来的tensor直接进行修改,如x=x+3;

inplace=False

表示新建一个变量存储操作结果,如y=x+3,x=y;

inplace=True

可以节省运算内存,不用多存储变量。

补充:PyTorch中网络里面的inplace=True字段的意思

在例如nn.LeakyReLU(inplace=True)中的inplace字段是什么意思呢?有什么用?

inplace=True的意思是进行原地操作,例如x=x+5,对x就是一个原地操作,y=x+5,x=y,完成了与x=x+5同样的功能但是不是原地操作。

上面LeakyReLU中的inplace=True的含义是一样的,是对于Conv2d这样的上层网络传递下来的tensor直接进行修改,好处就是可以节省运算内存,不用多储存变量y。

inplace=True means that it will modify the input directly, without allocating any additional output. It can sometimes slightly decrease the memory usage, but may not always be a valid operation (because the original input is destroyed). However, if you don't see an error, it means that your use case is valid.

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中函数的用法实例教程
Sep 08 Python
Numpy 改变数组维度的几种方法小结
Aug 02 Python
学生信息管理系统Python面向对象版
Jan 30 Python
python实现计数排序与桶排序实例代码
Mar 28 Python
python+openCV利用摄像头实现人员活动检测
Jun 22 Python
我们为什么要减少Python中循环的使用
Jul 10 Python
django数据关系一对多、多对多模型、自关联的建立
Jul 24 Python
python利用tkinter实现屏保
Jul 30 Python
Django Python 获取请求头信息Content-Range的方法
Aug 06 Python
python利用datetime模块计算程序运行时间问题
Feb 20 Python
离线状态下在jupyter notebook中使用plotly实例
Apr 24 Python
python用Tkinter做自己的中文代码编辑器
Sep 07 Python
pytorch中F.avg_pool1d()和F.avg_pool2d()的使用操作
May 22 #Python
用python实现监控视频人数统计
Python基础之进程详解
如何在C++中调用Python
May 21 #Python
python 定义函数 返回值只取其中一个的实现
May 21 #Python
Python+Appium实现自动抢微信红包
写好Python代码的几条重要技巧
You might like
在Nginx上部署ThinkPHP项目教程
2015/02/02 PHP
PHP自动生成表单代码分享
2015/06/19 PHP
jquery 学习之二 属性相关
2010/11/23 Javascript
javascript里模拟sleep(两种实现方式)
2013/01/25 Javascript
jQuery的控件及事件(输入控件及回车事件)使用示例
2013/07/25 Javascript
Jquery增加鼠标中间功能mousewheel的实例代码
2013/09/05 Javascript
深入剖析JavaScript中的枚举功能
2014/03/06 Javascript
JQuery实现动态表格点击按钮表格增加一行
2014/08/24 Javascript
jQuery实现行文字链接提示效果的方法
2015/03/10 Javascript
javascript实现dom元素可拖动
2016/03/21 Javascript
javascript事件委托的用法及其好处简析
2016/04/04 Javascript
AngularJS使用ng-repeat指令实现下拉框
2016/08/23 Javascript
全选复选框JavaScript编写小结(附代码)
2017/08/16 Javascript
JS实现小球的弹性碰撞效果
2017/11/11 Javascript
Vue触发式全局组件构建的方法
2018/11/28 Javascript
nodejs基础之buffer缓冲区用法分析
2018/12/26 NodeJs
新手如何快速理解js异步编程
2019/06/24 Javascript
利用Vue实现简易播放器的完整代码
2020/12/30 Vue.js
[44:10]2018DOTA2亚洲邀请赛 4.5 淘汰赛 EG vs VP 第一场
2018/04/06 DOTA
精确查找PHP WEBSHELL木马的方法(1)
2011/04/12 Python
python socket 超时设置 errno 10054
2014/07/01 Python
使用Python中的线程进行网络编程的入门教程
2015/04/15 Python
python判断一个集合是否包含了另外一个集合中所有项的方法
2015/06/30 Python
python转换字符串为摩尔斯电码的方法
2015/07/06 Python
Python3一行代码实现图片文字识别的示例
2018/01/15 Python
pandas DataFrame实现几列数据合并成为新的一列方法
2018/06/08 Python
Python3.5 处理文本txt,删除不需要的行方法
2018/12/10 Python
Python3获取拉勾网招聘信息的方法实例
2019/04/03 Python
Python socket模块实现的udp通信功能示例
2019/04/10 Python
python实现弹跳小球
2019/05/13 Python
4行Python代码生成图像验证码(2种)
2020/04/07 Python
解决Keras的自定义lambda层去reshape张量时model保存出错问题
2020/07/01 Python
html5教程实现Photoshop渐变色效果
2013/12/04 HTML / CSS
HTML5拖拽的简单实例
2016/05/30 HTML / CSS
H5页面适配iPhoneX(就是那么简单)
2019/12/02 HTML / CSS
Python下opencv使用hough变换检测直线与圆
2021/06/18 Python