Tensorflow(一) 基础命令

Tensorflow是怎样运作的

1. 导入或生成数据集

2. 对数据进行标准化

3. 将数据集划分成三部分:训练集、测试集合验证(validation)集:验证集用于调整假设参数,以获取一组最好的假设参数

4. 设定算法参数

5. 初始化变量(Variable)和占位符(Placeholder)

6. 定义模型结构

7. 声明损失函数

8. 初始化并训练模型

9. 评估模型

10. 调整假设参数

11. 部署/预测新的输出

声明变量(Variable)和张量(Tensor)

固定张量:

创建一个由0填充的张量:

zero_tsr = tf.zeros([row_dim, col_dim])

创建一个由1填充的张量:

ones_tsr = tf.ones([row_dim, col_dim])

创建一个由常数填充的张量:

filled_tsr = tf.fill([row_dim, col_dim], 42)

创建一个张量类型的常数

constant_tsr = tf.constant([1,2,3])

序列张量:

linear_tsr = tf.linspace(start=0, stop=1, start=3)

integer_seq_tsr = tf.range(start=6, limit=15, delta=3)

随机张量:

randunif_tsr = tf.random_uniform([row_dim, col_dim],minval=0, maxval=1)

randnorm_tsr = tf.random_normal([row_dim, col_dim],mean=0.0,stddev=1.0)

truncnorm_tsr = tf.truncated_normal([row_dim, col_dim],mean=0.0, stddev=1.0)

# mean表示均值,stddev表示偏差

randnorm=tf.random_normal(shape=[1000],mean=0 ,stddev=1.)

randtrun=tf.truncated_normal(shape=[1000],mean=0,stddev=1.)

对比

shuffled_output = tf.random_shuffle(input_tensor)

cropped_image = tf.random_crop(my_image, [height/2, width/2,3])

使用占位符(Placeholder)和变量(Variable)

变量:就是算法中的那些参数,tenserflow框架会时刻追踪着那些变量,调整变量的值,使算法最优化。

placeholder:占位符,你可以往里面喂进制定类型和形状的张量。

代码

使用矩阵

//创建对角矩阵

identity_matrix = tf.diag([1.0, 1.0, 1.0])

//将数组转化为张量

D = tf.convert_to_tensor(np.array([[1., 2., 3.],[-3., -7.,-1.],[0., 5., -2.]]))

//两个矩阵相乘

tf.matmul(m1,m2)

//对矩阵进行转置操作

tf.transpose(m)

//计算矩阵所对应的行列式的值

tf.matrix_determinant(m)

//获取该矩阵的逆矩阵

tf.matrix_inverse(m)

//使用cholesky分解:一个对称正定矩阵可以表示成一个下三角矩阵L和其转置的乘积的分解

tf.cholesky(m)

//获取矩阵的特征值和特征向量

tf.self_adjoint_eig(m)

声明操作(Operation)

abs()

求输入tensor的绝对值

ceil()

对tensor进行向上取整

cos()

求tensor的cos值

exp()

求tensor以e为底的指数

floor()

对tensor进行向下取整

inv()

求tensor的倒数

log()

求tensor的自然对数

maximum()

选取两个tensor中较大的那个元素

minimum()

选取两个tensor中较小的那个元素

neg()

求tensor的负数

pow()

第一个tensor作为底数,第二个tensor作为指数

round()

获取tensor的约数,四舍五入

rsqrt()

求tensor的平方根到倒数

sign()

根据tensor的sign值返回-1,0,1

sin()

求tensor的sin值

sqrt()

求tensor的平方根

square()

求tensor的平方

squared_difference()

求两个tensor的差的平方

输出结果

实现激活函数

sigmod 类:

sigmod: 1/(1+exp(-x))

tanh: ((exp(x)- exp(-x))/(exp(x)+exp(-x))

softsign: x/(abs(x) + 1)

输出图像

ReLu 类:

softplus: log(exp(x) + 1)

ReLu: max(0,x)

ReLu6: min(max(0,x),6)

ExpLu(elu): (exp(x)-1) if x < 0 else x

你可能感兴趣的:(Tensorflow(一) 基础命令)