Eu costumava treinar meu modelo na minha máquina local, onde a memória é suficiente apenas para 10 exemplos por lote. No entanto, quando eu migrei meu modelo para a AWS e usei uma GPU maior (Tesla K80), eu poderia acomodar um tamanho de lote de 32. No entanto, todos os modelos da AWS tiveram um desempenho muito, muito ruim, com uma grande indicação de sobreajuste. Por que isso acontece?
O modelo que estou usando atualmente é o modelo inception-resnet-v2, e o problema que tenho como alvo é o de visão computacional. Uma explicação em que consigo pensar é que provavelmente é o processo de norma de lote que o acostuma mais às imagens de lote. Como atenuação, reduzi a média móvel de decaimento batch_norm.
Além disso, devo usar o dropout juntamente com batch_norm? Essa prática é comum?
Minhas imagens de treinamento são de cerca de 5000, mas eu treinei por cerca de 60 épocas. Isso é considerado muito ou devo interromper o treinamento mais cedo?
fonte
Respostas:
Capítulo 6 do livro de Goodfellow :
fonte