Tensorflow02-入门示例

来源:互联网 发布:nba2k17人物数据 编辑:程序博客网 时间:2024/06/07 01:43

具体内容可以参见莫烦教程

这里以一个简单的参数优化作为示例模拟训练的核心过程,提取出编写过程的关键点

1.变量:tensorflow需要使用tensorflow.Variable()来定义变量

2.初始化:变量定义后需要使用tensorflow.initialize_all_variables()来进行初始化

3.会话:一切计算需要使用session.run(var)来进行

4.训练:差值最小化,循环进行


import tensorflow as tfimport numpy as npx_data = np.random.rand(100).astype(np.float32) # 输入值y_data = x_data*0.1 + 0.3 # 正确的函数Weights = tf.Variable(tf.random_uniform([1], -1.0, 1.0)) # 权重,起始值为-1~1之间的一个随机值,通过训练希望接近0.1biases = tf.Variable(tf.zeros([1])) # 偏移量,起始值为0,通过训练希望接近0.3y = Weights*x_data + biases # 模型的初始形式loss = tf.reduce_mean(tf.square(y-y_data)) # 成本函数,表示预测值与正确值之间的差值,optimizer = tf.train.GradientDescentOptimizer(0.5) # 梯度下降法最小化差值,学习效率为0.5train = optimizer.minimize(loss)init = tf.initialize_all_variables() # 初始化所有变量sess = tf.Session() # 定义sessionsess.run(init) # 执行初始化for step in range(201):    sess.run(train) # 执行训练过程    if step % 20 == 0:        print(step,sess.run(Weights),sess.run(biases))

结果

0 [-0.01500437] [ 0.48981807]20 [ 0.04039663] [ 0.33115703]40 [ 0.07888566] [ 0.3110373]60 [ 0.0925203] [ 0.30390993]80 [ 0.09735034] [ 0.3013851]100 [ 0.09906138] [ 0.30049068]120 [ 0.0996675] [ 0.30017382]140 [ 0.09988222] [ 0.30006158]160 [ 0.09995827] [ 0.30002183]180 [ 0.09998522] [ 0.30000773]200 [ 0.09999477] [ 0.30000275]


可以看到,随着训练次数的增多,权重越来越接近0.1,偏移量越来越接近0.3


原创粉丝点击