import tensorflow as tf
import numpy as np
#create data
x_data = np.random.rand(100).astype(np.float32)
y_data = x_data*0.1 + 0.3
###create tensorflow struture start###
Weight = tf.Variable(tf.random_uniform([1],-1.0,1.0))
biases = tf.Variable(tf.zeros([1]))
y = Weight*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()
###create tensorflow struture end###
sess = tf.Session()
sess.run(init) #very important
for step in range(201):
sess.run(train)
if step ==0:
print (step,sess.run(Weight),sess.run(biases))
说明:
0、tensorlfow对变量的定义,跟C++是一样的,定义完之后,要初始化之后才可以使用
1、如何理解sess.run:sess.run的功能就是2个,从神经网络中取值,执行一个函数,可以理解成一个指针,sess.run(Weight)就是从Weight变量中取值.tensorflow的风格就是定义与执行分开.
2、init = tf.initialize_all_variables() ,sess.run(init)定义完变量之后都要记得初始化,不然会报如下错误:
3、执行结果
转载请注明原文地址: https://ju.6miu.com/read-676615.html