ComeçarComece de graça

Congelamento de camadas de um modelo

Você está prestes a fazer o ajuste fino de um modelo com uma nova tarefa depois de carregar pesos pré-treinados. O modelo contém três camadas lineares. Entretanto, como o conjunto de dados é pequeno, você deseja treinar apenas a última camada linear desse modelo e congelar as duas primeiras camadas lineares.

O modelo já foi criado e está disponível na variável model. Você deve usar o método named_parameters do modelo para listar os parâmetros do modelo. Cada parâmetro é descrito por um nome. Esse nome é uma string com a seguinte convenção de nomenclatura: x.name, em que x é o índice da camada.

Lembre-se de que uma camada linear tem dois parâmetros: weight e bias.

Este exercício faz parte do curso

Introdução ao Aprendizado Profundo com o PyTorch

Ver curso

Instruções do exercício

  • Use uma instrução if para verificar se um parâmetro é um peso da primeira ou da segunda camada.
  • Congele os pesos das duas primeiras camadas desse modelo.

Exercício interativo prático

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

for name, param in model.named_parameters():
  
    # Check for first layer's weight
    if name == '____':
   
        # Freeze this weight
        param.____ = ____
        
    # Check for second layer's weight
    if name == '____':
      
        # Freeze this weight
        param.____ = ____
Editar e executar o código