TensorFlow - Optimisation de la descente de gradient

L'optimisation de la descente de gradient est considérée comme un concept important en science des données.

Considérez les étapes ci-dessous pour comprendre la mise en œuvre de l'optimisation de la descente de gradient -

Étape 1

Incluez les modules nécessaires et la déclaration des variables x et y à travers lesquelles nous allons définir l'optimisation de la descente de gradient.

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)

Étape 2

Initialisez les variables nécessaires et appelez les optimiseurs pour les définir et les appeler avec la fonction respective.

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

La ligne de code ci-dessus génère une sortie comme indiqué dans la capture d'écran ci-dessous -

Nous pouvons voir que les époques et itérations nécessaires sont calculées comme indiqué dans la sortie.