Dado que un modelo es tan bueno como los datos en los que se basa, los científicos de datos dedican gran parte de su tiempo a la data preparation y a la creación de funciones para crear modelos de alta calidad. Según la complejidad de los datos sin procesar y del modelo predictivo deseado, la ingeniería de funciones puede requerir mucho ensayo y error.
Un puñado de fuentes y tutoriales en línea desglosan la ingeniería de características en pasos diferenciados, cuyo número y nombres suelen variar. Estos pasos pueden incluir la comprensión, estructuración o construcción de características, la transformación, la evaluación, la optimización y un largo etcétera4. Aunque esta estratificación puede ser útil para ofrecer una visión general de las tareas que implica la ingeniería de características, sugiere que esta es un proceso lineal. De hecho, se trata de un proceso iterativo.
La ingeniería de características depende del contexto. Requiere un análisis de datos sustancial y conocimiento del dominio. Esto se debe a que la codificación eficaz de las características puede determinarse por el tipo de modelo utilizado, la relación entre los predictores y el resultado, así como por el problema que se pretende abordar con un modelo5. A esto se suma el hecho de que diferentes tipos de conjuntos de datos (por ejemplo, texto versus imágenes) pueden ser más adecuados para diferentes técnicas de ingeniería de características6. Por lo tanto, puede ser difícil hacer observaciones específicas sobre la mejor manera de implementar la ingeniería de características dentro de un algoritmo de machine learning determinado.