TensorFlow: optimización del descenso de gradientes
La optimización del descenso de gradientes se considera un concepto importante en la ciencia de datos.
Considere los pasos que se muestran a continuación para comprender la implementación de la optimización del descenso de gradientes:
Paso 1
Incluir los módulos necesarios y la declaración de las variables xey a través de las cuales vamos a definir la optimización del descenso del gradiente.
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)
Paso 2
Inicialice las variables necesarias y llame a los optimizadores para definirlo y llamarlo con la función respectiva.
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 línea de código anterior genera una salida como se muestra en la captura de pantalla a continuación:
Podemos ver que las épocas e iteraciones necesarias se calculan como se muestra en la salida.