Li algumas das postagens sobre seleção de recursos e validação cruzada, mas ainda tenho dúvidas sobre o procedimento correto.
Suponha que eu tenha um conjunto de dados com 10 recursos e desejo selecionar os melhores. Suponha também que estou usando um classificador de vizinho mais próximo. Posso executar uma pesquisa exaustiva usando a validação cruzada para estimar a taxa de erro como guia para escolher os melhores recursos? Algo como o seguinte pseudo-código
for i=1:( 2^10 -1)
error(i)= crossval(1-nn, selected_fetures(i))
end
i=find(erro(i)==min(error(i));
selected_fetures= selected_features(i);
O que estou tentando explicar neste pseudo-código é que estou executando a validação cruzada para todas as combinações possíveis de recursos e escolha a combinação que fornece o erro mínimo.
Eu acho que esse procedimento está correto porque estou executando uma pesquisa exaustiva. A escolha dos recursos não foi baseada em todo o conjunto de dados, mas no erro médio em cada partição. Estou ajustando demais o modelo com essa seleção de recurso?