数据类型与tensor创建
一、数据类型
- 1. TF中的数据表达
tensor是tensorflow上数据的载体
what's Tensor
标量 scalar : 1.1
向量 vector :[1.1],[1.1,2.2,...]
矩阵 matrix :[[0.7,1.5],[2.1,3],[5,6]]
维度大于2的矩阵 tensor : rank>2
从工程上来讲所有数据都可以叫做tensor
2.TF中的数据类型
int,float,double
bool
string
创建一个常量or创建一个标量tensor
a=tf.constant(1)#默认为32位 |
tensor常用属性
指定tensor在哪个设备上运行,gpu or cpu
with tf.device("cpu"): |
查看tensor在哪个设备上运行
a.device |
tensor的运行设备转移
aa=a.gpu() |
将tensor转换成numpy
b.numpy() |
查看维度
b.ndim#返回维度 |
判断某个数据是不是tensor,以下两种方式
isinstance(a,tf.Tensor) |
数据类型转换
#查看数据类型 |
Variable 变量,可更改优化的数据。在tensorflow中Variable自带可求导特性
a=tf.range(5) |
二、创建tensor
1.formnumpy,list 从numpy和python的list中经转换得到
2.zeros,ones np.zeros、np.ones,tf.zeros、tf.ones
3.fill 随意用某个数填充
4.random 随机化的初始化
5.constant 标量
6.Application
#直接用List,要求list中的数据都可以转换为可计算的数据 |
Random初始化
#正态分布初始化 |
随机打散
假设现在a中有48张照片,28*28,3通道的,用tensor表示为[48,28,28,3].。现在要将这些照片顺序打散。
index=tf.range(48)#生成对应索引,每个索引对应一张照片 |