48   Deep Learning

关于张量 tensor , 使用范围比较广,定义也相对复杂
下面从 tensorflow 的使用角度来理解

 

一,举个例子

一个人的基本信息:
姓名: 张三
性别:男

用 1 个数组形式表示:

[张三,男]

称为 1 阶张量,里面包含 2 个特性,表示为 [ 2 ]

 

 

如果有 2 个人呢?

[[张三,男],[李四,女]]

称为 2 阶张量,里面包含 2 个元素,每个元素有 2 个特性,表示为 [2,2]

 

 

如果是 3 个城市的人了

[[[张三,男],[李四,女]],[[李四,女],[王五,男]],[[张三,男],[王五,男]]]

称为 3 阶张量,表示为 [3,2,2]

 

这里的 tensor 张量用来描述数据的格式和内容

n 阶张量则以此类推
至于 0 阶张量,就是单独一个数字,只有大小
1 阶张量又被称为向量,有大小有方向
2 阶张量类似矩阵

 

二,再举个例子


一个像素有红绿蓝 3 中取值表示

[10,20,30]

这是 1 阶张量 [3]

 

 

一张图有 2 X 2 个像素组成

[
	[[10,20,40],[40,50,60]],
	[[70,80,90],[90,80,70]]
]

因为要记录每个像素的位置,所以分开一行行表示
这是 3 阶张量 [2,2,3]

 

 

一共有 3 张图片

[
	[
		[[10,20,40],[40,50,60]],
		[[70,80,90],[90,80,70]]
	],
	[
		[[10,20,40],[40,50,60]],
		[[70,80,90],[90,80,70]]
	],
	[
		[[10,20,40],[40,50,60]],
		[[70,80,90],[90,80,70]]
	]
]

这是 4 阶张量 [3,2,2,3]

 

那么有 1000 张图片
每张图片有 750 X 750 个像素
每个像素的颜色用红蓝绿 3 个指标值描述
那么这些图片的张量格式就是,[1000,750,750,3]




Leave a Reply

Your email address will not be published. Required fields are marked *