私はTensorFlowを学び、それを単純な線形回帰問題に適用しようとしています。 data
は、形状[42x2]のnumpy.ndarrayです。TensfoFlow:次のエポックで線形回帰の損失が増加する(代わりに減少する)
私はちょっと疑問に思って、それぞれの連続した時代の後に、損失が増えているのです。それぞれの連続した時代とともに失われることはないだろうか? (。どうもありがとう、それに答えるために、あなたの時間を割いて)
1)作成:ここで
は私のコードは、(!あなたは私が同様に出力を共有したい場合、私に知らせて)であります依存/独立変数
X = tf.placeholder(tf.float32, name='X')
Y = tf.placeholder(tf.float32,name='Y')
2)のプレースホルダが
w = tf.Variable(0.0,name='weights')
b = tf.Variable(0.0,name='bias')
3)が定義された各エポック後の重量、バイアス、total_lossためVARS()を作成した損失関数& OPTIM IZER
Y_pred = X * w + b
loss = tf.reduce_sum(tf.square(Y - Y_pred), name = 'loss')
optimizer = tf.train.GradientDescentOptimizer(learning_rate = 0.001).minimize(loss)
4)は、要約イベントに&イベントファイルライタ
tf.summary.scalar(name = 'weight', tensor = w)
tf.summary.scalar(name = 'bias', tensor = b)
tf.summary.scalar(name = 'loss', tensor = loss)
merged = tf.summary.merge_all()
evt_file = tf.summary.FileWriter('def_g')
evt_file.add_graph(tf.get_default_graph())
5)を作成し、
with tf.Session() as sess1:
sess1.run(tf.variables_initializer(tf.global_variables()))
for epoch in range(10):
summary, _,l = sess1.run([merged,optimizer,loss],feed_dict={X:data[:,0],Y:data[:,1]})
evt_file.add_summary(summary,epoch+1)
evt_file.flush()
print(" new_loss: {}".format(sess1.run(loss,feed_dict={X:data[:,0],Y:data[:,1]})))
乾杯セッションのすべてを実行します!
あなたのデータのサンプルを投稿できますか?少なくとも10 –
:20477196.0 :8389799424.0 :3440635019264.0 :9.731749171431463e + 22 :3.99097521643995e + 25 :1.6366924149690585e + 28 :6.712048633325622e 1410998762209280.0 :5.786483681258373e + 17 :+ 20 2.3730280954829e +30 –
Iは非常に多数に、B/W -veと+地域重量スイングに気づく:E0:0.0ワット、0.0 E1 B:45.9618034362793ワット、2.828000068664551 E2 B:-885.352294921875 W、-43.586029052734375 E3 B:W 17974.052734375、b 906.8658447265625 e4:w -363946.125、b -18330.419921875 e5:w 7370275.5、 B 371251.5625 E6:-149254576.0 W、B -7518119.0 E7:3022537472.0ワット、152248672.0 E8 B:-61209063424.0 W、B -3083169792.0 E9:1239537811456.0ワット、62436925440.0 –