Tensorflow-gradient-descent-optimization

提供:Dev Guides
移動先:案内検索

TensorFlow-勾配降下最適化

勾配降下法の最適化は、データサイエンスの重要な概念と考えられています。

勾配降下最適化の実装を理解するために、以下に示す手順を検討してください-

ステップ1

勾配降下最適化を定義するために必要なモジュールとxおよびy変数の宣言を含めます。

import tensorflow as tf

x = tf.Variable(2, name = 'x', dtype = tf.float32)
log_x = tf.log(x)
log_x_squared = tf.square(log_x)

optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(log_x_squared)

ステップ2

必要な変数を初期化し、それぞれの関数で定義および呼び出すためのオプティマイザーを呼び出します。

init = tf.initialize_all_variables()

def optimize():
   with tf.Session() as session:
      session.run(init)
      print("starting at", "x:", session.run(x), "log(x)^2:", session.run(log_x_squared))

      for step in range(10):
         session.run(train)
         print("step", step, "x:", session.run(x), "log(x)^2:", session.run(log_x_squared))
optimize()

上記のコード行は、以下のスクリーンショットに示すように出力を生成します-

変数の初期化

出力に示されているように、必要なエポックと反復が計算されていることがわかります。