Aprimorar o desempenho do modelo

Introdução ao Aprendizado Profundo com o PyTorch

Jasmin Ludolf

Senior Data Science Content Developer, DataCamp

Etapas para maximizar desempenho

$$

  • Podemos resolver o problema?

  • Definir uma referência de desempenho

$$

  • Aumentar desempenho no conjunto de validação

$$ $$

  • Obter o melhor desempenho possível

Etapa 1

Etapa 2

Etapa 3

Introdução ao Aprendizado Profundo com o PyTorch

Etapa 1: sobreajuste do conjunto de treinamento

  • Mude o loop de treinamento para sobreajustar um ponto de dados

    features, labels = next(iter(dataloader))
    for i in range(1000):
      outputs = model(features)
      loss = criterion(outputs, labels)
      optimizer.zero_grad()
      loss.backward()
      optimizer.step()
    
    • Deve atingir 1.0 de precisão e 0 de perda
  • Amplie para todo o conjunto de treinamento

    • Mantenha os hiperparâmetros padrão
Introdução ao Aprendizado Profundo com o PyTorch

Etapa 2: reduzir o sobreajuste

  • Meta: maximizar a precisão da validação

  • Experiências com:

    • Dropout
    • Aumento de dados
    • Decaimento de peso
    • Redução da capacidade do modelo

$$

  • Acompanhe cada hiperparâmetro e a precisão da validação

sobreajuste

Introdução ao Aprendizado Profundo com o PyTorch

Etapa 2: reduzir o sobreajuste

$$

Modelo original sobreajusta dados de treinamento performances originais

$$

Modelo atualizado com muita regularização regularização excessiva

Introdução ao Aprendizado Profundo com o PyTorch

Etapa 3: ajuste fino de hiperparâmetros

  • Busca em grade
for factor in range(2, 6):
    lr = 10 ** -factor

busca em grade

  • Busca aleatória
factor = np.random.uniform(2, 6)
lr = 10 ** -factor

busca aleatória

Introdução ao Aprendizado Profundo com o PyTorch

Vamos praticar!

Introdução ao Aprendizado Profundo com o PyTorch

Preparing Video For Download...