Hacker News new | ask | show | jobs
by nabla9 3348 days ago
Probably for same reason as they use the name "vector" to refer one dimensional array, "matrix" to refer 2 dimensional array. Tensor is generalization of matrix to more than 2 indices.

In physics people use tensor as a shorthand for tensor field.

2 comments

A tensor is any quantity that transforms in a specific way under rotations. Essentially, it is required that a tensor describing some process gives the same answer no matter from which point (literally) one looks at it.

Tensor fields are spatial functions whose function value at each point is a tensor.

You might be familiar with more specific definition of tensors in physics where they come with full tensor calculus and transform in certain way.

More general mathematical definition of tensor is that tensors are multilinear maps from vector spaces to scalars. That's how TensorFlow and HPTT see these tensors.

> More general mathematical definition of tensor is that tensors are multilinear maps from vector spaces to scalars. That's how TensorFlow and HPTT see these tensors.

Oof, you have to squint very hard to see things that way.

Just because an image is physically a two-dimensional array of pixels doesn't suddenly make it a rank-2 multilinear map, and just because you have N planes of images doesn't mean you suddenly have a rank-3 tensor!

It seems to me that feature vectors in ML are used approximately like that, so I don't think it's so inappropriate. Take the preponderance of techniques like PCA, for example, features tend to be very often treated as rotation-invariant. Even if it's not 100% the case in the raw data, one very often wants to learn whatever features lie in subspaces that are invariant to linear transformations.
> Probably for same reason as they use the name "vector" to refer one dimensional array, "matrix" to refer 2 dimensional array.

Yes, that's where the rot started.

That "rot" likely started centuries before anyone even imagined a computer for an "array" to exist on.