1

我试图使用softmax回归对NN进行建模。 经过999次迭代后,每个数据点的误差约为0.02%,我认为这很好。但是,当我想象的tensorboard模型,我的成本函数没有向0达到代替我像this神经网络模型不学习?

而对于权重和偏置直方图this

我是初学者,我似乎无法理解这个错误。可能是我使用错误的方法来定义成本?

这是我的完整代码供参考。

import tensorflow as tf 
import numpy as np 
import random 

lorange= 1 
hirange= 10 
amplitude= np.random.uniform(-10,10) 
t= 10 
random.seed() 
tau=np.random.uniform(lorange,hirange) 


x_node = tf.placeholder(tf.float32, (10,)) 
y_node = tf.placeholder(tf.float32, (10,)) 

W = tf.Variable(tf.truncated_normal([10,10], stddev= .1)) 
b = tf.Variable(.1) 

y = tf.nn.softmax(tf.matmul(tf.reshape(x_node,[1,10]), W) + b) 

##ADD SUMMARY 

W_hist = tf.histogram_summary("weights", W) 
b_hist = tf.histogram_summary("biases", b) 
y_hist = tf.histogram_summary("y", y) 

# Cost function sum((y_-y)**2) 
with tf.name_scope("cost") as scope: 
    cost = tf.reduce_mean(tf.square(y_node-y)) 
    cost_sum = tf.scalar_summary("cost", cost) 

# Training using Gradient Descent to minimize cost 
with tf.name_scope("train") as scope: 
    train_step = tf.train.GradientDescentOptimizer(0.00001).minimize(cost) 

sess = tf.InteractiveSession() 

# Merge all the summaries and write them out to logfile 
merged = tf.merge_all_summaries() 
writer = tf.train.SummaryWriter("/tmp/mnist_logs_4", sess.graph_def) 
error = tf.reduce_sum(tf.abs(y - y_node)) 


init = tf.initialize_all_variables() 
sess.run(init) 

steps = 1000 

for i in range(steps): 
    xs = np.arange(t) 
    ys = amplitude * np.exp(-xs/tau) 

    feed = {x_node: xs, y_node: ys} 
    sess.run(train_step, feed_dict=feed) 
    print("After %d iteration:" % i) 
    print("W: %s" % sess.run(W)) 
    print("b: %s" % sess.run(b)) 
    print('Total Error: ', error.eval(feed_dict={x_node: xs, y_node:ys})) 
    # Record summary data, and the accuracy every 10 steps 
    if i % 10 == 0: 
     result = sess.run(merged, feed_dict=feed) 
     writer.add_summary(result, i) 

回答

0

我得到了和你一样的情节几次。

发生这种情况的主要原因是我在多个日志文件上运行tensorboard。也就是说,我给TensorBoard的logdir包含多个日志文件。尝试在单个日志文件上运行TensorBoard并让我知道会发生什么

+0

我创建了一个新的日志文件并尝试过。这是我得到 - http://imgur.com/a/NFXul 但成本还没有接近零,任何想法为什么?而且权重和偏差都在我的剧本混乱 我wrote- 作家= tf.train.SummaryWriter( “/ tmp目录/ tensorflow/logdir_1”,sess.graph_def) 和trminal- tensorboard --logdir =/TMP/tensorflow/logdir_1 – zerogravty