逐元素操作

这部分操作会对tensor的每一个元素(point-wise,又名element-wise)进行操作,此类操作的输入与输出形状一致。常用的操作如表3-4所示。

表3-4: 常见的逐元素操作

函数 功能
abs/sqrt/div/exp/fmod/log/pow.. 绝对值/平方根/除法/指数/求余/求幂..
cos/sin/asin/atan2/cosh.. 相关三角函数
ceil/round/floor/trunc 上取整/四舍五入/下取整/只保留整数部分
clamp(input, min, max) 超过min和max部分截断
sigmod/tanh.. 激活函数

对于很多操作,例如div、mul、pow、fmod等,PyTorch都实现了运算符重载,所以可以直接使用运算符。如a ** 2 等价于torch.pow(a,2)a * 2等价于torch.mul(a,2)

其中clamp(x, min, max)的输出满足以下公式:

clamp常用在某些需要比较大小的地方,如取一个tensor的每个元素与另一个数的较大值。

In [71]:

a = t.arange(0, 6).view(2, 3).float()
t.cos(a)

Out[71]:

tensor([[ 1.0000,  0.5403, -0.4161],[-0.9900, -0.6536,  0.2837]])

In [72]:

a % 3 # 等价于t.fmod(a, 3)

Out[72]:

tensor([[0., 1., 2.],[0., 1., 2.]])

In [73]:

a ** 2 # 等价于t.pow(a, 2)

Out[73]:

tensor([[ 0.,  1.,  4.],[ 9., 16., 25.]])

In [74]:

# 取a中的每一个元素与3相比较大的一个 (小于3的截断成3)
print(a)
t.clamp(a, min=3)
tensor([[0., 1., 2.],[3., 4., 5.]])

Out[74]:

tensor([[3., 3., 3.],[3., 4., 5.]])

In [75]:

b = a.sin_() # 效果同 a = a.sin();b=a ,但是更高效节省显存
a

Out[75]:

tensor([[ 0.0000,  0.8415,  0.9093],[ 0.1411, -0.7568, -0.9589]])

Tensor:逐元素操作相关推荐

  1. torch对于tensor的常规操作

    前言 使用pytorch框架,会常操作tensor,以下则是对tensor常规操作的汇总. import torch torch.Tensor会继承某些torch的某些数学运算,例如sort, min ...

  2. torch.Tensor常用数据操作汇总与自动求梯度

    在深度学习中,通常会频繁地对数据进行操作,在PyTorch中,torch.Tensor是存储和变换数据的主要工具(Tensor和NumPy的多维数组非常类似,Tensor提供GPU计算和自动求梯度等更 ...

  3. pytorch小知识点(三)-------Tensor的indices操作

    一.Tesnor 先简单介绍一下Tensor.Tensor是pytorch的核心,它是一个包含单一数据类型的多维矩阵. pyTorch定义了七种CPU tensor类型和八种GPU tensor类型: ...

  4. 48 jQuery元素操作

    技术交流QQ群:1027579432,欢迎你的加入! 欢迎关注我的微信公众号:CurryCoder的程序人生 主要是遍历.创建.添加.删除元素操作. 1.遍历元素 jQuery隐式迭代是对同一类元素做 ...

  5. jQuery 元素操作——遍历元素

    jQuery 元素操作 主要是遍历.创建.添加.删除元素操作 <!DOCTYPE html> <html lang="en"><head>< ...

  6. tensorflow 利用索引获取tensor特定元素

    tensorflow 利用索引获取tensor特定元素_君莫笑-CSDN博客 Tensorflow常用函数笔记_Cyiano的博客-CSDN博客_tf.greater_equal tensorflow ...

  7. jQuery元素操作

    1.1   元素操作 1.1.1    高度和宽度 $("div").height();            // 高度 $("div").width();  ...

  8. Selenium2(WebDriver)总结(五)---元素操作进阶(常用类)

    Selenium2(WebDriver)总结(五)---元素操作进阶(常用类) 1.Alert类 Alert是指windows弹窗的一些操作,需要new一个Alert类 driver.switchTo ...

  9. [Python]两个list对应元素操作(相减)

    两个list的对应元素操作,这里以相减为例: # coding=gbkv1 = [21, 34, 45] v2 = [55, 25, 77]#v = v2 - v1 # Error: TypeErro ...

最新文章

  1. 色彩(颜色)空间原理(上)
  2. GCC的内存边界对齐
  3. jt808 位置信息方向错误_开车别大意,要掌握方向盘的正确握法,确保行车安全...
  4. Sony Sony开发在线音乐订阅服务
  5. 还在为系统迁移烦恼?掌握这些“基本法”解锁更多可能
  6. 为什么计算机的编码那么多,为什么中国剩余定理可用于计算机编码?
  7. 抽象工厂模式_设计模式——抽象工厂模式
  8. sql ntext 替换存储过程
  9. 关于opencv的cv2.WINDOW_一类
  10. 使用MEAT在iOS设备上采集取证信息
  11. 最近架设的MUNIN,WEBALIZER,AWSTATS截图存档
  12. 开源项目推荐:3D点云处理软件CloudCompare,基于Qt和OpenGL
  13. 可以直接复制的emoji符号(表情)
  14. [Excel]取消隐藏于取消隐藏
  15. android手机获取qq闪照的方法,QQ闪照怎么保存 闪照保存到手机的方法教程
  16. 计算机右键管理没有管理员权限,win7系统右键菜单没有“以管理员身份运行”选项如何恢复...
  17. 缔造评测领先品牌的鲁大师,近日将有一个大举措
  18. SQLITE3插入、查询效率的优化方法
  19. 安装SQLServer2019
  20. Unreal Engin_画廊制作笔记_001<设计草图,利用BSP快速搭建简单场景>

热门文章

  1. Android远程桌面助手之功能简介
  2. 【题解】Grape luogu1156改 dp
  3. linux服务器规格查看
  4. SharePoint2010添加webpart找不到内容编辑器
  5. 蓝点中文_linux2.0 实验二 简单shell命令
  6. silverlight 自定义资源整理(待后续补充)
  7. 【python】yaml文件操作
  8. 性能测试搭建Jmeter分布式压测与监控
  9. android 文件删除命令大全,Android中删除sdcard里文件的命令
  10. 怎么捡自己空投_“吃鸡”里信号枪子弹可以复制?玩家发现神秘技巧,空投捡到手软...