首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python中的张量积

Python中的张量积
EN

Stack Overflow用户
提问于 2020-09-21 13:10:33
回答 2查看 195关注 0票数 1

谁能告诉我如何在python中做张量积。我的意思是,例如,我有5 (6,1) (类: numpy.ndarray)数组,我需要这5 (6,1)数组的张量积,所以我的输出将是(6,6,6,6,6)张量。

EN

回答 2

Stack Overflow用户

发布于 2020-09-21 13:28:38

才能得到那个张量。相反,你必须有6个数组。因为对于5个矢量,在计算矢量的乘积时,只能选择5x6x5的形状。这张图片会让你更容易概括

因此,对于6个数组,我将其命名为a0,a1...a5。当您通过应用转置将1乘以他人时。在numpy中,您可以创建一个循环:a0*a0.Ta0*a1.T.

你现在将拥有6x6的a0,6x6的a1,... 6x6的a5。现在将它们堆叠在一起。6x6x6 (a0,a2...a5)。现在,你需要通过切换a0,a1,...的位置来形成其他(6x6x6)到(6x6x6x6)。

继续执行此操作,您可以获得(6x6x6x6x6)张量

票数 0
EN

Stack Overflow用户

发布于 2020-09-21 14:14:25

下面的方法对你有效吗?

代码语言:javascript
复制
import numpy as np

a1 = np.arange(6)
a2 = np.arange(6)
a3 = np.arange(6)
a4 = np.arange(6)
a5 = np.arange(6)

oo = np.einsum('i,j,k,l,m',a1,a2,a3,a4,a5)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63986495

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档