我是靠谱客的博主 安静香烟,这篇文章主要介绍深度学习3:TensorFlow第一个简单Demo,现在分享给大家,希望可以做个参考。

为了了解TensorFlow整体流程,学习一个简单的Demo,使用TensorFlow拟合最简单的线性函数: y=wx+b y = w ∗ x + b

输入为x和y,x为[0,1)的随机数, y=0.1x+0.3 y = 0.1 ∗ x + 0.3 。构造线性模型为y = Weights * x + biases,Weights和biases就是要训练的值。

代码如下:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import tensorflow as tf import numpy as np #creat data x_data = np.random.rand(100).astype(np.float32) ##输入值[0,1)之间的随机数 y_data = x_data * 0.1 + 0.3 ##预测值 ###creat tensorflow structure strat### # 构造要拟合的线性模型 Weights = tf.Variable(tf.random_uniform([1],-1.0,1.0)) biases = tf.Variable(tf.zeros([1])) y = Weights * x_data + biases # 定义损失函数和训练方法 loss = tf.reduce_mean(tf.square(y-y_data)) ##最小化方差 optimizer = tf.train.GradientDescentOptimizer(0.5) train = optimizer.minimize(loss) # 初始化变量 init = tf.initialize_all_variables() ###creat tensorflow structure end### # 启动 sess = tf.Session() sess.run(init) # 训练拟合,每一步训练队Weights和biases进行更新 for step in range(201): sess.run(train) if step % 20 == 0: print(step,sess.run(Weights),sess.run(biases)) ##每20步输出一下W和b # 得到最优拟合结果 W接近于0.1,b接近于0.3

可以看到TensorFlow整体流程如下:
1.输入数据
2.建立模型
3.定义损失函数和训练方法
4.初始化和启动Tensorflow会话
5.训练

结果如下:

复制代码
1
2
3
4
5
6
7
8
9
10
11
0 [ 0.67210519] [-0.04662135] 20 [ 0.24399574] [ 0.21818803] 40 [ 0.13566521] [ 0.27973664] 60 [ 0.10883366] [ 0.29498112] 80 [ 0.10218795] [ 0.29875693] 100 [ 0.10054193] [ 0.29969212] 120 [ 0.10013423] [ 0.29992375] 140 [ 0.10003327] [ 0.29998112] 160 [ 0.10000826] [ 0.29999533] 180 [ 0.10000205] [ 0.29999885] 200 [ 0.10000052] [ 0.29999971]

可以看到拟合效果很不错。

最后

以上就是安静香烟最近收集整理的关于深度学习3:TensorFlow第一个简单Demo的全部内容,更多相关深度学习3内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(90)

评论列表共有 0 条评论

立即
投稿
返回
顶部