ComeçarComece de graça

Fazendo múltiplas atualizações nos pesos

Agora você vai fazer várias atualizações para melhorar bastante os pesos do seu modelo e ver como as previsões melhoram a cada atualização.

Para manter seu código limpo, há uma função get_slope() pré-carregada que recebe input_data, target e weights como argumentos. Há também uma função get_mse() que recebe os mesmos argumentos. input_data, target e weights já foram pré-carregados.

Essa rede não tem camadas ocultas: ela vai diretamente da entrada (com 3 nós) para um nó de saída. Observe que weights é um único array.

Também pré-carregamos matplotlib.pyplot, e o histórico de erro será plotado depois que você concluir os passos de gradiente descendente.

Este exercício faz parte do curso

Introdução a Deep Learning em Python

Ver curso

Instruções do exercício

  • Usando um loop for para atualizar os pesos iterativamente:
    • Calcule a inclinação usando a função get_slope().
    • Atualize os pesos usando uma taxa de aprendizado de 0.01.
    • Calcule o erro quadrático médio (mse) com os pesos atualizados usando a função get_mse().
    • Adicione mse a mse_hist.
  • Clique em "Enviar Resposta" para visualizar mse_hist. Que tendência você observa?

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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 e executar o código