Estou fazendo pré-processamento de dados e depois construindo um Convonets nos meus dados.
Minha pergunta é: digamos que eu tenho um total de conjuntos de dados com 100 imagens, eu estava calculando a média para cada uma das 100 imagens e subtraí-la de cada uma das imagens, depois divida-a em conjunto de trem e validação e faço o mesmo etapas a serem processadas em um determinado conjunto de testes, mas parece que essa não é a maneira correta de fazê-lo, de acordo com este link: http://cs231n.github.io/neural-networks-2/#datapre
" Armadilha comum . Um ponto importante a ser destacado sobre o pré-processamento é que qualquer estatística de pré-processamento (por exemplo, a média dos dados) deve ser computada apenas nos dados de treinamento e depois aplicada aos dados de validação / teste. Por exemplo, calculando a média e subtraindo-a de todas as imagens em todo o conjunto de dados e depois dividir os dados em divisões de trem / val / teste seriam um erro.Em vez disso, a média deve ser calculada apenas sobre os dados de treinamento e subtraída igualmente de todas as divisões (trem / val / teste). "
Estou supondo que o autor está dizendo que, não calcule a média e subtraia-a em cada imagem, mas calcule a média do conjunto total de imagens (ou seja (imagem1 + ... + imagem100) / 100) e subtraia a média para cada uma da imagem.
Eu não entendo direito, alguém pode explicar? e também, possivelmente, explique por que o que eu estava fazendo está errado (se está realmente errado).
Respostas:
Vamos supor que você tenha 100 imagens no total; 90 são dados de treinamento e 10 são dados de teste.
fonte
A
desempenho do modelo seA
não generalizar bem para diferentes idades. Se calcularmos a idade média em todo o conjunto de dados, obteremos uma idade média mais representativa. Se agora utilizar este meio-idade imparcial no modeloA
que provavelmente terá um desempenho melhor do que antes, apesar deA
não generalizar bem em idades diferentes).