¿Debería realizarse la selección de características sólo en los datos de entrenamiento (o en todos los datos)? He leído algunos debates y artículos como Guyon (2003) y Singhi y Liu (2006) pero aún no estoy seguro de la respuesta correcta.
La configuración de mi experimento es la siguiente:
- Conjunto de datos: 50 controles sanos y 50 pacientes con enfermedades (unas 200 características que pueden ser relevantes para la predicción de enfermedades).
- La tarea consiste en diagnosticar la enfermedad basándose en las características disponibles.
Lo que hago es
- Tomar todo el conjunto de datos y realizar la selección de características (FS). Mantengo sólo las características seleccionadas para su posterior procesamiento
- Dividir para probar y entrenar, entrenar el clasificador utilizando los datos de entrenamiento y las características seleccionadas. A continuación, aplique el clasificador a los datos de prueba (de nuevo utilizando sólo las características seleccionadas). Se utiliza la validación de exclusión única.
- obtener precisión de clasificación
- Promedio: repetir 1)-3) N veces. $N=50$ (100).
Estoy de acuerdo en que realizar el FS en todo el conjunto de datos puede introducir algún sesgo, pero mi opinión es que se "promedia" durante el promediado (paso 4). ¿Es correcto? (La varianza de la precisión es $<2\%$ )
1 Guyon, I. (2003) "An Introduction to Variable and Feature Selection", The Journal of Machine Learning Research, Vol. 3, pp. 1157-1182
2 Singhi, S.K. y Liu, H. (2006) "Feature Subset Selection Bias for Classification Learning", Proceeding ICML '06 Proceedings of the 23rd international conference on Machine learning, pp. 849-856