import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
def add_layer(inputs,in_size,out_size,activation_function=None):
#以高斯分布出现随机矩阵
Weights = tf.Variable(tf.random_normal([in_size,out_size]))
biases = tf.Variable(tf.zeros([1,out_size])+0.1)
Wx_plus_b = tf.matmul(inputs,Weights)+biases
if activation_function is None:
outputs = Wx_plus_b
else:
outputs = activation_function(Wx_plus_b)
return outputs
x_data = np.linspace(-1,1,300)#[:,np.newaxis]
x_data = x_data.reshape(300,1)
#print(x_data.shape)#(300,1)300行1列
noise = np.random.normal(0,0.5,x_data.shape)
y_data = np.square(x_data)-0.5+noise
#prediction = y_data-2
#预定位置,后面输入
xs = tf.placeholder(tf.float32,[None,1])
ys = tf.placeholder(tf.float32,[None,1])
l1 = add_layer(xs,1,10,activation_function=tf.nn.relu)
prediction = add_layer(l1,10,1,activation_function=None)
loss = tf.reduce_mean(tf.reduce_sum(tf.square(ys-prediction),reduction_indices=[1]))
#梯度下降步长为0.1,即学习率
train_step = tf.train.GradientDescentOptimizer(0.1).minimize(loss)
init = tf.global_variables_initializer()#全局初始化
sess = tf.Session()
sess.run(init)
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.scatter(x_data,y_data)
plt.ion()
plt.show()
for i in range(1000):
#批量梯度下降训练
sess.run(train_step,feed_dict = {xs:x_data,ys:y_data})
if i%50 == 0:
#每50次检查loss下降多少
#print(sess.run(loss,feed_dict={xs:x_data,ys:y_data}))
try:
ax.lines.remove(lines[0])
except Exception:
pass
prediction_value = sess.run(prediction,feed_dict={xs:x_data})
lines = ax.plot(x_data,prediction_value,'r-',lw=5)
plt.pause(0.1)
#loss = tf.square(y_data-prediction)
#print(loss.shape)#300行一列(300,1)
#loss = tf.reduce_sum(tf.square(y_data-prediction),reduction_indices=[1])
#print(loss.shape)#(300,)
#loss = tf.reduce_mean(tf.reduce_sum(tf.square(y_data-prediction),reduction_indices=[1]))
#sess = tf.Session()
#print(sess.run(loss))
tensorflow -- 可视化神经网络
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 原文地址:https://finthon.com/tensorflow-playground-nn/ 是不是觉得神...
- 谷歌推出了一个神经网络可视化教学平台“游乐场”Tensorflow Playground。通过浏览器就可以玩玩...
- 文章作者:Tyan博客:noahsnail.com | CSDN | 简书 本文主要是对tensorflow的神经...
- 转自:http://blog.csdn.net/csdn_susan/article/details/466515...