La ingeniería de características es un paso de preprocesamiento en el aprendizaje automático supervisado y el modelado estadístico [ 1 ] que transforma los datos brutos en un conjunto de entradas más eficaz. Cada entrada comprende varios atributos, conocidos como características . Al proporcionar a los modelos información relevante, la ingeniería de características mejora significativamente su precisión predictiva y su capacidad de toma de decisiones. [ 2 ] [ 3 ] [ 4 ]
Más allá del aprendizaje automático, los principios de la ingeniería de características se aplican en diversos campos científicos, incluida la física. Por ejemplo, los físicos construyen números adimensionales como el número de Reynolds en dinámica de fluidos , el número de Nusselt en transferencia de calor y el número de Arquímedes en sedimentación . También desarrollan primeras aproximaciones de soluciones, como soluciones analíticas para la resistencia de materiales en mecánica. [ 5 ]
Agrupamiento
Una de las aplicaciones de la ingeniería de características ha sido la agrupación de objetos de características o de muestras en un conjunto de datos. En particular, la ingeniería de características basada en la descomposición de matrices se ha utilizado ampliamente para la agrupación de datos bajo restricciones de no negatividad en los coeficientes de las características. Estas incluyen la factorización de matrices no negativas (NMF), [ 6 ] la trifactorización de matrices no negativas (NMTF), [ 7 ] la descomposición/factorización de tensores no negativos (NTF/NTD), [ 8 ] etc. Las restricciones de no negatividad en los coeficientes de los vectores de características extraídos por los algoritmos mencionados anteriormente producen una representación basada en partes, y diferentes matrices de factores exhiben propiedades de agrupación naturales. Se han reportado varias extensiones de los métodos de ingeniería de características mencionados anteriormente en la literatura, incluyendo la factorización con restricciones de ortogonalidad para la agrupación difícil y el aprendizaje de variedades para superar los problemas inherentes con estos algoritmos.
Otras clases de algoritmos de ingeniería de características incluyen el aprovechamiento de una estructura oculta común en múltiples conjuntos de datos interrelacionados para obtener un esquema de agrupamiento consensuado (común). Un ejemplo es la Clasificación Multivista basada en la Descomposición de la Matriz de Consenso (MCMD), [ 2 ] que extrae un esquema de agrupamiento común en múltiples conjuntos de datos. MCMD está diseñado para generar dos tipos de etiquetas de clase (agrupamiento escala-variante e invariante a escala), y:
- es computacionalmente robusto ante la falta de información,
- puede obtener valores atípicos basados en la forma y la escala,
- y puede manejar datos de alta dimensión de manera eficaz.
Las descomposiciones acopladas de matrices y tensores son populares en la ingeniería de características multivista. [ 9 ]
Modelado predictivo
La ingeniería de características en el aprendizaje automático y el modelado estadístico implica seleccionar, crear, transformar y extraer características de los datos. Los componentes clave incluyen la creación de características a partir de datos existentes, la transformación e imputación de características faltantes o inválidas, la reducción de la dimensionalidad de los datos mediante métodos como el Análisis de Componentes Principales (PCA), el Análisis de Componentes Independientes (ICA) y el Análisis Discriminante Lineal (LDA), y la selección de las características más relevantes para el entrenamiento del modelo en función de puntuaciones de importancia y matrices de correlación . [ 10 ]
Las características varían en importancia. [ 11 ] Incluso las características relativamente insignificantes pueden contribuir a un modelo. La selección de características puede reducir el número de características para evitar que un modelo se vuelva demasiado específico para el conjunto de datos de entrenamiento (sobreajuste). [ 12 ]
La explosión de características se produce cuando el número de características identificadas es demasiado grande para una estimación u optimización eficaz del modelo. Las causas comunes incluyen:
- Plantillas de características: implementación de plantillas de características en lugar de codificar nuevas características.
- Combinaciones de características: combinaciones que no pueden representarse mediante un sistema lineal.
La explosión de características puede limitarse mediante técnicas como la regularización , los métodos de kernel y la selección de características . [ 13 ]
Automatización
La automatización de la ingeniería de características es un tema de investigación que se remonta a la década de 1990. [ 14 ] El software de aprendizaje automático que incorpora la ingeniería de características automatizada está disponible comercialmente desde 2016. [ 15 ] La literatura académica relacionada se puede dividir a grandes rasgos en dos tipos:
- El aprendizaje de árboles de decisión multirrelacionales (MRDTL) utiliza un algoritmo supervisado similar a un árbol de decisión .
- La síntesis de características profundas utiliza métodos más sencillos.
Aprendizaje de árboles de decisión multirrelacionales (MRDTL)
El aprendizaje de árboles de decisión multirrelacionales (MRDTL) extiende los métodos tradicionales de árboles de decisión a bases de datos relacionales , manejando relaciones de datos complejas entre tablas. Utiliza de forma innovadora grafos de selección como nodos de decisión , que se refinan sistemáticamente hasta alcanzar un criterio de terminación específico. [ 14 ]
La mayoría de los estudios sobre MRDTL basan sus implementaciones en bases de datos relacionales, lo que genera muchas operaciones redundantes. Estas redundancias pueden reducirse mediante técnicas como la propagación de identificadores de tuplas. [ 16 ] [ 17 ]
Implementaciones de código abierto
Existen varias bibliotecas y herramientas de código abierto que automatizan la ingeniería de características en datos relacionales y series temporales:
- featuretools es una biblioteca de Python para transformar series temporales y datos relacionales en matrices de características para aprendizaje automático. [ 18 ] [ 19 ] [ 20 ]
- MCMD: Un algoritmo de ingeniería de características de código abierto para la agrupación conjunta de múltiples conjuntos de datos. [ 21 ] [ 2 ]
- OneBM o Máquina de un botón combina transformaciones de características y selección de características en datos relacionales con técnicas de selección de características. [ 22 ]
OneBM ayuda a los científicos de datos a reducir el tiempo de exploración de datos, permitiéndoles probar y validar muchas ideas en poco tiempo. Por otro lado, permite a los no expertos, que no están familiarizados con la ciencia de datos, extraer valor de sus datos rápidamente con poco esfuerzo, tiempo y coste. [ 22 ]
- getML community es una herramienta de código abierto para la ingeniería de características automatizada en series temporales y datos relacionales. [ 23 ] [ 24 ] Está implementada en C / C++ con una interfaz Python. [ 24 ] Se ha demostrado que es al menos 60 veces más rápida que tsflex, tsfresh, tsfel, featuretools o kats. [ 24 ]
- tsfresh es una biblioteca de Python para la extracción de características en datos de series temporales. [ 25 ] Evalúa la calidad de las características mediante pruebas de hipótesis. [ 26 ]
- tsflex es una biblioteca de Python de código abierto para extraer características de datos de series temporales. [ 27 ] A pesar de estar escrita completamente en Python, se ha demostrado que es más rápida y eficiente en el uso de memoria que tsfresh, seglearn o tsfel. [ 28 ]
- seglearn es una extensión para datos de series temporales secuenciales multivariadas de la biblioteca scikit-learn de Python. [ 29 ]
- tsfel es un paquete de Python para la extracción de características en datos de series temporales. [ 30 ]
- kats es un conjunto de herramientas de Python para analizar datos de series temporales. [ 31 ]
Síntesis de características profundas
El algoritmo de síntesis de características profundas (DFS) superó a 615 de 906 equipos humanos en una competición. [ 32 ] [ 33 ]
Tiendas destacadas
El almacén de características es donde se almacenan y organizan las características con el propósito explícito de ser utilizadas para entrenar modelos (por científicos de datos) o para realizar predicciones (por aplicaciones que cuentan con un modelo entrenado). Es una ubicación central donde se pueden crear o actualizar grupos de características creadas a partir de múltiples fuentes de datos diferentes, o crear y actualizar nuevos conjuntos de datos a partir de esos grupos de características para entrenar modelos o para su uso en aplicaciones que no desean calcular las características, sino simplemente recuperarlas cuando las necesitan para realizar predicciones. [ 34 ]
Un almacén de características incluye la capacidad de almacenar el código utilizado para generar características, aplicar dicho código a los datos sin procesar y proporcionar esas características a los modelos cuando se soliciten. Entre las funcionalidades útiles se incluyen el control de versiones de las características y las políticas que rigen las circunstancias en las que se pueden utilizar. [ 35 ]
Los almacenes de características pueden ser herramientas de software independientes o estar integrados en plataformas de aprendizaje automático.
Alternativas
La ingeniería de características puede ser un proceso laborioso y propenso a errores, ya que requiere experiencia en el dominio y a menudo implica ensayo y error. [ 36 ] [ 37 ] Los algoritmos de aprendizaje profundo pueden utilizarse para procesar un gran conjunto de datos sin procesar sin tener que recurrir a la ingeniería de características. [ 38 ] Sin embargo, los algoritmos de aprendizaje profundo aún requieren un preprocesamiento y limpieza cuidadosos de los datos de entrada. [ 39 ] Además, elegir la arquitectura, los hiperparámetros y el algoritmo de optimización adecuados para una red neuronal profunda puede ser un proceso iterativo y complejo. [ 40 ]
Véase también
Referencias
- ↑ Hastie, Trevor; Tibshirani, Robert; Friedman, Jerome H. (2009). Los elementos del aprendizaje estadístico: minería de datos, inferencia y predicción . Springer. ISBN 978-0-387-84884-6.
- 1 2 3 Sharma, Shubham; Nayak, Richi; Bhaskar, Ashish (2024-05-01). "Ingeniería de características multivista para la agrupación conjunta diaria de múltiples conjuntos de datos de tráfico" . Transportation Research Part C: Emerging Technologies . 162 104607. Bibcode : 2024TRPC..16204607S . doi : 10.1016/j.trc.2024.104607 . ISSN 0968-090X .
- ↑ Shalev-Shwartz, Shai; Ben-David, Shai (2014). Comprender el aprendizaje automático: de la teoría a los algoritmos . Cambridge: Cambridge University Press. ISBN 978-1-107-05713-5.
- ↑ Murphy, Kevin P. (2022). Aprendizaje automático probabilístico . Cambridge, Massachusetts: The MIT Press (Copyright 2022 Instituto Tecnológico de Massachusetts, esta obra está sujeta a una licencia Creative Commons CC-BY-NC-ND). ISBN 978-0-262-04682-4.
- ↑ MacQueron C (2021). MEZCLA SÓLIDO-LÍQUIDO EN TANQUES AGITADOS: Modelado, validación, optimización del diseño y predicción de la calidad de la suspensión (Informe). doi : 10.13140/RG.2.2.11074.84164/1 .
- ↑ Lee, Daniel D.; Seung, H. Sebastian (1999). "Aprendizaje de las partes de los objetos mediante factorización de matrices no negativas" . Nature . 401 (6755): 788– 791. Bibcode : 1999Natur.401..788L . doi : 10.1038/44565 . ISSN 1476-4687 . PMID 10548103 .
- ↑ Wang, Hua; Nie, Feiping; Huang, Heng; Ding, Chris (2011). "Co-agrupamiento de alto orden basado en la trifactorización de matrices no negativas y su rápida implementación" . 2011 IEEE 11.ª Conferencia Internacional sobre Minería de Datos . IEEE. págs. 774–783 . doi : 10.1109/icdm.2011.109 . ISBN 978-1-4577-2075-8.
- ↑ Lim, Lek-Heng; Comon, Pierre (2009-04-12). "Aproximaciones no negativas de tensores no negativos". arXiv : 0903.4530 [ cs.NA ].
- ↑ Nayak, Richi ; Luong, Khanh (2023). "Aprendizaje multiaspecto". Intelligent Systems Reference Library . 242. doi : 10.1007/978-3-031-33560-0 . ISBN 978-3-031-33559-4ISSN 1868-4394
- ↑ "Ingeniería de características - Perspectiva de aprendizaje automático" . docs.aws.amazon.com . Consultado el 1 de marzo de 2024 .
- ↑ "Ingeniería de características" (PDF) . 22 de abril de 2010. Consultado el 12 de noviembre de 2015 .
- ↑ "Ingeniería y selección de características" (PDF) . Alexandre Bouchard-Côté. 1 de octubre de 2009. Consultado el 12 de noviembre de 2015 .
- ↑ "Ingeniería de características en aprendizaje automático" (PDF) . Zdenek Zabokrtsky. Archivado del original (PDF) el 4 de marzo de 2016. Consultado el 12 de noviembre de 2015 .
- 1 2 Knobbe AJ, Siebes A, Van Der Wallen D (1999). "Inducción de árboles de decisión multirrelacionales" (PDF) . Principios de minería de datos y descubrimiento de conocimiento . Notas de clase en informática. Vol. 1704. págs. 378–383 . doi : 10.1007/978-3-540-48247-5_46 . ISBN 978-3-540-66490-1.
- ↑ "Todo se trata de las características" . Blog de Reality AI . Septiembre de 2017.
- ↑ Yin X, Han J, Yang J, Yu PS (2004). "CrossMine: Clasificación eficiente a través de múltiples relaciones de bases de datos". Actas de la 20.ª Conferencia Internacional sobre Ingeniería de Datos . págs. 399–410 . doi : 10.1109/ICDE.2004.1320014 . ISBN 0-7695-2065-0. S2CID 1183403 .
- ↑ Frank R, Moser F, Ester M (2007). "Un método para la clasificación multirrelacional mediante funciones de agregación de características únicas y múltiples". Descubrimiento de conocimiento en bases de datos: PKDD 2007. Notas de clase en informática. Vol. 4702. págs. 430–437 . doi : 10.1007/978-3-540-74976-9_43 . ISBN 978-3-540-74975-2.
- ↑ "¿Qué es Featuretools?" . Consultado el 7 de septiembre de 2022 .
- ↑ "Featuretools - Un marco de trabajo Python de código abierto para la ingeniería de características automatizada" . Archivado del original el 18 de agosto de 2019. Recuperado el 7 de septiembre de 2022 .
- ↑ "github: alteryx/featuretools" . GitHub . Consultado el 7 de septiembre de 2022 .
- ↑ Sharma, Shubham, mcmd: Marco de clasificación multivista basado en la descomposición de la matriz de consenso desarrollado por Shubham Sharma en QUT , consultado el 14 de abril de 2024.
- 1 2 Thanh Lam, Hoang; Thiebaut, Johann-Michael; Sinn, Mathieu; Chen, Bei; Mai, Tiep; Alkan, Oznur (2017-06-01). "Máquina de un botón para automatizar la ingeniería de características en bases de datos relacionales". arXiv : 1706.00327 [ cs.DB ].
- ↑ "Documentación de getML" . Consultado el 7 de septiembre de 2022 .
- 1 2 3 "github: getml/getml-community" . GitHub . Consultado el 7 de septiembre de 2022 .
- ↑ "Documentación de tsfresh" . Consultado el 7 de septiembre de 2022 .
- ↑ "Extracción de características de series temporales basada en pruebas de hipótesis escalables (tsfresh – Un paquete de Python)" . Consultado el 7 de septiembre de 2022 .
- ↑ "predict-idlab/tsflex" . GitHub . Consultado el 7 de septiembre de 2022 .
- ↑ Van Der Donckt, Jonás; Van Der Donckt, Jeroen; Deprost, Emiel; Van Hoecke, Sofie (2022). "tsflex: procesamiento flexible de series temporales y extracción de características" . SoftwareX . 17 100971. arXiv : 2111.12429 . Código Bib : 2022SoftX..1700971V . doi : 10.1016/j.softx.2021.100971 . S2CID 244527198 . Consultado el 7 de septiembre de 2022 .
- ↑ "Guía del usuario de seglearn" . Consultado el 7 de septiembre de 2022 .
- ↑ "¡Bienvenido a la documentación de TSFEL!" . Consultado el 7 de septiembre de 2022 .
- ↑ "github: facebookresearch/Kats" . GitHub . Consultado el 7 de septiembre de 2022 .
- ↑ "Automatización del análisis de macrodatos" . 16 de octubre de 2015.
- ↑ Kanter, James Max; Veeramachaneni, Kalyan (2015). "Síntesis profunda de características: Hacia la automatización de las iniciativas de ciencia de datos". 2015 IEEE International Conference on Data Science and Advanced Analytics (DSAA) . pp. 1–10 . doi : 10.1109/DSAA.2015.7344858 . ISBN 978-1-4673-8272-4. S2CID 206610380 .
- ↑ "¿Qué es un almacén de características?" . Consultado el 19 de abril de 2022 .
- ↑ "Introducción a las tiendas de características" . Consultado el 15 de abril de 2021 .
- ↑ "Ingeniería de características en aprendizaje automático" . Programa de Educación en Ingeniería (EngEd) | Sección . Consultado el 21 de marzo de 2023 .
- ↑ explorium_admin (25/10/2021). "5 razones por las que la ingeniería de características es un desafío" . Explorium . Consultado el 21/03/2023 .
- ↑ Spiegelhalter, DJ (2019). El arte de la estadística: aprender de los datos . [Londres] Reino Unido. ISBN 978-0-241-39863-0OCLC 1064776283
{{cite book}}: CS1 mantenimiento: falta el editor de ubicación ( enlace ) - ↑ Sarker IH (noviembre de 2021). " Aprendizaje profundo: una visión general completa de técnicas, taxonomía, aplicaciones y direcciones de investigación" . SN Computer Science . 2 (6) 420. doi : 10.1007/s42979-021-00815-1 . PMC 8372231. PMID 34426802 .
- ↑ Bengio, Yoshua (2012), "Recomendaciones prácticas para el entrenamiento basado en gradientes de arquitecturas profundas" , Redes neuronales: trucos del oficio , Lecture Notes in Computer Science, vol. 7700, Berlín, Heidelberg: Springer Berlin Heidelberg, pp. 437–478 , arXiv : 1206.5533 , doi : 10.1007/978-3-642-35289-8_26 , ISBN 978-3-642-35288-1, S2CID 10808461 , consultado el 21-03-2023
Lecturas adicionales
- Boehmke B, Greenwell B (2019). «Ingeniería de características y objetivos». Aprendizaje automático práctico con R. Chapman & Hall. págs. 41–75 . ISBN 978-1-138-49568-5.
- Zheng A, Casari A (2018). Ingeniería de características para el aprendizaje automático: principios y técnicas para científicos de datos . O'Reilly. ISBN 978-1-4919-5324-2.
- Zumel N, Mount (2020). «Ingeniería de datos y modelado de datos». Ciencia de datos práctica con R (2.ª ed.). Manning. págs. 113–160 . ISBN 978-1-61729-587-4.
- Abououf, M., Singh, S., Mizouni, R., Otrok, H. (2024), "Enfoque basado en ingeniería de características y aprendizaje profundo para la detección de eventos en Internet de las Cosas Médicas (MIoT)", Internet of Things , 26 101191, Elsevier BV, doi : 10.1016/j.iot.2024.101191
- Chicco D, Oneto L, Tavazzi E (diciembre de 2022). "Once consejos rápidos para la limpieza de datos y la ingeniería de características" . PLOS Computational Biology . 18 (12) e1010718. Bibcode : 2022PLSCB..18E0718C . doi : 10.1371 / journal.pcbi.1010718 . PMC 9754225. PMID 36520712. S2CID 254733288 .
- Aprendizaje automático
- Análisis de datos