Essa questão pode ser muito aberta para obter uma resposta definitiva, mas espero que não.
Algoritmos de aprendizado de máquina, como SVM, GBM, Random Forest etc., geralmente possuem alguns parâmetros livres que, além de algumas orientações básicas, precisam ser ajustados para cada conjunto de dados. Isso geralmente é feito com algum tipo de técnica de re-amostragem (bootstrap, CV etc.) para ajustar o conjunto de parâmetros que fornecem o melhor erro de generalização.
Minha pergunta é: você pode ir longe demais aqui? As pessoas falam sobre fazer pesquisas na grade, mas por que simplesmente não tratar isso como um problema de otimização e detalhar o melhor conjunto de parâmetros possível? Eu perguntei sobre alguns mecanismos disso nesta pergunta, mas ele não recebeu muita atenção. Talvez a pergunta tenha sido mal feita, mas talvez a pergunta em si represente uma abordagem ruim que as pessoas geralmente não fazem?
O que me incomoda é a falta de regularização. Ao re-amostrar, posso descobrir que o melhor número de árvores a crescer em um GBM para este conjunto de dados é 647 com uma profundidade de interação de 4, mas como posso ter certeza de que isso será verdade para novos dados (assumindo a nova população é idêntico ao conjunto de treinamento)? Sem um valor razoável para "encolher" para (ou, se desejar, nenhuma informação prévia informativa) a re-amostragem parece ser o melhor que podemos fazer. Eu simplesmente não ouço nenhuma conversa sobre isso, então isso me faz pensar se há algo que estou perdendo.
Obviamente, há um grande custo computacional associado à realização de muitas e muitas iterações para extrair todo último poder preditivo de um modelo; portanto, isso é algo que você faria se tivesse tempo / esforço para fazer a otimização e tudo. de melhoria de desempenho é valioso.
fonte
Respostas:
Existe uma resposta definitiva para essa pergunta que é "sim, certamente é possível superestimar um critério de seleção de modelo baseado na validação cruzada e acabar com um modelo que generaliza mal! ". Na minha opinião, isso parece não ser amplamente apreciado, mas é uma armadilha substancial na aplicação dos métodos de aprendizado de máquina e é o foco principal da minha pesquisa atual; Eu escrevi dois artigos sobre o assunto até agora
GC Cawley e NLC Talbot, excesso de ajuste na seleção de modelos e viés de seleção subsequente na avaliação de desempenho, Journal of Machine Learning Research, 2010. Research, vol. 11, pp. 2079-2107, julho de 2010. ( www )
que demonstra que o ajuste excessivo na seleção de modelos é um problema substancial no aprendizado de máquina (e você pode obter estimativas de desempenho bastante tendenciosas se cortar os cantos na seleção de modelos durante a avaliação de desempenho) e
GC Cawley e NLC Talbot, Prevenindo o ajuste excessivo na seleção de modelos via regularização bayesiana dos hiperparâmetros, Journal of Machine Learning Research, volume 8, páginas 841-861, abril de 2007. ( www )
em que o critério de seleção de modelo baseado na validação cruzada é regularizado para tentar uma adaptação excessiva na seleção de modelo (que é um problema importante se você usar um kernel com muitos hiperparâmetros).
Estou escrevendo um artigo sobre a seleção de modelos com base em pesquisa de grade no momento, o que mostra que certamente é possível usar uma grade muito boa onde você acaba com um modelo que é estatisticamente inferior a um modelo selecionado por muitos grade mais grossa (foi uma pergunta no StackExchange que me inspirou a pesquisar na pesquisa de grade).
Espero que isto ajude.
PS A avaliação imparcial do desempenho e a seleção confiável de modelos podem, de fato, ser computacionalmente caras, mas, na minha experiência, vale a pena. Validação cruzada aninhada, em que a validação cruzada externa é usada para estimativa de desempenho e a validação cruzada interna para seleção de modelo é uma boa abordagem básica.
fonte
Foi demonstrado que a validação cruzada e a autoinicialização fornecem estimativas da taxa de erro quase imparciais e, em alguns casos, mais precisamente pela autoinicialização sobre a validação cruzada. O problema com outros métodos, como a re-substituição, é que, ao estimar o erro no mesmo conjunto de dados que você ajusta ao classificador, você pode subestimar a taxa de erro e pode ser levado a algoritmos que incluem muitos parâmetros e não prevêem valores futuros com a mesma precisão. um algoritmo ajustado a um pequeno conjunto de parâmetros. A chave para o uso de métodos estatísticos é que os dados que você treinou para o classificador são típicos dos dados que você verá no futuro em que as classes estão ausentes e devem ser previstos pelo classificador. Se você acha que os dados futuros podem ser muito diferentes, os métodos estatísticos não podem ajudar e eu não
fonte
Eu suspeito que uma resposta aqui é que, no contexto da otimização, o que você está tentando encontrar é um mínimo global em uma
noisy
função de custo. Portanto, você tem todos os desafios de uma otimização global multidimensional, além de um componente estocástico adicionado à função de custo.Muitas das abordagens para lidar com os desafios dos mínimos locais e um espaço de pesquisa caro possuem parâmetros que podem precisar de ajuste, como métodos de recozimento simulado ou monte carlo.
Em um universo ideal, computacionalmente ilimitado, suspeito que você possa tentar encontrar um mínimo global de seu espaço de parâmetros com limites adequadamente rigorosos no viés e na variação de sua estimativa da função de erro. Nesse cenário, a regularização não seria um problema, pois você poderia obter novamente uma amostra ad infinitum.
No mundo real, suspeito que você possa se encontrar facilmente em um local mínimo.
Como você mencionou, é um problema separado, mas isso ainda deixa você em aberto devido a problemas de amostragem associados aos dados disponíveis e sua relação com a distribuição subjacente real do espaço de amostra.
fonte
Depende fortemente do algoritmo, mas você certamente pode - embora na maioria dos casos seja apenas um desperdício de esforço benigno.
Portanto, bem, (com base nas práticas presentes em bons periódicos), a validação externa da seleção de parâmetros não é algo que você precisa fazer rigorosamente (diferente da validação da seleção de recursos), mas apenas se a otimização for superficial e o classificador for insensível a os parametros.
fonte
Sim, os parâmetros podem ser "super ajustados" no conjunto de treinamento e teste durante a validação cruzada ou a inicialização. No entanto, existem alguns métodos para evitar isso. O primeiro método simples é dividir seu conjunto de dados em 3 partições, uma para teste (~ 20%), uma para testar parâmetros otimizados (~ 20%) e outra para ajustar o classificador com parâmetros definidos. Só é possível se você tiver um conjunto de dados muito grande. Noutros casos, é sugerida uma dupla validação cruzada.
Romain François e Florent Langrognet, "Validação cruzada dupla para classificação baseada em modelo", 2006
fonte