Cómo hacer ingeniería de características en aprendizaje automático

Depende del algoritmo que use, realmente, de los supuestos que hace su algoritmo y cómo usa las variables.

Supongamos que usaras un árbol de decisión. Son completamente deterministas en los datos (muy poco fudge aquí), pero es cierto que si una característica es completamente irrelevante (en el contexto de un árbol, lo que supone que dividir el espacio de datos en hiperrectángulos es una buena idea para la tarea en cuestión), siempre tendrán las mismas divisiones. Es decir, si tiene 1000 variables y divide en 15, siempre que tenga esas 15 en un conjunto de 500, 100, 20, hasta 15, el árbol será exactamente el mismo.

Sin embargo, un bosque aleatorio le dará un resultado diferente. Incluso si solo tiene 15 variables divididas de 1000, ya que la selección de variables es estocástica.

Para la regresión lineal o logística, si usa el AIC para la selección del modelo, puede obtener un resultado muy diferente al que usa, por ejemplo, la validación cruzada.

Una variable que es importante para un modelo basado en un árbol podría no ser importante para una regresión lineal.

Realmente depende del propósito, el problema, los datos, el algoritmo utilizado … la lista continúa. Sí, demasiadas características podrían descartar las predicciones. Entonces podría un corte prematuro de características.

(NB La ingeniería de características denota la construcción de nuevas características. La reducción se llama selección de variables o reducción de dimensión. Solo para avisarle).

Apéndice:

Aquí hay un pequeño ejemplo de cómo controlar el problema de la variación de sesgo que se ha mencionado en otra parte simplemente usando un algoritmo diferente. Supongamos que nuestros datos son relativamente “rectangulares” y que los modelos basados ​​en árboles son de alguna manera apropiados.

Un modelo basado en un árbol tiene, en el conjunto de entrenamiento, un sesgo bajo y una gran varianza, por lo que si el conjunto de entrenamiento fuera ligeramente diferente, posiblemente obtendríamos un árbol bastante diferente (o una ruptura hiper-rectangular del espacio de datos).

El embolsado de árboles aumenta el sesgo, pero disminuye la varianza (idealmente).

Convertir los árboles en bosques aleatorios aumenta el sesgo menos que el embolsado (idealmente) y disminuye la varianza al menos tanto como el embolsado (nuevamente, idealmente).

Aquí hay dos preguntas sobre la selección de características y sobre la ingeniería de características.

La selección de funciones, que utiliza menos que todas las funciones disponibles, puede en muchos casos evitar el sobreajuste y mejorar los resultados del modelo. Algunos algoritmos son más resistentes a las características irrelevantes que otros. En algunos casos, la regularización adecuada puede limitar el daño de las funciones redundantes / irrelevantes, pero no todas. Los modelos basados ​​en árboles suelen ser bastante resistentes y, sin embargo, pueden verse perjudicados. En muchos casos, queremos permitir hojas con una cantidad bastante pequeña de muestras (un solo dígito) y en ese escenario, si tenemos muchas características irrelevantes, es probable que una de ellas se seleccione en la división más baja por casualidad, incluso si hay Otra característica con un poco menos de ganancia en la rama pero mucho más en general.

La ingeniería de características es otra cuestión en general. Esta es la parte creativa y, a menudo, requiere comprender el problema y las especialidades de dominio. Dicho esto, hay algunos trucos genéricos aplicables a una amplia gama de problemas. Por ejemplo: codificación de bolsa de palabras para texto, palabras derivadas, una codificación activa de variables categóricas, multiplicación con variable indicadora para modelos lineales, sumando algunas variables para modelos basados ​​en árboles, normalización de registros, puntaje z y muchos más.

Sí, las características menos importantes son menos importantes por una razón. Digamos que usted es profesor y desea elegir pocos estudiantes de posgrado de su perfil de linkedin. El GPA, las cartas de recomendación importarían mucho, pero tal vez no la cantidad de conexiones de linkedin que tienen.

Entonces, o utiliza un tipo de sistema de puntuación donde los hace menos importantes específicamente o los elimina. De lo contrario, si los conserva, no permite que su clasificador sea preciso.

Sí, usar más funciones puede reducir la precisión. Esto es, como lo es todo, la compensación de sesgo-varianza.

EDITAR: basado en el comentario de Justin.

Más características pueden resultar en una mayor varianza, lo que sería preferible si la disminución en el sesgo compensa la mayor varianza. Menos características pueden introducir más sesgos, pero sería preferible si la disminución de la varianza compensa eso.

More Interesting

¿Qué es más exigente, desarrollo de aplicaciones, aprendizaje automático, aprendizaje profundo, inteligencia artificial o IOT?

La IA ha existido por décadas. ¿Qué condujo a toda la publicidad reciente de AI / Deep Learning?

¿Cuál es la mejor computadora portátil que puedo obtener para aprender el aprendizaje profundo con CUDA?

¿Por qué la distribución previa no tiene mucho impacto en la distribución posterior cuando tenemos muchos datos?

¿Cómo se compara el paquete de aprendizaje profundo Mozi con Caffe o Torch7?

Cómo obtener una posición de RA en el Grupo de Aprendizaje Automático de Microsoft Research India

¿Por qué Microsoft decidió usar bosques aleatorios en el Kinect?

¿Ha publicado Factual.com algún trabajo de investigación (o algún asunto técnico importante) sobre las técnicas de aprendizaje automático que utilizan para rastrear y extraer de la web?

¿Cuáles son los tres problemas principales en el pronóstico de energía eólica y solar que requieren atención urgente utilizando algoritmos de aprendizaje automático?

¿Por qué la normalización media ayuda en el descenso del gradiente?

¿Puede el aprendizaje reforzado aprovechar la memoria o transferir el aprendizaje?

¿Cuándo se utilizarían los bosques aleatorios sobre las máquinas potenciadas por gradiente (GBM)?

¿Cuáles son algunos usos prácticos o aplicaciones del conjunto de datos de YouTube 8M?

¿Qué son las medidas completamente aleatorias y cómo / cuándo son útiles?

¿Qué clasificador es el más adecuado para clasificar los signos en un video de lenguaje de señas?