Theano中的张量到底是什么?

11 投票
2 回答
3292 浏览
提问于 2025-04-18 04:23

Theano中,张量到底是什么?它和我们通常在物理或数学中理解的张量有什么具体的关系呢?

我看过Theano简介基本张量功能,但我找不到一个清晰的联系。

2 个回答

0

张量 = 多维数组

在机器学习的文献中,张量通常指的是多维数组。

在Theano这个库里,张量特别指的是数值数组:

Theano是一个Python库,可以让你定义、优化和高效地计算涉及多维数组的数学表达式。

但在其他库中,张量可能支持更广泛的数据类型:

张量

在TensorFlow程序中,张量是主要的数据结构。张量是N维的(N可以非常大),最常见的形式是标量、向量或矩阵。张量的元素可以存储整数、浮点数或字符串值。

词源

在数学中,张量有一个更具体的含义,指的是在向量空间之间的多线性映射的抽象,但在给定固定基的情况下,这些映射可以被表示为多维数组,正是因为这个用法,机器学习中才有了这个术语。


另见:

8

在Jim Belk的回答中,有一个很好的解释,讲述了不同的物理和数学方式来理解张量。看过Theano的文档后,我觉得Theano对张量的理解和第一种思考方式是相符的。用Jim的话来说:

张量有时被定义为多维数组,就像矩阵是二维数组一样。从这个角度来看,矩阵确实是张量的一种特殊情况。

总之,我在文档中没有看到任何东西表明Theano的张量实现了解流形的全局属性或线性代数中的张量积,除了定义点积等。这表明Theano在实现上采取的是局部的视角,而不是全局的。

撰写回答