正文
=
tf
.
placeholder
(
tf
.
float32
,
[
2
,
2
])
就是生成了一个2x2的二维矩阵,矩阵中每个元素的类型都是tf.float32(也就是浮点型)。
有时候定义需要训练的参数时候,会定义一个[input
size,output
size]大小的矩阵,其中input
size数输入数据的维度,output
size是输出数据的维度
2.Variable(变量)
官方说明
有些长,我就不引用啦,这里介绍一个简单的用法,有一点变量在声明的时候要有一个初始值
x = tf.Variable(tf.zeros([2,2])) # 声明一个2x2的矩阵,并将矩阵中的所有元素的值赋为0,默认每个元素都是tf.float32类型的数据
y = tf.Variable(1.0, tf.float32) # 声明一个tf.float32的变量,并将初始值设为1.0
我们一般还需要运行下global
variables
initializer真正在TensorFlow的Session中初始化所有变量,后面的样例中也会有体现。
3.Constant(常量)
官方说明 同样不引用啦,这里介绍一个简单的用法
x = tf.constant(3.0, tf.float32) # 定义一个值为3.0的浮点型常量
4.Session(会话)
TensorFlow所有的操作都必须在Session中运行,才能真正起作用,可以将Session当作TensorFlow运行的环境,Session运行完需要close~
#用close()关闭
sess = tf.Session()
sess.run(...)
sess.close()
#使用with..as..语句关闭
with tf.Session() as sess:
sess.run(...)
5.简单使用
我们介绍下3+5应该如何在TensorFlow中实现
import tensorflow as tf
x
= tf.Variable(3, tf.int16) // 声明一个整型变量3
y = tf.Variable(5, tf.int16) // 声明一个整型变量5
z = tf.add(x,y) // z = x + y
init = tf.global_variables_initializer() // 初始化变量的操作
with tf.Session() as sess:
sess.run(init) // 在Session中初始化变量
print(sess.run(z)) // 输出计算出的z值
0x03 样例
Github上有一个比较好的
Demo合集
,有注释有源代码还蛮好的,但今天我们不讲上面的代码,我们讲如何用TF实现线性回归模型。
所谓线性回归模型就是y = W * x + b的形式的表达式拟合的模型。
我们如果想通过深度学习拟合一条直线 y = 3 * x 应该怎么做呢?咱不讲虚的先展示下代码!然后我们在逐步分析。
#coding=utf-8
import tensorflow as tf
x = tf.placeholder(tf.float32)
W