[editado em 21.7.15 8:31 CEST]
Suponho que você usou o RF para classificação. Como nesse caso, o algoritmo produz árvores totalmente crescidas com nós terminais puros de apenas uma classe de destino.
predict(model, data=X_train)
Essa linha de codificação é como um cachorro perseguindo [~ 66%] da própria cauda. A previsão de qualquer amostra de treinamento é a classe da própria amostra de treinamento. Para a regressão, o RF para se o nó tiver 5 ou menos amostras ou se o nó for puro. Aqui, o erro de previsão será pequeno, mas não 0%.
No aprendizado de máquina, geralmente trabalhamos com grandes espaços de hipóteses. Isso significa que sempre haverá muitas hipóteses / explicações / modelos ainda não falsificados na estrutura de dados do nosso conjunto de treinamento. Na estatística clássica, o espaço das hipóteses costuma ser pequeno e, portanto, o ajuste direto ao modelo é informativo de acordo com alguma teoria de probabilidade assumida. No aprendizado de máquina, a falta de adaptação direta se relaciona com o viés do modelo. Viés é a "inflexibilidade" do modelo. Isso nãode qualquer maneira, fornece uma aproximação do poder de generalização (a capacidade de prever novos eventos). Para modelos algorítmicos, a validação cruzada é a melhor ferramenta para aproximar o poder de generalização, pois nenhuma teoria é formulada. No entanto, se as suposições do modelo de amostragem independente falharem, o modelo poderá ser inútil de qualquer maneira, mesmo quando uma validação cruzada bem executada sugerir o contrário. No final, a prova mais forte é prever satisfatoriamente um número de conjuntos de testes externos de várias origens.
Voltar ao CV: Fora da bolsa geralmente é um tipo de currículo aceito. Pessoalmente, eu considero que o OOB-CV fornece resultados semelhantes aos do CV 5 vezes, mas isso é um incômodo muito pequeno. Se compararmos, digamos RF para SVM, o OOB-CV não é útil, pois normalmente evitamos colocar SVM em sacos. Em vez disso, o SVM e o RF seriam incorporados exatamente no mesmo esquema de validação cruzada, por exemplo, 10 vezes 10 repetições com partições correspondentes para cada repetição. Qualquer etapa de engenharia de recursos também costuma ser necessária para validação cruzada. Se, para manter as coisas limpas, toda a linha de tubulação de dados pudesse ser incorporada no CV.
Se você ajustar seu modelo com seu conjunto de testes (ou validação cruzada), estará inflando novamente seu espaço de hipóteses e o desempenho da previsão validada provavelmente será otimista demais. Em vez disso, você precisará de um conjunto de calibração (ou loop CV de calibração) para ajustar e um conjunto de validação de teste (ou loop CV de validação) para avaliar seu modelo ideal final.
No sentido extremo, sua pontuação de validação só será imparcial se você nunca agir sobre esse resultado, quando o vir. Este é o paradoxo da validação, porque é que obteríamos um conhecimento que só é verdadeiro se você não agir sobre ele. Na prática, a comunidade aceita de bom grado algum viés de publicação, em que os pesquisadores que obtiveram uma validação excessivamente otimista aleatoriamente têm mais probabilidade de publicar do que aqueles que, infelizmente, obtêm uma validação excessivamente pessimista. Portanto, às vezes, por que não é possível reproduzir outros modelos?