capítulos anteriores
Treinamento e teste em amostras com distribuição diferente
36. Quando você precisa treinar e testar algoritmos em diferentes distribuições
Os usuários do seu aplicativo para gatos carregaram 10.000 imagens, marcadas por você como imagens com gatos e imagens sem gatos. Você também tem uma grande seleção de 200.000 imagens coletadas online. Como então escolher amostras de treinamento, validação e teste?
Como 10.000 imagens carregadas pelos usuários refletem com precisão a distribuição probabilística real dos dados nos quais seu algoritmo deve funcionar bem, você pode usá-las para validação e amostras de teste. Se você estiver aprendendo um algoritmo de aprendizado profundo que exige muitos dados, poderá usar 200.000 exemplos adicionais da Internet para treiná-lo. Nesse caso, seu treinamento e teste com uma amostra de validação terão uma distribuição de probabilidade diferente. Como isso afetará seu trabalho?
Em vez de mexer na seleção de dados para treinamento, validação e amostras de teste, poderíamos pegar todas as 210.000 de nossas imagens, misturá-las e selecionar dados aleatoriamente para cada amostra. Nesse caso, todas as três amostras conterão dados da mesma distribuição.
Mas sou contra essa abordagem. Devido ao fato de que cerca de 97,6% dos dados (205.000 / 210.000 ± 97,6%) das amostras de validação e teste serão coletados de dados encontrados na Internet (não recebidos dos usuários) e não refletirão a distribuição real na qual é necessário obter alta qualidade. Lembre-se de nossa recomendação para a seleção de amostras de validação e teste:
Escolha amostras de validação e teste que refletem os dados que seu algoritmo receberá após iniciar o aplicativo e no qual ele deve funcionar bem
, , .
: . « », « » « ». . A B, . ( «» , , .) .
. , . , . , , .
, . , , , .
, 10000 , 5000 . 5000 . , 205 000, 5000 , 200 000 , . .
. , , . 20 000 , . 500 000 , . 10 000 10 000 500 000 .
, , , , .
37. ,
, 10 000 . . 20 000 , . 20 000 + 10 000 = 30 000 20 000 , ?
( , ), , . , , 20000 , .
, , . / , 20000 . , , .
, , x -> y, . , - , , , , , .
20000 :
- , . , , , . , .
- , (, , , . .). , , «» . , , , , . , .
, . , , , « - , . , »
, , , . , , , . «» , , .
( ), , .
, , , . , , , , , . , :

Esses documentos não contêm nada parecido com gatos. Eles também são completamente diferentes das distribuições de validação e amostras de teste. Não faz sentido incluir esses dados como exemplos negativos. O benefício do primeiro efeito descrito acima será insignificante - é improvável que a rede neural possa extrair qualquer coisa desses dados que o ajude a funcionar melhor nas amostras de validação e teste do seu aplicativo. A inclusão desses dados levará à perda de recursos de computação e, possivelmente, reduzirá a capacidade da rede neural de aproximar funções (em última análise, reduzir seus recursos de reconhecimento).
continuação