¿Qué es la canalización de machine learning?

Autores

Ivan Belcic

Staff writer

Cole Stryker

Staff Editor, AI Models

IBM Think

¿Qué es un pipeline de ML?

Un pipeline de machine learning (pipeline de ML) es el proceso sistemático de diseño, desarrollo e implementación de un modelo de machine learning. Los pipelines de ML o flujos de trabajo de ML siguen una serie de pasos que guían a los desarrolladores y líderes empresariales hacia un desarrollo de modelos más eficiente.

El pipeline de machine learning de extremo a extremo consta de tres etapas: 

  1. Proceso de datos: los científicos de datos recopilan y preparan los datos que se utilizarán para entrenar el modelo de ML. Las fases de esta etapa incluyen la recopilación de datos, el preprocesamiento, la limpieza y la exploración. 

  2. Desarrollo de modelos: los profesionales de los datos eligen o crean un algoritmo de machine learning que se adapte a las necesidades del proyecto. El algoritmo se entrena con los datos del paso anterior y el modelo resultante se prueba y valida hasta que esté listo para su uso. 

  3. Implementación del modelo: los desarrolladores e ingenieros de software implementan el modelo para su uso en el mundo real, integrándolo en un entorno de producción y monitorizando su rendimiento. 

Los flujos de trabajo de machine learning son un componente básico de la disciplina más amplia de las operaciones de machine learning (MLOps). Gran parte del proceso puede ser automatizado a través de varias técnicas de machine learning automatizado (AutoML) que gestionan las dependencias entre etapas y endpoint. 

¿Cuál es la diferencia entre un pipeline de datos y un pipeline de ML? 

Un pipeline de datos es una arquitectura diseñada y construida por científicos de datos que recopila datos de diferentes fuentes, luego los almacena y organiza en un repositorio de datos centralizado, como un almacén de datos. Un pipeline de machine learning es un flujo de trabajo para diseñar, crear e implementar un sistema de IA. 

Ambas frases utilizan el término pipeline, pero mientras que un pipeline de datos es más un sistema tangible, un pipeline de ML es una serie teórica de pasos. Un pipeline ETL es un ejemplo de pipeline de datos que extrae datos de varias fuentes, los transforma en un formato unificado y los carga en un sistema de destino. En el machine learning, un pipeline ETL recopilaría datos y los formatearía en un conjunto de datos de entrenamiento.

Las últimas tendencias en IA, presentadas por expertos

Obtenga conocimientos organizados sobre las noticias más importantes e intrigantes de la IA. Suscríbase a nuestro boletín semanal Think. Consulte la Declaración de privacidad de IBM.

¡Gracias! Está suscrito.

Su suscripción se enviará en inglés. Encontrará un enlace para darse de baja en cada boletín. Puede gestionar sus suscripciones o darse de baja aquí. Consulte nuestra Declaración de privacidad de IBM para obtener más información.

Etapa 0: inicio del proyecto

Antes de inicializar un flujo de trabajo de ML, los líderes empresariales, los desarrolladores y otros stakeholders acuerdan los objetivos de un proyecto de machine learning. Comprender por qué es necesaria la IA y qué pretende lograr mantiene las expectativas realistas y alinea a los stakeholders en torno a un propósito compartido.

    ¿Cuál es el objetivo?

    A la hora de decidir si incorporar la IA a un flujo de trabajo o a un producto, los stakeholders deben identificar primero el objetivo empresarial que el modelo de ML pretende resolver y, a continuación, demostrar cómo la IA puede cumplirlo. Algunas empresas abordan la IA con esta lógica invertida: "Queremos utilizar la IA. ¿Qué debemos hacer con él?" 

    Para maximizar el retorno de la inversión (ROI) en IA, los líderes deben comprender el caso de uso y, a continuación, trabajar en una solución de ML adaptada a ese propósito.

    ¿Cómo es el éxito?

    Las métricas claras para el éxito, como los KPI (indicadores clave de rendimiento) documentados, informan a los stakeholders si el proyecto de ML está cumpliendo sus objetivos. Estos KPI deben reflejar los objetivos establecidos en la etapa anterior. Por ejemplo, un modelo de ML que se implemente para aumentar la eficiencia podría priorizar el ROI.

    ¿Qué hay en el camino?

    Conocer el panorama de riesgos y los obstáculos ayuda a los equipos a navegar por el proyecto de forma eficaz. Este paso incluye definir los requisitos de datos y evaluar las regulaciones relevantes, si las hay, para la recopilación y el almacenamiento de datos. Lo mismo se aplica a cualquier limitación que pueda afectar a la selección del modelo, como los requisitos de computación o memoria.

    AI Academy

    Conviértase en un experto en IA

    Obtenga los conocimientos necesarios para priorizar las inversiones en IA que impulsan el crecimiento empresarial. Dé sus primeros pasos hoy mismo con nuestra AI Academy gratuita y lidere el futuro de la IA en su organización.

    Etapa 1: proceso de datos

    Después de determinar el problema que el modelo de ML debe resolver, el primer paso en un flujo de trabajo de ML es recopilar, preparar y analizar los datos. Los profesionales deben identificar las fuentes de datos relevantes, recopilar e integrar datos de ellas, preparar y limpiar los datos, empleando técnicas de ciencia de datos, incluida la ingeniería de características, para llegar a un conjunto de datos preparado. 

    La etapa de procesamiento de datos suele ser la que más tiempo lleva. Pero el rendimiento del modelo ML depende de buenos datos. Cualquier error y descuido en la fase de ingeniería de datos afecta negativamente al rendimiento del modelo a lo largo de su ciclo de vida. Las estrategias de automatización de datos pueden reducir el tiempo y el esfuerzo humano necesarios para producir conjuntos de datos de entrenamiento sólidos. 

    El proceso de datos incluye: 

    • Ingesta de datos 

    • Preprocesamiento de datos

    • Exploración de datos 

    • Diseño de características 

    • División de datos 

      Ingesta de datos

      La ingesta de datos es la recopilación e importación de datos de fuentes de datos dispares en un repositorio de datos centralizado a través de un pipeline de datos. Los científicos de datos deben identificar las fuentes de datos adecuadas, como los datos empresariales almacenados en el almacén de datos interno: informes de ventas, datos demográficos de los clientes y otros conocimientos organizativos. 

      A veces también se requieren datos externos. Las fuentes de datos externas pueden incluir conexiones API a proveedores de datos, datos extraídos de Internet o datos sintéticos. Dado que siempre se crean nuevos datos, la ingesta de datos suele ser un proceso continuo.

      Preprocesamiento de datos

      El preprocesamiento de datos, o preparación de datos, transforma los datos sin procesar del paso anterior en datos limpios que están listos para el análisis. Después de comprender los datos de entrenamiento a través del análisis exploratorio de datos (EDA), los científicos de datos seleccionan estrategias de preprocesamiento de datos. Los pasos de preprocesamiento de datos incluyen: 

      • Identificación de valores perdidos y tratamiento de valores atípicos

      • Normalización de datos: estandarización del conjunto de datos

      • Eliminación de ruido: eliminación de errores aleatorios e interferencias de señal 

      Exploración de datos

      La exploración de datos es el proceso de evaluar los datos para comprender la información que contienen. EDA tiene como objetivo conocer las características de los datos, descubrir patrones y relaciones e identificar conocimientos con la ayuda de herramientas visualización de datos

      Los hallazgos de EDA informan las opciones de selección de modelos que se producen a continuación.

      Ingeniería de características

      La selección de características es un paso crítico del preprocesamiento de datos que implica identificar las características más relevantes de los puntos de datos. Las características de los datos se extraen y seleccionan para dar al modelo la mejor oportunidad posible de resolver desafíos del mundo real. 

      Centrarse en las características incorrectas puede dar lugar a un modelo que no funcione según lo previsto. Después de aplicar técnicas de extracción de características para optimizar los datos, los científicos de datos eligen las características que conducirán a las predicciones más sólidas del modelo.

      Etapa 2: desarrollo del modelo

      Una vez preparados los datos de entrenamiento, el siguiente paso en el flujo de trabajo de ML es crear el modelo de machine learning. El proceso de creación de un modelo de deep learning implica seleccionar un algoritmo de machine learning adecuado y exponerlo a los conjuntos de datos de entrenamiento. El resultado de este proceso es la creación de un modelo de IA listo para su uso en el mundo real con datos similares no vistos. 

      El proceso de desarrollo del modelo implica: 

      • Selección del modelo 

      • Ajuste de hiperparámetros 

      • Entrenamiento de modelos

      • Evaluación de modelos

      Selección de modelo

      La selección del modelo es el proceso de elegir el tipo de modelo que tiene más probabilidades de ofrecer el máximo rendimiento en el caso de uso previsto. Las etapas iniciales de planificación del proyecto ya han proporcionado a todos los stakeholders y participantes una comprensión clara de las necesidades empresariales, las limitaciones y los objetivos del proyecto. Los profesionales de ML basan sus elecciones en estos factores, equilibrando la optimización con la viabilidad. 

      Entre las opciones se incluyen la regresión lineal y la regresión logística, los bosques aleatorios y los árboles de decisión, las redes neuronales y los modelos de lenguaje de gran tamaño (LLM), las máquinas de vectores de soporte (SVM), los modelos de conjunto, los los sistemas agénticos y muchos otros. 

      Dependiendo de la naturaleza del desafío del machine learning, ciertos tipos de algoritmos son candidatos más adecuados. 

      Por ejemplo, las neural networks pueden manejar desafíos complejos de IA generativa, pero conllevan altos costes de computación y son más propensas al sobreajuste. Los modelos de regresión son eficientes desde el punto de vista informático, pero tienen casos de uso limitados.

      Ajuste de hiperparámetros

      Los hiperparámetros del modelo son variables externas que controlan el comportamiento del modelo durante el entrenamiento. Los hiperparámetros también gobiernan la forma del modelo que construye el algoritmo, como el número de neuronas y capas en una red neuronal. 

      El ajuste de hiperparámetros es el proceso de optimización de los hiperparámetros para que el proceso de entrenamiento produzca un modelo de alto rendimiento. Los científicos de datos pueden establecer hiperparámetros manualmente, pero normalmente automatizan el proceso mediante varios algoritmos y otras técnicas.

      Entrenamiento de modelos

      El entrenamiento de modelos es el proceso de optimizar el rendimiento de un modelo con conjuntos de datos de entrenamiento que son similares a los datos de entrada que el modelo procesa una vez implementados. Un pipeline de entrenamiento de machine learning es un sistema extenso que puede adoptar cualquier número de formas en función del algoritmo y la tarea para la que se desarrolla el modelo. 

      Muchos métodos de entrenamiento giran en torno a la minimización de una función de pérdida que mide el error del modelo: la brecha entre las salidas del modelo y los valores de los datos del mundo real. Con cada ronda de entrenamiento, el nuevo modelo actualiza sus parámetros a medida que se ajusta más a los datos de entrenamiento. Cada actualización itera sobre los resultados anteriores. 

      Los métodos de entrenamiento de modelos incluyen: 

      • Aprendizaje supervisado: el modelo se entrena en un conjunto de datos estructurados. Las entradas se etiquetan con las salidas correctas, enseñando al modelo cómo asociar las características de entrada con los valores de salida correctos. 

      • Aprendizaje no supervisado: el modelo se entrena con datos no estructurados y debe discernir los patrones y las relaciones entre los puntos de datos y las características por sí solo. 

      • Aprendizaje autosupervisado: el modelo se entrena con datos no etiquetados para tareas que suelen requerir aprendizaje supervisado. 

      • Aprendizaje por refuerzo: el modelo está entrenado para realizar las acciones que generan la mayor recompensa posible, en lugar de minimizar el error. 

      • Aprendizaje continuo: el modelo se entrena en un flujo de datos de entrada en tiempo real, a diferencia de un conjunto de datos de entrenamiento preensamblado.

      Evaluación de modelos

      Una vez que se considera que el modelo está entrenado, por ejemplo, cuando su función de pérdida se ha minimizado lo suficiente, su rendimiento se evalúa antes de la implementación. El proceso de evaluación de LLM utiliza los conjuntos de datos de prueba y validación que se prepararon durante la fase de división de datos.

      Validación

      La validación estima el error de predicción del modelo: ¿hasta qué punto es capaz de realizar predicciones correctas? Durante el entrenamiento, el algoritmo de machine learning suele generar varios modelos con varias configuraciones de hiperparámetros. La validación identifica el modelo con la configuración óptima de hiperparámetros.

      Pruebas

      Las pruebas simulan valores del mundo real para evaluar el error de generalización del modelo con mejor rendimiento: ¿hasta qué punto se adapta el modelo a datos nuevos que no se han visto antes? Los datos de prueba son independientes de los datos de entrenamiento y comparan el rendimiento del modelo una vez finalizado el entrenamiento. Las pruebas revelan si el modelo funcionará según lo previsto una vez implementado.

      Fase 3: implementación del modelo

      Después de desarrollar un modelo adecuado con un rendimiento sólido, es hora de ponerlo en práctica. La implementación del modelo sirve el modelo a los usuarios en el entorno de producción previsto. Puede ser cualquier cosa, desde una aplicación móvil o una conexión API hasta una instalación de desarrollo farmacéutico o investigación de robótica. 

      Los modelos no comienzan a funcionar hasta que se implementan activamente. Lograr resultados sólidos en un proyecto de machine learning significa que el modelo debe implementarse de una manera que facilite su uso, ya sea por parte de los consumidores, los líderes empresariales u otros sistemas informáticos. 

      La implementación del modelo incluye: 

      • Serialización de modelos 

      • Integración 

      • Arquitectura 

      • Monitorización 

      • Actualizaciones 

      • Conformidad

      Serialización de modelos 

      La serialización es un método de implementación común que implica convertir un modelo a un formato que pueda almacenarse y transmitirse, y luego deserializarlo en el entorno de producción. Es como meter todas las pertenencias de una habitación en una caja, trasladar la caja a una nueva casa y luego desempaquetar todo para montar la nueva habitación. 

      Por ejemplo, Python, un lenguaje de codificación popular con el desarrollo de ML, recomienda el marco pickle para la implementación.

      Integración

      La integración incorpora el modelo en su entorno de producción, como una aplicación móvil. Los modelos pueden servirse a través de proveedores de cloud computing como AWS o Azure, o alojarse in situ. Alternativamente, podría ser mejor utilizar una solución en contenedores como Kubernetes y Docker. 

      Dependiendo de cómo se sirva el modelo, los desarrolladores deben hacer que el modelo sea accesible con las bibliotecas y marcos de machine learning adecuados, como PyTorch o TensorFlow Serving.

      Arquitectura

      La portabilidad y la escalabilidad son dos principales preocupaciones a tener en cuenta durante la implementación de ML. 

      • La portabilidad es la facilidad con la que el modelo puede transferirse entre sistemas. 

      • La escalabilidad es la capacidad del modelo para manejar cargas de trabajo crecientes, como una base de usuarios cada vez mayor, sin necesidad de rediseñarlo. 

      El entorno de producción del modelo debe ser capaz de soportar el crecimiento previsto del proyecto de machine learning. Las herramientas de autoescalado y orquestación pueden ayudar a atender el aumento de la demanda con el tiempo.

      Monitorización

      El flujo de trabajo de ML no está completo una vez que se implementa el modelo. El rendimiento del modelo debe monitorizarse a lo largo del ciclo de vida de la IA para evitar la desviación del modelo: cuando el rendimiento se ve afectado por cambios en la distribución de los datos. Muchas otras métricas se refieren a la capacidad del modelo para generar y procesar tokens: una sola unidad de entrada o salida. Algunas de estas métricas incluyen: 

      • Tiempo por token (TPOT) / latencia entre tokens (ITL): la cantidad de tiempo que tarda el modelo en generar un token. 

      • Tiempo hasta el primer token (TTFT): la cantidad de tiempo que tarda un modelo en generar el primer token de su respuesta. 

      • Rendimiento: una medida de la capacidad general de generación de tokens del modelo, medida en tokens por segundo (TPS). 

      • Latencia: la cantidad de tiempo que tarda el modelo en generar una salida completa después de recibir una entrada del usuario.

      Actualizaciones

      A menos que un modelo se entrene con aprendizaje continuo, su conjunto de datos de entrenamiento es finito. El límite de conocimiento de un modelo se refiere a la última fecha en la que su base de conocimientos se actualizó con nuevos datos. Con el tiempo, un modelo pierde relevancia a medida que la información de la base de conocimientos se vuelve más anticuada. 

      Los modelos deben actualizarse periódicamente para mitigar la desviación del modelo y mantener las tasas de error en un mínimo aceptable. Los nuevos datos, las nuevas características y las actualizaciones algorítmicas pueden optimizar el rendimiento del modelo. El reentrenamiento también puede ayudar a los modelos a mantenerse actualizados.

      Cumplimiento normativo

      En lo que respecta a la recopilación de datos, los operadores de modelos deben tener en cuenta todas las regulaciones y requisitos legales pertinentes en materia de privacidad, propiedad intelectual, derechos de autor y otras preocupaciones. Por ejemplo, la HIPAA protege los datos médicos en EE. UU., mientras que el RGPD proporciona protecciones de datos específicas a las personas en la Unión Europea. 

      Los modelos creados para su uso en sectores regulados, como el farmacéutico y el financiero, también podrían estar sujetos a controles operativos más estrictos. Cualquier modelo utilizado en un entorno empresarial probablemente procese datos internos confidenciales, lo que requiere fuertes medidas de ciberseguridad

      Los operadores de modelos están obligados a proteger los datos de los usuarios y evitar que sus modelos se utilicen con fines maliciosos, como el fraude y la desinformación. Una ventaja de los modelos de código abierto es que cualquiera puede evaluar el modelo para ver cómo funciona y si cumple todas las normativas pertinentes.

      Beneficios del flujo de trabajo de machine learning

      Los pipelines de machine learning ofrecen muchos beneficios, como: 

      • Modularización 

      • Reproducibilidad

      • Eficiencia 

      • Escalabilidad

      • Experimentación 

      • Implementación 

      • Colaboración 

      • Control de versiones y documentación

      Modularización

      Los pipelines desglosan el proceso de machine learning en pasos modulares y bien definidos. Cada paso se puede desarrollar, probar y optimizar de forma independiente, lo que facilita la gestión y el mantenimiento del flujo de trabajo.

      Reproducibilidad

      Los pipelines de machine learning facilitan la reproducción de experimentos. Definir la secuencia de pasos y sus parámetros en un pipeline ayuda a garantizar resultados coherentes. Si se produce un error en un paso o el rendimiento de un modelo se deteriora, el pipeline se puede configurar para generar alertas o realizar acciones correctivas.

      Eficiencia

      Los pipelines automatizan muchas tareas rutinarias, como el preprocesamiento de datos, la ingeniería de características y la evaluación de modelos. Esta eficiencia puede ahorrar tiempo y reducir los errores.

      Escalabilidad

      Los pipelines se pueden escalar para gestionar grandes conjuntos de datos o flujos de trabajo complejos. A medida que crece la complejidad de los datos y los modelos, puede ajustar el pipeline sin tener que reconfigurar todo desde cero.

      Experimentación

      La modificación de pasos individuales dentro del pipeline abre la puerta a la experimentación con diferentes técnicas de preprocesamiento de datos, selecciones de características y modelos. Esta flexibilidad permite una rápida iteración y optimización.

      Implementación

      Los pipelines facilitan la implementación de modelos de machine learning en producción. Un pipeline bien definido para el entrenamiento y la evaluación de modelos facilita la implementación en una aplicación o sistema.

      Colaboración

      Los pipelines permiten a los equipos de científicos de datos e ingenieros colaborar. Dado que el flujo de trabajo está estructurado y documentado, es más fácil para los miembros del equipo comprender y contribuir al proyecto.

      Control de versiones y documentación

      Los sistemas de control de versiones rastrean los cambios en el código y las configuraciones del pipeline, lo que permite revertir a versiones anteriores. Un pipeline bien estructurado fomenta una mejor documentación de cada paso.

      La historia de los pipelines de machine learning

      La historia de los pipelines de machine learning está estrechamente relacionada con la evolución del machine learning y la ciencia de datos como campos. Aunque el concepto de flujos de trabajo de proceso de datos es anterior a machine learning, la formalización y el uso generalizado de pipelines de machine learning se desarrollaron más recientemente. 

      La historia de los pipelines de machine learning incluye los siguientes desarrollos: 

      • Flujos de trabajo de proceso de datos (anteriores a la década de 2000) 

      • Aparición del machine learning (década de 2000) 

      • Auge de la ciencia de datos (finales de la década de 2000 a principios de la de 2010) 

      • Desarrollo de bibliotecas y herramientas de machine learning (década de 2010) 

      • Auge del AutoML (década de 2010) 

      • Integración con DevOps (década de 2010) 

      Primeros flujos de trabajo de proceso de datos (anteriores a la década de 2000)

      Antes de la adopción generalizada del machine learning, los flujos de trabajo de proceso de datos se utilizaban para tareas como la limpieza, la transformación y el análisis de datos. Estos flujos de trabajo solían ser manuales e implicaban secuencias de comandos o herramientas como el software de hojas de cálculo. Sin embargo, el machine learning no fue una parte central de estos procesos durante este período.

      Aparición del machine learning (década de 2000)

      El machine learning ganó protagonismo a principios de la década de 2000 con los avances en algoritmos, la potencia computacional y la disponibilidad de grandes conjuntos de datos. Los investigadores y científicos de datos comenzaron a aplicar el machine learning a varios dominios, lo que llevó a una creciente necesidad de flujos de trabajo sistemáticos y automatizados.

      Auge de la ciencia de datos (finales de la década de 2000 a principios de la de 2010)

      El término ciencia de datos se hizo popular como un campo multidisciplinar que combinaba estadística, análisis de datos y machine learning. Esta era vio la formalización de los flujos de trabajo de ciencia de datos, incluido el preprocesamiento de datos, la selección de modelos y la evaluación, que ahora son parte integral de los pipelines de machine learning.

      Desarrollo de bibliotecas y herramientas de machine learning (década de 2010)

      La década de 2010 trajo el desarrollo de bibliotecas y herramientas de machine learning que facilitaron la creación de pipelines. Bibliotecas como scikit-learn (para Python) y caret (para R) proporcionaron API estandarizadas para crear y evaluar modelos de machine learning, lo que facilitó la construcción de pipelines.

      Auge del AutoML (década de 2010)

      Las herramientas y plataformas de machine learning automatizado (AutoML) surgieron para automatizar el proceso de creación de pipelines de machine learning. Estas herramientas suelen automatizar tareas como el ajuste de hiperparámetros, la selección de características y la selección de modelos, lo que hace que el machine learning sea más accesible para los no expertos con visualizaciones y tutoriales.

      Integración con DevOps (década de 2010)

      Las prácticas de DevOps comenzaron a incorporar pipelines de machine learning para permitir la integración e implementación continuas (CI/CD) de modelos de machine learning. Esta integración, conocida como operaciones de machine learning (MLOps), enfatizó la necesidad de reproducibilidad, control de versiones y monitorización en los pipelines de ML. 

      MLOps ayuda a los equipos de ciencia de datos a afrontar eficazmente los complejos retos de la orquestación de la IA. En la implementación en tiempo real, el pipeline responde a una solicitud en milisegundos.

      Soluciones relacionadas
      IBM watsonx.ai

      Entrene, valide, ajuste e implemente IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de nueva generación para desarrolladores de IA. Cree aplicaciones de IA en menos tiempo y con menos datos.

      Descubra watsonx.ai
      Soluciones de inteligencia artificial

      Ponga la IA a trabajar en su negocio con la experiencia líder en IA del sector de IBM y junto a su cartera de soluciones.

      Explore las soluciones de IA
      Consultoría y servicios de IA

      Reinvente las operaciones y flujos de trabajo críticos añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.

      Explore los servicios de IA
      Dé el siguiente paso

      Obtenga acceso único a capacidades que abarcan el ciclo de vida de desarrollo de la IA. Produzca potentes soluciones de IA con interfaces intuitivas, flujos de trabajo y acceso a API y SDK estándar del sector.

      Explore watsonx.ai Solicite una demostración en directo