2017-03-10 13 views
0

これがこれを起こすのに適切かどうかはわかりません。私はhttps://www.tensorflow.org/get_started/get_started以下だったし、次のサンプルコードに出くわした:TensorFlow入門ガイド

W = tf.Variable([.3], tf.float32) 

b = tf.Variable([-.3], tf.float32) 

x = tf.placeholder(tf.float32) 

linear_model = W * x + b 


In the section on loss function it has the following: 

y = tf.placeholder(tf.float32) 

squared_deltas = tf.square(linear_model - y) 

loss = tf.reduce_sum(squared_deltas) 

print(sess.run(loss, {x:[1,2,3,4], y:[0,-1,-2,-3]})) 

なぜy [0,-1,-2,-3]の値はありますか?

linear_model = W * x + b, 

yは0.3x-0.3である。したがって、[1,2,3,4]のxについては、yは[0,0.3,0.6,0.9]でなければなりません。 何か不足していますか?

答えて

0

はい、あなたは何か不足しています。この演習の目的は、最初にグラフ(W * x + b = y)を作成してからプレースホルダの変数を指定することを示すことです。 これを行うには、xとyを指定して、期待したワット(y変数)と得たもの(linear_model変数)の違いを確認します。

この方程式の結果を、この方程式から抜け出したいものと混同しています。チュートリアルで進めば、あなたはおそらくあなたがあなたが期待する解決策を得るために体重を鍛えることができるかを学ぶでしょう。

幸運を祈る!

+0

ありがとうございましたVijay – ChoongPeng

+0

と説明のためのメーター – ChoongPeng

0

このコードスニペットでは、すでに理解しているように、「x」が入力し、「y」はラベルの目的に役立ちます。

'W'と 'b'は、x = [1,2,3,4]のときにyが[0、-1、-2、-3 ]。

「W」と「b」の値は初期値です。 このコードには含まれていませんが、損失関数に基づいて勾配を計算した後に更新する更新ステップがあります。数回反復した後、x = [1,2,3,4]のときy = [0、-1、-2、-3]となるように 'W'と 'b'を得るべきです。