tensor 张量的学习

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012193416/article/details/86563523

Tensor 张量,在 tf 中所有的数据都通过张量流来传输,在 tf 中张量的维数被描述为‘阶’,张量是以 list 的形式存储的,但不是 list ,list 中有几重括号,对应的张量就是几阶。t = [[1,2],[1,3]],就是一个二阶张量。实际上,一阶张量可以理解成向量,二阶张量是矩阵,但是张量的维度可以很高。三维张量可以理解成一系列的存储的二维张量,有三个坐标轴,也就是list里面套list,在套list。三维张量是一个数字构成的立方体,三维张量的继续堆叠就可以得到4维张量,图像信息就可以存储成4为张量,样本量往往占据张量的第四个维度,也就是 tf 中的batch,即(batch,width,height,depth),遥感影像由于光谱维度的存在是一个五维张量。视频流也是需要5D张量的,即(batch,frames,width,height,depth).

如我们考察一端5分钟,1080HP(1920*1080pixel),每秒15帧(总共4500帧),颜色深度为3,我们用4D张量来存储:

(4500,1920,1080,3)

我们用五维张量来存储,假设要处理10端这样的视频流:

(10,4500,1920,1080,3)

这个五维张量中值的数目为:10*4500*1920*1080*3=279936000000,如果采用32bit或64bit的浮点数来存储,计算量是相当和内存要求都是相当高的,所以要减少输入数据量,当然也要量化。

t = [[1,2],[1,3]] 是一个二阶张量,shape为[2,2],以此类推

其实 N 维数组都统称为 tensor 张量。

猜你喜欢

转载自blog.csdn.net/u012193416/article/details/86563523