ComenzarEmpieza gratis

Realizar múltiples actualizaciones de pesos

Ahora vas a hacer múltiples actualizaciones para mejorar drásticamente los pesos de tu modelo y ver cómo mejoran las predicciones en cada actualización.

Para mantener tu código limpio, tienes precargada la función get_slope() que recibe input_data, target y weights como argumentos. También hay una función get_mse() que recibe los mismos argumentos. input_data, target y weights ya están precargados.

Esta red no tiene capas ocultas y va directamente de la entrada (con 3 nodos) a un nodo de salida. Observa que weights es un único array.

También hemos precargado matplotlib.pyplot, y el historial de error se representará una vez que hayas hecho tus pasos de descenso por gradiente.

Este ejercicio forma parte del curso

Introducción al Deep Learning en Python

Ver curso

Instrucciones del ejercicio

  • Usando un bucle for para actualizar los pesos de forma iterativa:
    • Calcula la pendiente usando la función get_slope().
    • Actualiza los pesos usando una tasa de aprendizaje de 0.01.
    • Calcula el error cuadrático medio (mse) con los pesos actualizados usando la función get_mse().
    • Añade mse a mse_hist.
  • Pulsa "Enviar respuesta" para visualizar mse_hist. ¿Qué tendencia observas?

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

n_updates = 20
mse_hist = []

# Iterate over the number of updates
for i in range(n_updates):
    # Calculate the slope: slope
    slope = ____(____, ____, ____)
    
    # Update the weights: weights
    weights = ____ - ____ * ____
    
    # Calculate mse with new weights: mse
    mse = ____(____, ____, ____)
    
    # Append the mse to mse_hist
    ____

# Plot the mse history
plt.plot(mse_hist)
plt.xlabel('Iterations')
plt.ylabel('Mean Squared Error')
plt.show()
Editar y ejecutar código