链接:https://zhuanlan.zhihu.com/p/48982978

 

Tensor,中文叫张量,是深度学习的一个基础,不然TensorFlow也不会叫Tensor和Flow了。关于张量的讨论,网上已经有很多了,但是能不能简简单单让我理解和记住呢?因此我来总结一下在深度学习中「什么是张量」

提示:本文为初学笔记,仅为提供相关的讨论,谢谢。

在深度学习里,Tensor实际上就是一个多维数组(multidimensional array)

而Tensor的目的是能够创造更高维度的矩阵、向量

从知乎的相关讨论中截图几张说明的图:什么是张量 (tensor)?

什么是张量(tensor)

现在将三维的张量用一个正方体来表示:

什么是张量(tensor)

这样子可以进一步生成更高维的张量:

什么是张量(tensor)

这有啥用呢?在用TensorFlow处理更高维数据结构的时候,最好可以能够在脑子里相出数据的形状。

举个简单的例子,彩色图像文件(RGB)一般都会处理成3-d tensor,每个2d array中的element表示一个像素,R代表Red,G代表Green,B代表Blue:

什么是张量(tensor)

而用Python举例子的话,来看看下面这个表格:

什么是张量(tensor)

再来看看Tensor对象的3个属性:

  1. rank:number of dimensions
  2. shape: number of rows and columns
  3. type: data type of tensor's elements

根据上面的张量说明图,是不是可以将属性和对象对应起来呢?

最后总结一下:在深度学习中,Tensor实际上就是一个多维数组(multidimensional array),其目的能够创造更高维度的矩阵、向量。我们通过图示和Python的实例能够想象Tensor的空间构造以及如何用Tensor的属性来构造Tensor。

以上严谨吗?不,以上只是帮你理解什么是Tensor,如果要更深度了解Tensor的几何意义,可以看这个两个视频:

Tensors for Beginners 0: Tensor Definition

https://video.zhihu.com/video/1043979324336197632?autoplay=false&useMSE=

Tensors for Beginners 0

Tensors for Beginners 1: Forward and Backward Transformations (contains error; read description!)

https://video.zhihu.com/video/1043980329467564032?autoplay=false&useMSE=

Tensors for Beginners 1

 

相关资料:

[1]深度学习TensorFlow基础(一): tensor and operation

[2]tensorflow中张量的理解 - pandamax的博客 - CSDN博客

[3]深度学习框架太抽象?其实不外乎这五大核心组件 | 雷锋网

相关文章:

  • 2022-02-09
  • 2022-02-09
  • 2022-12-23
  • 2021-08-24
  • 2021-06-07
  • 2021-11-02
猜你喜欢
  • 2021-09-14
  • 2022-12-23
  • 2021-09-03
  • 2022-12-23
  • 2021-11-17
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案