stringtranslate.com

Ingeniería de características

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 sin procesar en un conjunto de entradas más efectivo. 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]

Agrupación

Una de las aplicaciones de la ingeniería de características ha sido la agrupación de objetos de características u objetos de muestra en un conjunto de datos. Especialmente, la ingeniería de características basada en descomposiciones matriciales/tensorales se ha utilizado ampliamente para la agrupación de datos bajo restricciones de no negatividad en los coeficientes de características. Estos incluyen Factorización matricial no negativa (NMF), [6] Trifactorización matricial no negativa (NMTF), [7] Descomposición/factorización de tensor no negativo (NTF/NTD) [8] , etc. Las restricciones de no negatividad sobre los coeficientes de los vectores de características extraídos por los algoritmos mencionados anteriormente se obtiene una representación basada en partes y diferentes matrices de factores exhiben propiedades de agrupación naturales. En la literatura se han informado varias extensiones de los métodos de ingeniería de características mencionados anteriormente, incluida la factorización restringida por ortogonalidad para la agrupación estricta y el aprendizaje múltiple para superar los problemas inherentes a estos algoritmos.

Otra clase de algoritmos de ingeniería de características incluye el aprovechamiento de una estructura oculta común en múltiples conjuntos de datos interrelacionados para obtener un esquema de agrupamiento consensuado (común). Los ejemplos incluyen la clasificación de vistas múltiples basada en el algoritmo de descomposición matricial de consenso (MCMD) [9] que extrae un esquema de agrupación común en múltiples conjuntos de datos. El algoritmo está diseñado para generar dos tipos de etiquetas de clase (agrupación de escala variable y de escala invariante), tiene solidez computacional ante la información faltante, puede obtener valores atípicos basados ​​en forma y escala y puede manejar datos de alta dimensión de manera efectiva. Las descomposiciones de matrices acopladas y tensores se utilizan popularmente en la ingeniería de funciones de múltiples vistas. [10]

Modelado predictivo

La ingeniería de funciones en el aprendizaje automático y el modelado estadístico implica seleccionar, crear, transformar y extraer funciones de 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 no válidas, la reducción de la dimensionalidad de los datos a través de 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 los más relevantes. Características para el entrenamiento de modelos basadas en puntuaciones de importancia y matrices de correlación . [11]

Las características varían en importancia. [12] Incluso características relativamente insignificantes pueden contribuir a un modelo. La selección de funciones puede reducir la cantidad de funciones para evitar que un modelo se vuelva demasiado específico para el conjunto de datos de entrenamiento (sobreajuste). [13]

La explosión de características ocurre cuando la cantidad de características identificadas es demasiado grande para una estimación u optimización efectiva del modelo. Las causas comunes incluyen:

La explosión de funciones se puede limitar mediante técnicas como: regularización , métodos del kernel y selección de funciones . [14]

Automatización

La automatización de la ingeniería de funciones es un tema de investigación que se remonta a la década de 1990. [15] El software de aprendizaje automático que incorpora ingeniería de funciones automatizada está disponible comercialmente desde 2016. [16] La literatura académica relacionada se puede dividir aproximadamente en dos tipos:

Aprendizaje de árboles de decisión multirelacional (MRDTL)

El aprendizaje de árboles de decisión multirelacional (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 gráficos de selección como nodos de decisión , refinados sistemáticamente hasta alcanzar un criterio de terminación específico. [15]

La mayoría de los estudios MRDTL basan sus implementaciones en bases de datos relacionales, lo que resulta en muchas operaciones redundantes. Estas redundancias se pueden reducir mediante el uso de técnicas como la propagación de ID de tupla. [17] [18]

Implementaciones de código abierto

Existen varias bibliotecas y herramientas de código abierto que automatizan la ingeniería de funciones en datos relacionales y series temporales:

Síntesis profunda de características

El algoritmo de síntesis profunda de características (DFS) venció a 615 de 906 equipos humanos en una competencia. [37] [38]

Tiendas de características

El almacén de características es donde las características se almacenan y organizan con el propósito explícito de usarse para entrenar modelos (por científicos de datos) o hacer predicciones (por aplicaciones que tienen un modelo entrenado). Es una ubicación central donde puede 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 de esos grupos de características para entrenar modelos o para usar en aplicaciones que no desean calcular las características sino simplemente recuperarlos cuando los necesite para hacer predicciones. [39]

Un almacén de funciones incluye la capacidad de almacenar código utilizado para generar funciones, aplicar el código a datos sin procesar y ofrecer esas funciones a los modelos que lo soliciten. Las capacidades útiles incluyen control de versiones de funciones y políticas que rigen las circunstancias bajo las cuales se pueden utilizar las funciones. [40]

Las tiendas de funciones pueden ser herramientas de software independientes o integrarse en plataformas de aprendizaje automático.

Alternativas

La ingeniería de funciones puede ser un proceso lento y propenso a errores, ya que requiere experiencia en el dominio y, a menudo, implica prueba y error. [41] [42] Los algoritmos de aprendizaje profundo se pueden utilizar para procesar un gran conjunto de datos sin procesar sin tener que recurrir a la ingeniería de funciones. [43] Sin embargo, los algoritmos de aprendizaje profundo aún requieren un preprocesamiento y una limpieza cuidadosos de los datos de entrada. [44] Además, elegir la arquitectura, los hiperparámetros y el algoritmo de optimización adecuados para una red neuronal profunda puede ser un proceso desafiante e iterativo. [45]

Ver también

Referencias

  1. ^ Hastie, Trevor; Tibshirani, Robert; Friedman, Jerome H. (2009). Los elementos del aprendizaje estadístico: minería de datos, inferencia y predicción. Saltador. ISBN 978-0-387-84884-6.
  2. ^ Sharma, Shubham; Nayak, Richi; Bhaskar, Ashish (1 de mayo de 2024). "Ingeniería de funciones de vista múltiple para la agrupación conjunta diaria de múltiples conjuntos de datos de tráfico". Investigación en transporte, parte C: tecnologías emergentes . 162 : 104607. Código bibliográfico : 2024TRPC..16204607S. doi : 10.1016/j.trc.2024.104607 . ISSN  0968-090X.
  3. ^ Shalev-Shwartz, Shai; Ben-David, Shai (2014). Comprensión del aprendizaje automático: de la teoría a los algoritmos . Cambridge: Prensa de la Universidad de Cambridge. ISBN 9781107057135.
  4. ^ Murphy, Kevin P. (2022). Aprendizaje automático probabilístico . Cambridge, Massachusetts: The MIT Press (Copyright 2022 Instituto de Tecnología de Massachusetts, este trabajo está sujeto a una licencia Creative Commons CC-BY-NC-ND). ISBN 9780262046824.
  5. ^ 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.
  6. ^ Lee, Daniel D.; Seung, H. Sebastián (1999). "Aprendizaje de las partes de objetos mediante factorización matricial no negativa". Naturaleza . 401 (6755): 788–791. Código Bib :1999Natur.401..788L. doi :10.1038/44565. ISSN  1476-4687. PMID  10548103.
  7. ^ Wang, Hua; Nie, Feiping; Huang, Heng; Ding, Chris (2011). "Coagrupación de alto orden basada en 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.
  8. ^ Lim, Lek-Heng; Común, Pierre (12 de abril de 2009). "Aproximaciones no negativas de tensores no negativos". arXiv : 0903.4530 [cs.NA].
  9. ^ Sharma, Shubham; Nayak, Richi; Bhaskar, Ashish (1 de mayo de 2024). "Ingeniería de funciones de vista múltiple para la agrupación conjunta diaria de múltiples conjuntos de datos de tráfico". Investigación en transporte, parte C: tecnologías emergentes . 162 : 104607. Código bibliográfico : 2024TRPC..16204607S. doi : 10.1016/j.trc.2024.104607 . ISSN  0968-090X.
  10. ^ Nayak, Richi; Luong, Khanh (2023). "Aprendizaje multiaspecto". Biblioteca de referencia de sistemas inteligentes . 242 . doi :10.1007/978-3-031-33560-0. ISBN 978-3-031-33559-4. ISSN  1868-4394.
  11. ^ "Ingeniería de funciones: lente de aprendizaje automático". docs.aws.amazon.com . Consultado el 1 de marzo de 2024 .
  12. ^ "Ingeniería de funciones" (PDF) . 22 de abril de 2010 . Consultado el 12 de noviembre de 2015 .
  13. ^ "Ingeniería y selección de funciones" (PDF) . Alexandre Bouchard-Côté. 1 de octubre de 2009 . Consultado el 12 de noviembre de 2015 .
  14. ^ "Ingeniería de funciones en aprendizaje automático" (PDF) . Zdenek Zabokrtsky. Archivado desde el original (PDF) el 4 de marzo de 2016 . Consultado el 12 de noviembre de 2015 .
  15. ^ ab Knobbe AJ, Siebes A, Van Der Wallen D (1999). "Inducción del árbol de decisión multirelacional" (PDF) . Principios de minería de datos y descubrimiento de conocimientos . Apuntes de conferencias sobre informática. vol. 1704, págs. 378–383. doi :10.1007/978-3-540-48247-5_46. ISBN 978-3-540-66490-1.
  16. ^ "Se trata de las funciones". Blog de realidad IA . Septiembre de 2017.
  17. ^ Yin X, Han J, Yang J, Yu PS (2004). "CrossMine: clasificación eficiente en múltiples relaciones de bases de datos". Actas. XX Congreso Internacional de Ingeniería de Datos . págs. 399–410. doi :10.1109/ICDE.2004.1320014. ISBN 0-7695-2065-0. S2CID  1183403.
  18. ^ Frank R, Moser F, Ester M (2007). "Un método de clasificación multirelacional utilizando funciones de agregación de características únicas y múltiples". Descubrimiento de conocimientos en bases de datos: PKDD 2007 . Apuntes de conferencias sobre informática. vol. 4702, págs. 430–437. doi :10.1007/978-3-540-74976-9_43. ISBN 978-3-540-74975-2.
  19. ^ "¿Qué son las herramientas de funciones?" . Consultado el 7 de septiembre de 2022 .
  20. ^ "Featuretools: un marco de Python de código abierto para la ingeniería de funciones automatizada" . Consultado el 7 de septiembre de 2022 .
  21. ^ "github: alteryx/featuretools". GitHub . Consultado el 7 de septiembre de 2022 .
  22. ^ Sharma, Shubham, mcmd: marco de clasificación de vistas múltiples basado en la descomposición de matrices de consenso desarrollado por Shubham Sharma en QUT , consultado el 14 de abril de 2024
  23. ^ Sharma, Shubham; Nayak, Richi; Bhaskar, Ashish (1 de mayo de 2024). "Ingeniería de funciones de vista múltiple para la agrupación conjunta diaria de múltiples conjuntos de datos de tráfico". Investigación en transporte, parte C: tecnologías emergentes . 162 : 104607. Código bibliográfico : 2024TRPC..16204607S. doi : 10.1016/j.trc.2024.104607 . ISSN  0968-090X.
  24. ^ Thanh Lam, Hoang; Thiebaut, Johann-Michael; Sinn, Mathieu; Chen, Bei; Mai, Tiep; Alkan, Oznur (1 de junio de 2017). "Máquina de un botón para automatizar la ingeniería de funciones en bases de datos relacionales". arXiv : 1706.00327 [cs.DB].
  25. ^ Thanh Lam, Hoang; Thiebaut, Johann-Michael; Sinn, Mathieu; Chen, Bei; Mai, Tiep; Alkan, Oznur (1 de junio de 2017). "Máquina de un botón para automatizar la ingeniería de funciones en bases de datos relacionales". arXiv : 1706.00327 [cs.DB].
  26. ^ "obtener documentación de ML" . Consultado el 7 de septiembre de 2022 .
  27. ^ "github: getml/getml-comunidad". GitHub . Consultado el 7 de septiembre de 2022 .
  28. ^ "github: getml/getml-comunidad". GitHub . Consultado el 7 de septiembre de 2022 .
  29. ^ "github: getml/getml-comunidad". GitHub . Consultado el 7 de septiembre de 2022 .
  30. ^ "documentación tsfresh" . Consultado el 7 de septiembre de 2022 .
  31. ^ "Extracción de características de series temporales sobre la base de pruebas de hipótesis escalables (tsfresh: un paquete de Python)" . Consultado el 7 de septiembre de 2022 .
  32. ^ "predecir-idlab/tsflex". GitHub . Consultado el 7 de septiembre de 2022 .
  33. ^ 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 .
  34. ^ "guía del usuario de seglearn" . Consultado el 7 de septiembre de 2022 .
  35. ^ "¡Bienvenido a la documentación de TSFEL!" . Consultado el 7 de septiembre de 2022 .
  36. ^ "github: facebookresearch/Kats". GitHub . Consultado el 7 de septiembre de 2022 .
  37. ^ "Automatización del análisis de big data". 16 de octubre de 2015.
  38. ^ Kanter, James Max; Veeramachaneni, Kalyan (2015). "Síntesis profunda de funciones: hacia la automatización de los esfuerzos de ciencia de datos". Conferencia internacional IEEE 2015 sobre ciencia de datos y análisis avanzado (DSAA) . págs. 1–10. doi :10.1109/DSAA.2015.7344858. ISBN 978-1-4673-8272-4. S2CID  206610380.
  39. ^ "¿Qué es una tienda de funciones?" . Consultado el 19 de abril de 2022 .
  40. ^ "Introducción a las tiendas de funciones" . Consultado el 15 de abril de 2021 .
  41. ^ "Ingeniería de funciones en aprendizaje automático". Programa de Educación en Ingeniería (EngEd) | Sección . Consultado el 21 de marzo de 2023 .
  42. ^ explorarium_admin (25 de octubre de 2021). "Cinco razones por las que la ingeniería de funciones es un desafío". Explorio . Consultado el 21 de marzo de 2023 .
  43. ^ Spiegelhalter, DJ (2019). El arte de la estadística: aprender de los datos. [Londres, Reino Unido. ISBN 978-0-241-39863-0. OCLC  1064776283.{{cite book}}: CS1 maint: location missing publisher (link)
  44. ^ Sarker IH (noviembre de 2021). "Aprendizaje profundo: una descripción general completa de técnicas, taxonomía, aplicaciones y direcciones de investigación". SN Informática . 2 (6): 420. doi :10.1007/s42979-021-00815-1. PMC 8372231 . PMID  34426802. 
  45. ^ Bengio, Yoshua (2012), "Recomendaciones prácticas para el entrenamiento de arquitecturas profundas basado en gradientes", Redes neuronales: trucos del oficio , Apuntes de conferencias en informática, vol. 7700, Berlín, Heidelberg: Springer Berlin Heidelberg, págs. 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 de marzo de 2023

Otras lecturas