tensorflow - 将矩阵的每一行与张量流中的另一个矩阵相乘
问题描述
我想使用 tensorflow 将矩阵的每一行与另一个矩阵相乘。例如:
A = [1,2,3 ; 4,5,6]
B = [1,1,1 ; 2,2,2 ; 3,3,3]
将 A 的每一行乘以整个矩阵 B,然后得到的张量应该是
C = [[1,2,3 ; 2,4,6 ; 3,6,9],
[4,8,12 ; 5,10,15 ; 6,12,18]]
先感谢您。
解决方案
阵列广播是你想要的:
A2 = tf.reshape(A, (2, 3, 1))
B2 = tf.reshape(tf.transpose(B), (1, 3, 3))
C = A2 * B2
任何长度为 1 的维度都会自动广播到适当的长度以进行元素乘法,因此C
会有 shape (2, 3, 3)
。
我不是 100% 确定如何解释你的符号,所以我可能把轴顺序弄混了,在这种情况下,玩弄顺序和/或删除转置。
推荐阅读
- python - 为什么我需要使用 np.array 来获取错误“列表对象没有属性形状”?
- reactjs - 流星离子5反应
- java - Java Maven 程序集插件致命错误编译:无效的目标版本 1.14
- c# - 文件上传失败并显示“超出最大请求长度”。
- web - 基于 Service Worker 如何离线使用 Web 应用?
- java - 尾递归遗传算法抛出“AWT-EventQueue-0”java.lang.StackOverflowError
- c# - 证书扩展值包含 2 个额外字节 (\u0004\u0002) 八位字节编码
- google-dfp - 如何使用订单项 ID 在 Google Ad Manager (DFP) 中刷新广告
- vb.net - 尝试在控制台应用程序 VB.NET 中播放声音
- javascript - 在 React Saga 单元测试中需要帮助