如下是tensor乘法与加减法,对应位相乘或相加减,可以一对多

  1. import torch
  2. def add_and_mul():
  3. x = torch.Tensor([[[1, 2, 3],
  4. [4, 5, 6]],
  5.  
  6. [[7, 8, 9],
  7. [10, 11, 12]]])
  8. y = torch.Tensor([1, 2, 3])
  9. y = y - x
  10. print(y)
  11. '''
  12. tensor([[[ 0., 0., 0.],
  13. [-3., -3., -3.]],
  14.  
  15. [[-6., -6., -6.],
  16. [-9., -9., -9.]]])
  17. '''
  18. t = 1. - x.sum(dim=1)
  19. print(t)
  20. '''
  21. tensor([[ -4., -6., -8.],
  22. [-16., -18., -20.]])
  23. '''
  24. y = torch.Tensor([[1, 2, 3],
  25. [4, 5, 6]])
  26. y = torch.mul(y,x) #等价于此方法 y*x
  27. print(y)
  28. '''
  29. tensor([[[ 1., 4., 9.],
  30. [16., 25., 36.]],
  31.  
  32. [[ 7., 16., 27.],
  33. [40., 55., 72.]]])
  34. '''
  35. z = x ** 2
  36. print(z)
  37. """
  38. tensor([[[ 1., 4., 9.],
  39. [ 16., 25., 36.]],
  40.  
  41. [[ 49., 64., 81.],
  42. [100., 121., 144.]]])
  43. """
  44.  
  45. if __name__=='__main__':
  46. add_and_mul()

矩阵的乘法,matmul和bmm的具体代码

  1. import torch
  2.  
  3. def matmul_and_bmm():
  4. # a=(2*3*4)
  5. a = torch.Tensor([[[1, 2, 3, 4],
  6. [4, 0, 6, 0],
  7. [3, 2, 1, 4]],
  8. [[3, 2, 1, 0],
  9. [0, 3, 2, 2],
  10. [1, 2, 1, 0]]])
  11. # b=(2,2,4)
  12. b = torch.Tensor([[[1, 2, 3, 4],
  13. [4, 0, 6, 0]],
  14. [[3, 2, 1, 0],
  15. [1, 2, 1, 0]]])
  16.  
  17. b=b.transpose(1, 2)
  18. # res=(2,3,2),对于a*b,是第一维度不变,而后[3,4] x [4,2]=[3,2]
  19. #res[0,:]=a[0,:] x b[0,;]; res[1,:]=a[1,:] x b[1,;] 其中x表示矩阵乘法
  20. res = torch.matmul(a, b) # 维度res=[2,3,2]
  21. res2 = torch.bmm(a, b) # 维度res2=[2,3,2]
  22. print(res) # res2的值等于res
  23. """
  24. tensor([[[30., 22.],
  25. [22., 52.],
  26. [26., 18.]],
  27.  
  28. [[14., 8.],
  29. [ 8., 8.],
  30. [ 8., 6.]]])
  31. """
  32.  
  33. if __name__=='__main__':
  34. matmul_and_bmm()

tensor的加减乘和矩阵乘法的更多相关文章

  1. 线性代数-矩阵-【3】矩阵加减 C和C++实现

    点击这里可以跳转至 [1]矩阵汇总:http://www.cnblogs.com/HongYi-Liang/p/7287369.html [2]矩阵生成:http://www.cnblogs.com/ ...

  2. JS生成数字加减乘法验证码

    给大家分享一个简单的js验证码生成代码 PS:该代码依赖Jquery1.4版本以上 传入元素 如productionVerificationCode(#\(("a")) 反回验证码 ...

  3. TensorFlow2.0矩阵与向量的加减乘

    1.矩阵加法使用 a = np.random.random((3,3))b = np.random.randint(0,9,(3,3)) ad = tf.add(a,b) 2.矩阵乘法注意 # ten ...

  4. 矩阵乘法&&矩阵快速幂&&最基本的矩阵模型——斐波那契数列

    矩阵,一个神奇又令人崩溃的东西,常常用来优化序列递推 在百度百科中,矩阵的定义: 在数学中,矩阵(Matrix)是一个按照长方阵列排列的复数或实数集合 ,最早来自于方程组的系数及常数所构成的方阵.这一 ...

  5. 洛谷 P4910 帕秋莉的手环 矩阵乘法+快速幂详解

    矩阵快速幂解法: 这是一个类似斐波那契数列的矩乘快速幂,所以推荐大家先做一下下列题目:(会了,差不多就是多倍经验题了) 注:如果你不会矩阵乘法,可以了解一下P3390的题解 P1939 [模板]矩阵加 ...

  6. JavaScript 加减危机——为什么会出现这样的结果?

    在日常工作计算中,我们如履薄冰,但是 JavaScript 总能给我们这样那样的 surprise~ 0.1 + 0.2 = ? 1 - 0.9 = ? 如果小伙伴给出内心的结果: 0.1 + 0.2 ...

  7. BZOJ 5082: 弗拉格 矩阵乘法

    如果单点而不是求 sigma 的话还是比较好办的. 遇到这种前缀和相减的矩阵乘法可以增设一个 0 使得后面的能先加到前面,然后再算. 这样的话可以使的最后算出的是前缀和相加的形式. code: #in ...

  8. CPU的自动调度矩阵乘法

    CPU的自动调度矩阵乘法 这是一个有关如何对CPU使用自动调度程序的文档. 与依靠手动模板定义搜索空间的基于模板的autotvm不同,自动调度程序不需要任何模板.用户只需要编写计算声明,而无需任何调度 ...

  9. 算法竞赛进阶指南0x34矩阵乘法

    文章目录 矩阵的相关性质再回顾 矩阵加速大法: ACWing205. 斐波那契 代码 ACWing206. 石头游戏 解题思路: 感受: 代码 矩阵的相关性质再回顾 对于一个矩阵 满足结合律 满足乘法 ...

随机推荐

  1. 【JS】308- 深入理解ESLint

    点击上方"前端自习课"关注,学习起来~ 本文来自于"自然醒"投稿至[前端早读课]. 小沈是一个刚刚开始工作的前端实习生,第一次进行团队开发,难免有些紧张.在导师 ...

  2. eclipse Outline里图标的含义

    source: http://www.cnblogs.com/qdwyg2013/p/6489019.html 先说颜色: 绿色:public 黄色:protected 蓝色:no modifier ...

  3. 三、Vue 的一些语法样例

    前言 其实vue 的语法在官网上都有详细的讲解和例子,我这里就不多做什么说明,只是把自己学习这些语法是练习的例子贴出来.另外官网上的例子是一个个的html文件.我这里的是一个的vue 文件,通过不同的 ...

  4. 一起学MyBatis之入门篇(2)

    概述 本文主要讲解MyBatis中类型转换的功能,其实在MyBatis中,提供了默认的数据类型之间的转换,但只是基本数据类型的转换,如果跨类型进行转换,则需要自定义转换类,如java中是boolean ...

  5. IEEE754 32位浮点数表示范围

    6.1浮点数的数值范围 根据上面的探讨,浮点数可以表示-∞到+∞,这只是一种特殊情况,显然不是我们想要的数值范围. 以32位单精度浮点数为例,阶码E由8位表示,取值范围为0-255,去除0和255这两 ...

  6. Linux Bash文本操作之sed篇其一

    作为Linux系统中文本处理的强力工具之一,sed功能强大,用法多变,值得我们好好学习. sed是用于过滤和转换文本的流编辑器. 一般情况下sed把当前处理的行存储在临时缓冲区,按指定命令处理之后将缓 ...

  7. SpringCloud微服务的Eureka

    一.什么是微服务架构 架构设计概念,各服务间隔离(分布式也是隔离),自治(分布式依赖整体组合)其它特性(单一职责,边界,异步通信,独立部署)是分布式概念的跟严格执行SOA到微服务架构的演进过程 作用: ...

  8. Jmeter自动化集成工具Ant的安装

    一.Ant介绍 Apache Ant,是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发.由Apache软件基金会所提供.只要使用过Linux系统的读者 ...

  9. 每天3分钟操作系统修炼秘籍(6):Idle进程

    点我查看秘籍连载 CPU的归属:Idle进程 操作系统并不总是繁忙.例如个人PC上任务比较轻,多数时候都无法充分利用CPU,导致CPU处于空闲状态.但CPU既然通电了,它就得运行,那么在它没有任务需要 ...

  10. Jenkins使用SSH构建Go项目并执行

    目录 下载插件 配置要部署的服务器 构建项目 Jenkinx可以帮助我们通过SSH插件,将项目直接部署到指定的服务器. 下载插件 (1)点击左侧的"系统管理"菜单 ,然后点击 (2 ...