【懶懶的Tensorflow學習筆記一之快速入門】

最近在學習tensorflow,在這裏強烈推薦莫煩的教程,可以在B站觀看視頻教程,本篇博客主要是復現他所寫的代碼,不過由於版本不同,對他的代碼進行了更改,話不多說,直接上代碼。

# coding=utf-8
import numpy as np
import tensorflow as tf

# 第一個tensorflow小程序

# create data 創建訓練數據集
x_data = np.random.random(100).astype(np.float32)
y_data = x_data * 0.5 + 1.5

# tensorflow structure start 確定tensorflow結構
Weights = tf.Variable(tf.random_uniform([1], -1, 1))  # 權重,random_uniform([1], -1, 1)表示產生均勻分佈隨機數,維度1,範圍[-1, 1]
Bias = tf.Variable(tf.zeros([1]))  # 偏置

y = Weights * x_data +Bias

# 定義損失函數
loss = tf.reduce_mean(tf.square(y - y_data))
# 定義優化器
optimizer = tf.train.GradientDescentOptimizer(0.5)  # 0.5是學習效率,通常小於1, GradientDescentOptimizer()是梯度下降法的優化器
train = optimizer.minimize(loss)

# 初始化(tf.initialize_all_variables()新版本中已經不能使用,用tf.global_variables_initializer()代替)
init = tf.global_variables_initializer()

sess = tf.Session()  # Session()是會話控制
sess.run(init) # 這一步至關重要

# 訓練500次,每20次輸出權重和偏置
for step in range(500):
    sess.run(train)
    if step % 20 == 0:
        print(step, sess.run(Weights), sess.run(Bias))

注意:原來的tf.initialize_all_variables()在新版本中已經不能使用了,用tf.global_variables_initializer() 代替,(我的版本是Tensorflow 1.4.0版本)





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章