(一)矩阵生成操作
def ones(shape, dtype=dtypes.float32, name=None)://创建一个形状为shape的矩阵 元素值都为1,默认元素类型float32
def zeros(shape, dtype=dtypes.float32, name=None)://创建一个形状为shape的矩阵 元素值都为0,默认元素类型float32
def ones_like(tensor, dtype=None, name=None, optimize=True)://创建一个和张量tensor形状一致的矩阵 元素值都为1
def zeros_like(tensor, dtype=None, name=None, optimize=True)://创建一个和张量tensor形状一致的矩阵 元素值都为0
def fill(dims, value, name=None): //创建一个形状大小为shape的tensor,其初始值为value,数据类型和value的数据类型保持一致
sess = tf.InteractiveSession()
x1 = tf.ones([2, 3], tf.int32)
print(sess.run(x1))
#[[1 1 1]
#[1 1 1]]
x2 = tf.zeros([1, 2], tf.float32)
print(sess.run(x2))
#[[0. 0.]]
tensor=[[1, 2, 3], [4, 5, 6]]
x3 = tf.ones_like(tensor)
print(sess.run(x3))
#[[1 1 1]
#[1 1 1]]
x4 = tf.zeros_like(tensor, tf.float32)
print(sess.run(x4))
#[[0. 0. 0.]
#[0. 0. 0.]]
x5 = tf.fill([2,2],1.0)
print(sess.run(x5))
#[[1. 1.]
#[1. 1.]]
def random_normal(shape,mean=0.0,stddev=1.0,dtype=tf.float32,seed=None,name=None) //正太分布随机数,生成一个shape形状的矩阵,均值mean,标准差stddev 。
def truncated_normal(shape, mean=0.0, stddev=1.0, dtype=tf.float32, seed=None, name=None) //截断正态分布随机数,生成一个shape形状的矩阵,均值mean,标准差stddev。和一般的正太分布的产生随机数据比起来,这个函数产生的随机数与均值的差距不会超过两倍的标准差。该函数对比random_normal,矩阵里面的元素不会离均值太远或者太近。举例,当输入参数mean = 0 , stddev =1时,使用tf.truncated_normal的输出是不可能出现[-2,2]以外的点的。
def random_uniform(shape,minval=0,maxval=None,dtype=tf.float32,seed=None,name=None) //均匀分布随机数,生成一个shape形状的矩阵,元素值范围为[minval,maxval]
sess = tf.InteractiveSession()
x1 = tf.random_normal(shape=[1,5],mean=0.0,stddev=1.0,dtype=tf.float32,seed=None,name=None)
print(sess.run(x1))
#[[-0.30120787 -0.0505796 1.1938052 0.19710326 0.5720447 ]]
x2 = tf.truncated_normal(shape=[1,5],mean=0.0,stddev=1.0,dtype=tf.float32,seed=None,name=None)
print(sess.run(x2))
#[[-0.5444954 0.8262541 -1.6569115 0.44797668 -1.3212199 ]]
x3 = tf.random_uniform(shape=[1,5], minval=1.0,maxval=2.0,dtype=tf.float32,seed=None,name=None)
print(sess.run(x3))
#[[1.1269865 1.9669617 1.6314322 1.1152394 1.7218542]]
(二)矩阵数据转换操作
tf.to_double(x, name=’ToDouble’) //将数据x转为64位浮点类型
tf.to_float(x, name=’ToFloat’) //将数据x转为32位浮点类型
tf.to_int32(x,