使用Numpy/TensorFlow中的tensordot进行多维矩阵相乘
在使用Numpy或者TensorFlow的tensordot方法进行矩阵相乘的时候,axes是一个重要的参数,它可以定义两个矩阵互乘的时候是使用内积、外积、或是其他方法。不管Numpy还是TensorFlow,它们使用tensordot的axes参数的方法是一样的,本文在举例时混用了这两个函数,千万不要被迷惑。 以TensorFlow的tensordot为例,其语法为: tf.tensordot( a, b, axes, name=None ) 其中a和b为输入的两个矩阵,参数axes定义了两个矩阵如何相乘。 如设置“axes=0”的时候,就是计算a和b的外积(outer produ 在Numpy和TensorFlow中,`tensordot`函数是用来执行多维数组或张量的乘法操作的。这个函数的关键在于理解`axes`参数,它定义了两个输入张量在哪些轴上进行乘积运算。无论是Numpy的`numpy.tensordot()`还是TensorFlow的`tf.tensordot()`,`axes`参数的工作方式是相同的。 `axes`参数是一个列表或元组,包含了两个子列表或元组,分别对应于两个输入张量的轴。例如,`axes=[(axis1_1, axis1_2), (axis2_1, axis2_2)]`表示张量1的`axis1_1`轴与张量2的`axis2_1`轴对应相乘,张量1的`axis1_2`轴与张量2的`axis2_2`轴对应相乘。这里的乘积可以是内积、外积或其他类型的乘积,取决于轴的选择。 当`axes=0`时,计算的是两个张量的外积。外积的结果是一个新的张量,其形状是两个输入张量形状的组合,除了对应轴的长度之外。例如,如果张量A是形状为 `(m, n)`,张量B是形状为 `(n, p)`,`axes=0`时得到的张量C将是形状 `(m, n, n, p)`。 相反,当`axes=1`时,计算的是张量的内积。内积是沿着指定的轴进行求和的乘积,通常用于计算向量的点积或矩阵的乘积。对于二维张量,`axes=1`意味着沿着最后一个轴(在Numpy中是第二轴,在TensorFlow中也是第二轴,除非你改变了轴的顺序)进行乘法并求和。对于多维张量,`axes=1`表示匹配的轴会被压缩成一个单一的轴。 在多维张量的`tensordot`运算中,`axes`可以包含多个轴对。例如,`axes=[(axis1_1, axis2_1), (axis1_2, axis2_2), ...]`表示有多个轴参与乘积运算。这种情况下,结果张量的形状将根据所选择的轴进行调整,保留未参与乘积的轴,并压缩参与乘积的轴。 在给定的示例代码中,创建了两个三维张量`a`和`b`,形状分别为`(3, 4, 5)`和`(1, 2, 3)`。使用`np.tensordot(a, b, axes=([0], [2]))`进行计算,`axes`参数选择了张量`a`的第一轴和`b`的第三轴进行乘积。结果张量`c`的形状是`(4, 5, 1, 2)`,这表明`a`的第二轴和`b`的第一轴没有参与乘积,而是保留了下来。通过手动的for循环实现相同的效果,可以验证`tensordot`函数的正确性。 理解`tensordot`的`axes`参数对于处理高维数据和复杂张量操作至关重要,尤其是在深度学习和其他需要高效计算的领域。熟练掌握这一工具,能够使你在处理多维数据时更加游刃有余。
- 粉丝: 7
- 资源: 891
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 2-一款实用的键盘映射软件
- 微信小程序调用 WebAssembly 示例(C++/Rust)
- 水面垃圾清理器sw16可编辑全套技术资料100%好用.zip
- 基于Psim的Boost型 PFC+移相全桥AC-DC电源设计仿真 1、前级电网输入220AC,50Hz,中间级母线电压为600V,后级600V输入,547V输出,电压可调,功率10kW 2、前级基于
- 《计算机组成与结构》实验 单周期CPU
- WordPress付费进群系统V3主题源码-无BUG开心版+本地授权
- 3_唐宇迪《深度学习》系统班V8.0.pdf
- 4. ChatGPT-角色扮演指南.pdf
- 文本内指令多行发送,通过串口将文本内多行指令发送给下位机,可选择端口,波特率,文本,应答内容,利用多线程可随时运行和结束
- IDEA 小说阅读、摸鱼插件,支持在线&本地阅读方式,历史记录自动保存 ,自定义适配想看的网站 , 在线章节阅读 - gitee配置文件中已配置的网站 , 在线全章节阅读 ,本地txt章节阅读 ,
- 5. Midjourney关键词大全.pdf
- 9. AI视频工具—D-ID注册教程.pdf
- 6. AI绘画—Midjourney注册教程.pdf
- 7. AI—Notion AI注册教程.pdf
- 10. AI做视频—Runway注册教程.pdf
- 11. AI做PPT—TOME注册教程.pdf