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()

上面這行程式碼生成的結果如以下螢幕截圖所示 −

Initialize Variables

我們可以看到,必要時段和迭代次數按輸出所示計算出來。

廣告
© . All rights reserved.