La ingeniería de características puede utilizarse para preparar los datos para el entrenamiento más eficaz de los modelos de IA. Se utilizan diversas técnicas que se ocupan de la creación y modificación de variables (características). El objetivo es crear la estructura de datos individualmente adecuada para el procedimiento de aprendizaje previsto. Así pues, la ingeniería de características es uno de los procesos más importantes del aprendizaje automático y contribuye decisivamente a la calidad y precisión de los algoritmos correspondientes.
¿Qué es la ingeniería de funciones?
La ingeniería de características es un término genérico que designa las técnicas destinadas a preparar los datos de entrenamiento para los modelos de IA. El objetivo es crear una estructura matemática de variables que facilite al algoritmo el tratamiento de los datos y permita un proceso de aprendizaje eficaz. No importa si los datos están en forma de texto, imagen o cualquier otra. Sólo el enfoque práctico y las técnicas específicas se adaptan según el tipo de datos y la naturaleza del modelo de IA. En términos generales, la ingeniería de características implica la creación, selección y modificación de variables apropiadas, denominadas características en este contexto. Su naturaleza, estructura y utilidad para el modelo previsto contribuyen significativamente a su calidad y al éxito del proyecto. Muchos procesos y subáreas del aprendizaje automático están automatizados en gran medida. No es el caso de la ingeniería de características, porque el proceso requiere un alto grado de experiencia y creatividad. Por este motivo, suelen encargarse de él ingenieros experimentados. Ingenieros de datos y científicos.

Características
En el contexto del aprendizaje automático, los rasgos son propiedades, características o variables representativas que se extraen de los datos de entrada y se utilizan para predecir un resultado o una variable objetivo. Las características son, por tanto, una parte esencial del aprendizaje automático y sirven de entrada para los algoritmos de aprendizaje. Aparecen de varias formas: Continuo describe valores métricos no finitos. Discreto son valores numéricos pero contables. A categórico La característica incluye categorías que no tienen que clasificarse. Otro tipo es binario Características. En última instancia, casi todas las propiedades de un objeto pueden codificarse matemáticamente de este modo y hacerse mensurables para un algoritmo.
Por ejemplo, para determinar el precio de un coche, se pueden tener en cuenta características como la marca, el modelo, el año de fabricación, el color, las prestaciones y el equipamiento. Como ya se ha descrito, todas ellas pueden expresarse matemáticamente y proporcionar a un algoritmo información sobre el valor del coche. Lo decisivo es que estas características, necesarias para determinar el precio, estén determinadas y codificadas. En la práctica, sin embargo, los algoritmos de aprendizaje suelen tener que lidiar con un número significativamente mayor de características y rasgos.

¿Por qué es importante la ingeniería de características para el aprendizaje automático?
El aprendizaje automático consiste en gran medida en estadística aplicada y Predicciones probabilísticas. Por esta razón, antes de llevar a cabo un procedimiento de aprendizaje, la información debe ponerse en una forma matemáticamente comprensible. Sólo entonces puede leerse algorítmicamente el contenido informativo de los datos. La ingeniería de rasgos incluye muchos pasos de procesamiento que son necesarios para crear la estructura adecuada mediante rasgos. Esto depende en gran medida de lo que el algoritmo deba aprender y posteriormente ejecutar. Si utilizamos el ejemplo de la determinación del precio de los coches, es fácil ver qué características son necesarias. Si, por el contrario, se requieren modelos complejos de aprendizaje automático para, por ejemplo, imágenes o Reconocimiento de textosya no es tan fácil determinar las características adecuadas y, sobre todo, transformar los datos en consecuencia. Aquí es precisamente donde entran en juego técnicas como la imputación, el escalado o la discretización. La elección y aplicación de estas técnicas requiere una gran sensibilidad y un enfoque individual de cada caso.
No sólo la ausencia de rasgos importantes y bien estructurados, sino también la inclusión de información superflua pueden debilitar gravemente un modelo. Por otra parte, algunas deficiencias del algoritmo pueden compensarse mediante una ingeniería precisa de los rasgos. Este efecto es especialmente grande en el caso de los modelos de predicción que deben tomar decisiones probabilísticas -por ejemplo, para la Clasificación de objetos. En este caso, solemos trabajar con variables de resultado y predictoras que se crean mediante ingeniería de rasgos.
Ingeniería de funciones en 3 pasos
Aunque la ingeniería de características engloba muchas técnicas diferentes, el proceso puede dividirse normalmente en tres fases, que son:
- Preparación de datos
En la mayoría de los casos, los datos brutos son inicialmente inadecuados para la creación de características porque suelen proceder de distintas fuentes y no tienen un formato uniforme. Sin embargo, esto es exactamente lo que suele ser necesario para el aprendizaje automático. Por lo tanto, primero se fusionan, formatean y normalizan los datos. Las técnicas correspondientes incluyen el preprocesamiento, la limpieza, la creación de perfiles, la transformación y la validación de los datos. Dado que este proceso suele revelar ya información relevante, como determinadas palabras clave, también pueden extraerse ya las características iniciales, aunque éstas suelen necesitar un tratamiento posterior.
- Exploración Análisis de datos
El siguiente paso consiste en comprender mejor los datos e identificar correlaciones importantes a través de las cuales puedan crearse otras características significativas. Para ello, los científicos de datos utilizan una amplia gama de herramientas de visualización que les ayudan a determinar el mejor enfoque estadístico y las técnicas adecuadas para el tratamiento posterior de los datos. En concreto, suelen elaborar histogramas, diagramas de caja o gráficos de dispersión para derivar las hipótesis correspondientes.
- Evaluación comparativa
En esta fase de la ingeniería de características, es importante establecer normas para las métricas de precisión y calidad y aplicarlas a todas las características. Este paso es el que más influye en el rendimiento posterior del modelo de aprendizaje automático. En primer lugar, se prueba varias veces con los datos para optimizar aún más las características y expresiones relevantes. Esto se hace seleccionando características especialmente relevantes, pero también transformándolas y recreándolas mediante técnicas de combinación. En principio, la ingeniería de características no sólo se lleva a cabo antes de la fase de entrenamiento, sino que puede utilizarse de nuevo en cualquier momento para optimizar el modelo.

Técnicas populares
Como ya se ha indicado, la gran mayoría de las técnicas que pueden denominarse de ingeniería de características se ocupan de la extracción, transformación, selección y creación de características. He aquí algunos ejemplos concretos:
Imputación
La imputación se utiliza para limpiar los valores que faltan, ya que de lo contrario pueden surgir problemas con las probabilidades nulas, especialmente en los modelos predictivos. Borrar las partes correspondientes de los datos sería una posible solución, pero puede conducir a la pérdida de información valiosa. En su lugar, los valores categóricos que faltan suelen sustituirse por la expresión más frecuente. En cambio, con las lagunas numéricas se calcula la media aritmética de la característica.
Codificación categórica
Un caso clásico de transformación de características. Por regla general, los valores numéricos son más fáciles de entender para un algoritmo que los categóricos. Por este motivo, las expresiones correspondientes suelen recodificarse en números. Con la llamada codificación en caliente, sólo se utilizan ceros y unos sin perder ninguna información de los datos. Sin embargo, el uso demasiado frecuente de esta técnica puede dar lugar a características fuertemente correlacionadas de forma poco natural.

Discretización
La discretización puede utilizarse para convertir una característica continua en una característica discreta. Para ello, los valores se suelen clasificar en los denominados intervalos. Las clases se forman dividiendo los valores en intervalos de tamaño ascendente. Estos intervalos pueden describirse de forma discreta.
Escala
Este método de ingeniería de rasgos se utiliza cuando los algoritmos son demasiado sensibles a determinadas escalas de algunos datos. El escalado mín-máx escala los valores al intervalo entre 0 y 1 y, de este modo, los normaliza. Al valor mínimo se le asigna 0 y al valor máximo 1. El escalado de varianza, por su parte, pretende crear una media de 0 y una varianza de 1 para la característica correspondiente. Para ello, se resta el valor medio de todos los puntos de datos y el resultado se divide por la varianza de la distribución. Estas técnicas permiten crear rangos arbitrarios de valores para una gran variedad de datos sin perder proporciones ni información importante, un principio básico crucial de la ingeniería de rasgos.
Conclusión
Para que el aprendizaje automático sea preciso y específico, no hay forma de evitar la ingeniería de características. Es demasiado importante disponer de la estructura adecuada de datos en forma de características para el Formación de modelos de IA. La elección de las técnicas utilizadas depende en gran medida de los objetivos y de la funcionalidad prevista del algoritmo. Sin embargo, por lo general, la ingeniería de características comprende la extracción, transformación, selección y creación de características. El proceso en bruto puede dividirse en preparación de datos, análisis exploratorio de datos y evaluación comparativa. Las técnicas concretas de ingeniería de características implican principalmente la recodificación matemática, mediante la cual cada característica puede ponerse en la forma adecuada para el procesamiento algorítmico.