关于深度学习中张量的理解
张量是什么:
张量代表的是存储数据的容器,是一个数据容器,张量的常见深度学习中的维度在0-5维之间,张量是根据一共具有多少坐标轴来定义,转化现实中的变量,如字符串文本、图像、股票、视频、音频为统一的张量,以便能够容易的处理。把形状里不同维度看做一个字段(一个特征),每个变量在每个维度上找到一个特征值来表示这个变量;张量的维度数即为表示变量的特征类型数,每个变量都可以用这些特征值表示;
可以用向量表示张量在各个维度上的数量;
- 0维张量: 标量,每个数字表示一个标量;
- 1维张量:1维数组,单列或者单行的一组数字,在深度学习中成为1维张量,一维张量也成为向量;
- 2维张量:矩阵–2维张量成为矩阵,带有行和列的数字网格,行和列为两个坐标轴,一个矩阵为二维张量,两个坐标轴的张量;
- 3维张量:将一系列的二维张量进行存储,形成三维张量;
- 4维或5维张量:将低纬张量增加维度进一步存储
张量表示:
一个图像:每个图像的是由若干个像素点组成的,灰度图的像素点由(灰色)一个颜色组成(2D图),彩色图的像素点由(红蓝绿)三种颜色组成(3D图);
因此一个图像可以由三个维度的特征表示:宽度、高度、颜色深度;(width, height, color_depth) = 3D
多个图像组成第四维度:得到一个4D张量(sample_size,width,height,color_depth) = 4D
视频数据:表示为多个图像数据
随着张量维度的增加,样本的数据量将会增加,需要计算的量随之增加,会带来维度灾难;
手写体识别的训练集图片为黑白的,因为着可以用2D张量来表示每个图片,但是我们习惯于将所有的图片用3D张量来编码,多出来的第三个维度表示图片的颜色深度;
MNIST数据集有60K张图片,像素为28*28,他们的颜色深度为1,即只有灰度;
张量表示(sample_size,height,weight,1)