Como eu poderia escolher o valor de decadência de peso para a regularização da rede neural?
Como em qualquer hiperparâmetro, você escolhe o valor que produz o melhor desempenho (por exemplo, precisão) em um conjunto de dados mantidos fora. Os passos são os seguintes:
- Decidir um intervalo de valores para experimentar. Digamos que você decida tentar 5 valores: 0.001, 0.01, 0.1, 1, e 10.
- Para cada valor possível, treine a rede no conjunto de treinamento com esse valor como o valor de decaimento de peso.
- Once treinado, avalie a rede em um conjunto de dados held-out. Este conjunto de dados NÃO deve ser o mesmo utilizado para o treinamento. Tome nota do desempenho da rede (depende da tarefa, na classificação você pode medir a precisão, outras tarefas podem ter uma medida mais adequada).
- Agora você tem 5 redes treinadas com cada valor de decaimento de peso possível em sua lista e você tem a medida de desempenho para cada uma delas. Escolha uma rede que tenha o melhor desempenho. Seu valor de decaimento de peso é o que você deve usar para treinar a rede final (usando tanto os dados de treinamento quanto os de retenção).
Esta estratégia é comumente chamada de pesquisa em grade, ou seja, você está pesquisando a melhor configuração de hiperparâmetro a partir de uma grade de valores. Outra estratégia muito popular e frequentemente melhor é a busca aleatória: ao invés de escolher a grade de valores manualmente (passo 1 acima), você apenas fixa uma distribuição de probabilidade para cada hiperparâmetro (por exemplo, distribuição uniforme) e tira amostras a partir dela. Essas amostras são o que você usa para as etapas 2-4. Observe que, independentemente da estratégia, é necessário ter pelo menos 2 conjuntos de dados: conjunto de treinamento e conjunto de retenção (às vezes chamado de conjunto de validação/desenvolvimento). É essencial que você escolha o melhor valor de hiperparâmetro (por exemplo, valor de decaimento de peso, taxa de desistência) que produza o melhor desempenho neste conjunto de retenção, NÃO o conjunto de treinamento no qual você treinou a rede. Se não o fizer, geralmente resultará num valor hiperparâmetro que faz com que a rede se sobreponha aos dados de treino.
Artigos semelhantes
- Como o Amazon SageMaker se compara ao Google Cloud ML Engine para a implantação de uma rede neural?
- Qual é a explicação formal para que um modelo adversário como um ataque de um pixel funcione contra a rede neural?
- Como usar mel e água com o estômago vazio para perder peso/perder peso naturalmente
- Por que não posso perder mais peso e a minha tampa do muffin mesmo que eu siga tudo o que é possível para perder peso (ler descrição)?