Definición de machine learning

El machine learning (ML) es una rama de la inteligencia artificial (AI) que se enfoca en el uso de datos y algoritmos para imitar la forma en que los humanos aprenden, mejorando gradualmente la precisión con el tiempo. Lo definió por primera vez en la década de 1950 Arthur Samuel, un científico de datos e innovador de AI, como "el campo de estudio que brinda a las computadoras la capacidad de aprender sin ser programadas de forma explícita".

El machine learning involucra la alimentación de grandes cantidades de datos en algoritmos de computadoras para que puedan aprender a identificar patrones y relaciones en ese set de datos. Los algoritmos luego comienzan a hacer sus propias predicciones o tomar sus propias decisiones según el análisis que realizan. A medida que los algoritmos reciben datos nuevos, continúan refinando sus opciones y mejorando su rendimiento de la misma forma que una persona mejora en una actividad con la práctica.

¿Cuáles son los cuatro tipos de machine learning?

Los cuatro tipos de machine learning son machine learning supervisado, machine learning no supervisado, aprendizaje semisupervisado y aprendizaje de refuerzo.

El machine learning supervisado es el tipo más común de machine learning. En modelos de aprendizaje supervisados, el algoritmo aprende a partir de sets de datos de entrenamiento etiquetados y mejora su precisión con el tiempo. Está diseñado para crear un modelo que pueda predecir correctamente la variable objetivo cuando recibe datos nuevos que no ha visto antes. Un ejemplo sería personas que etiquetan e ingresan imágenes de rosas y otras flores. El algoritmo podría entonces identificar correctamente una rosa cuando recibe una foto nueva y sin etiquetar de una.

El machine learning no supervisado es cuando el algoritmo busca patrones de datos que no se han etiquetado y no tienen variables objetivo. El objetivo es encontrar patrones y relaciones en los datos que las personas pueden no haber identificado todavía, como detectar anomalías en los logs, rastreos y métricas para detectar problemas en el sistema y amenazas de seguridad.

El aprendizaje semisupervisado es un híbrido entre el machine learning supervisado y no supervisado. En el aprendizaje semisupervisado, el algoritmo se entrena tanto con datos etiquetados como no etiquetados. Primero aprende de un conjunto pequeño de datos etiquetados para hacer predicciones o tomar decisiones basadas en la información disponible. Luego usa el set más grande de datos no etiquetados para refinar sus predicciones o decisiones buscando patrones y relaciones en los datos.

El aprendizaje de refuerzo es cuando el algoritmo aprende a través de prueba y error recibiendo comentarios en forma de recompensas o sanciones por sus acciones. Algunos ejemplos incluyen: entrenamiento de un agente de AI para jugar a un videojuego, en el que recibe una recompensa positiva por avanzar de nivel y una sanción por fallar; optimización de una cadena de suministro, en donde se recompensa al agente por minimizar los costos y maximizar la velocidad de entrega, o sistemas de recomendación, donde el agente sugiere productos o contenido y recibe una recompensa por las compras y los clics.

¿Cómo funciona el machine learning?

El machine learning puede funcionar de diferentes formas. Puedes aplicar un modelo de machine learning entrenado en datos nuevos o puedes entrenar un modelo nuevo desde cero.

Aplicar un modelo de machine learning entrenado en datos nuevos es típicamente un proceso más rápido y que demanda menos recursos. En lugar de desarrollar parámetros a través del entrenamiento, usas los parámetros del modelo para hacer predicciones sobre los datos de entrada, un proceso llamado inferencia. Además, no necesitas evaluar su rendimiento, dado que ya se evaluó durante la fase de entrenamiento. Sin embargo, sí requiere que prepares detenidamente la entrada de datos para asegurar que se encuentre en el mismo formato que los datos que se usaron para entrenar el modelo.

Entrenar un modelo nuevo de machine learning involucra los pasos siguientes:

Recopilación de datos

Comienza por elegir los sets de datos. Los datos pueden provenir de una variedad de fuentes, como logs, métricas y rastreos del sistema. Además de los logs y las métricas, varios otros tipos de datos temporales son importantes en la capacitación de machine log, entre ellos:

  • Datos del mercado financiero, como precios de acciones, tasas de interés y tasas de cambio de divisas. Estos datos se suelen usar para crear modelos predictivos para operaciones bursátiles e inversiones.
  • Datos temporales de transporte, como volumen de tráfico, velocidad y tiempo de viaje. Esto puede usarse para optimizar rutas y reducir la congestión del tránsito.
  • Datos de uso de productos, como tráfico en el sitio web e interacción en redes sociales. Esto puede ayudar a las empresas a comprender el comportamiento del cliente e identificar áreas de mejora.

Sean cuales sean los datos que usas, deben ser relevantes para el problema que intentas resolver y deben ser representativos de la población con respecto a la cual deseas hacer las predicciones o tomar las decisiones.

Preprocesamiento de datos
Una vez que hayas recopilado los datos, debes preprocesarlos para que un algoritmo de machine learning pueda usarlos. Esto a veces involucra etiquetar los datos o asignar una categoría o valor específicos a cada punto de datos en un set de datos, lo que permite a un modelo de machine learning aprender patrones y realizar predicciones.

Además, puede involucrar la eliminación de valores faltantes, la transformación de datos temporales en un formato más compacto mediante la aplicación de agregaciones y el escalado de los datos para asegurar que todas las características tengan rangos similares. Tener una gran cantidad de datos de entrenamiento etiquetados es un requisito para las redes neuronales profundas, como los modelos de lenguaje grandes (LLM). En los modelos supervisados clásicos, no necesitas procesar tanto.

Selección de características
Algunos enfoques requieren que selecciones las características que usará el modelo. Esencialmente, debes identificar las variables o atributos más relevantes para el problema que estás intentando resolver. Las correlaciones son una forma básica de identificar características. Para optimizar incluso más, hay métodos de selección de características automatizadas disponibles y son compatibles con muchos marcos de trabajo de ML.

Selección del modelo
Ahora que seleccionaste las características, debes elegir un modelo de machine learning que sea adecuado para el problema que intentas resolver. Algunas opciones incluyen modelos de regresión, árboles de decisión y redes neuronales. (Consulta "Técnicas y algoritmos de machine learning" a continuación).

Capacitación
Luego de elegir un modelo, debes entrenarlo con los datos que recopilaste y preprocesaste. El entrenamiento es donde el algoritmo aprende a identificar patrones y relaciones en los datos, y los codifica en los parámetros del modelo. Para lograr un rendimiento óptimo, el entrenamiento es un proceso iterativo. Puede incluir el ajuste de hiperparámetros del modelo y mejorar el procesamiento de datos y la selección de características.

Pruebas
Ahora que se entrenó el modelo, debes probarlo en datos nuevos que no ha visto antes y comparar su rendimiento con el de otros modelos. Seleccionas el modelo de mejor rendimiento y evalúas su rendimiento en datos de prueba distintos. Solo datos no utilizados anteriormente te darán una buena estimación de cómo puede rendir tu modelo una vez desplegado.

Despliegue del modelo
Una vez que estés contento con el rendimiento del modelo, puedes desplegarlo en un entorno de producción en el que puede hacer predicciones o tomar decisiones en tiempo real. Esto puede involucrar la integración del modelo a otros sistemas o aplicaciones de software. Los marcos de trabajo de ML integrados en los proveedores informáticos en el cloud populares hacen que el despliegue del modelo en el cloud sea bastante sencillo.

Monitoreo y actualización
Una vez desplegado el modelo, debes monitorear su rendimiento y actualizarlo periódicamente a medida que haya nuevos datos disponibles o que el problema que intentas resolver evoluciones con el tiempo. Esto puede significar retener el modelo con datos nuevos, ajustando sus parámetros o seleccionando un algoritmo de ML completamente diferente.

¿Por qué es importante el machine learning?

El machine learning es importante porque aprende a realizar tareas complejas usando ejemplos, sin programar algoritmos especializados. En comparación con enfoques algorítmicos tradicionales, el machine learning te permite automatizar más, mejorar las experiencias de los clientes y crear aplicaciones innovadoras que no eran posibles antes. Y los modelos de machine learning pueden mejorarse de forma iterativa a sí mismos durante el uso. Algunos ejemplos:

  • Predecir tendencias para mejorar las decisiones comerciales
  • Personalizar las recomendaciones que aumentan los ingresos y la satisfacción del cliente
  • Automatizar el monitoreo de infraestructura de IT y aplicaciones complejas
  • Identificar correo no deseado y detectar vulneraciones de seguridad

Técnicas y algoritmos de machine learning

Existen muchas técnicas y algoritmos de machine learning disponibles. Lo que selecciones dependerá del problema que intentas resolver y las características de los datos. Esta es una visión general rápida de algunos de los más comunes: la regresión lineal se usa cuando el objetivo es predecir una variable continua.

La regresión lineal asume una relación lineal entre las variables de entrada y la variable objetivo. Un ejemplo sería predecir los precios de las viviendas como una combinación lineal de metros cuadrados, ubicación, cantidad de dormitorios y otras características.

La regresión logística se usa para la clasificación binaria de problemas en los que el objetivo es predecir un resultado de sí/no. La regresión logística estima la probabilidad de la variable objetivo según un modelo lineal de variables de entrada. Un ejemplo sería predecir si una solicitud de préstamo se aprobará o no según el puntaje crediticio y otros datos financieros del solicitante.

Los árboles de decisión siguen un modelo tipo árbol para mapear las decisiones a las posibles consecuencias. Cada decisión (regla) representa una prueba de una variable de entrada, y se pueden aplicar varias reglas de forma sucesiva siguiendo un modelo tipo árbol. Se dividen los datos en subconjuntos, con la características más significativa en cada nodo del árbol. Por ejemplo, los árboles de decisión pueden usarse para identificar clientes potenciales para una campaña de marketing según sus intereses y datos demográficos.

Los bosques aleatorios combinan varios árboles de decisión para mejorar la precisión de la predicción. Cada árbol de decisión se entrena con un subconjunto aleatorio de datos de entrenamiento y un subconjunto de variables de entrada. Los bosques aleatorios son más precisos que los árboles de decisión individuales y manejan mejor los sets de datos complejos o datos faltantes, pero pueden crecer bastante y requerir más memoria cuando se usan en inferencia.

Los árboles de decisión potenciados entrenan una sucesión de árboles de decisión, y cada árbol de decisión mejora sobre la base del anterior. El procedimiento de potenciación toma los puntos de datos que se clasificaron incorrectamente en la iteración anterior del árbol de decisiones y retiene un nuevo árbol de decisión para mejorar la clasificación de estos puntos previamente mal clasificados. El popular paquete XGBoost Python implementa este algoritmo.

Las máquinas de vectores de soporte trabajan para encontrar un hiperplano que separe de la mejor forma los puntos de datos de una clase de los de otra clase. Lo hace minimizando el "margen" entre las clases. Los vectores de soporte hacen referencia a las pocas observaciones que identifican la ubicación del hiperplano de separación, definido por tres puntos. El algoritmo de SVM estándar aplica solo a la clasificación binaria. Los problemas multiclase se reducen a una serie de unos binarios.

Las redes neuronales están inspiradas en la estructura y función del cerebro humano. Consisten en capas interconectadas de nodos que pueden aprender a reconocer patrones en los datos ajustando las fortalezas de las conexiones entre ellos.

Los algoritmos de agrupación se usan para agrupar puntos de datos en clusters según su similitud. Pueden usarse para tareas como la segmentación de clientes y la detección de anomalías. Es particularmente útil para la segmentación y el procesamiento de imágenes.

¿Cuáles son las ventajas del machine learning?

Las ventajas del machine learning son varias. Puede ayudar a empoderar a tus equipos para alcanzar el siguiente nivel de rendimiento en las categorías a continuación:

  1. Automatización: las tareas cognitivas que resultan desafiantes para las personas (debido a s carácter reiterativo o dificultad objetiva) pueden automatizarse con machine learning. Los ejemplos incluyen el monitoreo de sistemas en red complejos, la identificación de actividad sospechosa en sistemas complejos y la predicción de cuándo el equipo necesita mantenimiento.
  2. Experiencia del cliente: la inteligencia ofrecida por los modelos de machine learning puede elevar las experiencias de usuario. En el caso de las aplicaciones impulsadas por la búsqueda, captar la intención y las preferencias te permite brindar resultados más personalizados y relevantes. Los usuarios pueden buscar y encontrar lo que quieren decir.
  3. Innovación: el machine learning resuelve problemas complejos que no eran posibles con los algoritmos de diseño específico. Por ejemplo, los datos no estructurados de búsqueda, incluidas imágenes o sonido, optimizan los patrones de tráfico, mejoran los sistemas de transporte público y diagnostican enfermedades.

Conoce cómo el machine learning lleva la búsqueda al siguiente nivel

Casos de uso de machine learning

Estas son algunas subcategorías del machine learning y sus casos de uso:

El análisis de sentimiento es el proceso de usar procesamiento de lenguaje natural para analizar datos de texto y determinar si el sentimiento general es positivo, negativo o neutral. Es útil para las empresas que buscan comentarios de clientes porque puede analizar una variedad de fuentes de datos (como tuits en Twitter, comentarios de Facebook y reseñas de productos) a fin de evaluar las opiniones de los clientes y los niveles de satisfacción.

La detección de anomalías es el proceso de usar algoritmos para identificar patrones inusuales o valores atípicos en los datos que podrían indicar un problema. La detección de anomalías se usa para monitorear la infraestructura de IT, aplicaciones en línea y redes, y para identificar actividad que indique una potencial vulneración de seguridad o que podría llevar a una interrupción en la red más adelante. La detección de anomalías también se usa para detectar transacciones bancarias fraudulentas. Conoce más sobre AIOps.

El reconocimiento de imágenes analiza imágenes e identifica objetos, rostros u otras características en las imágenes. Tiene una variedad de aplicaciones más allá de las herramientas de uso común, como la búsqueda de imágenes de Google. Por ejemplo, se puede usar en agricultura para monitorear el estado del cultivo e identificar pestes o enfermedades. Los vehículos autónomos, las imágenes médicas, los sistemas de vigilancia y los juegos de realidad aumentada usan reconocimiento de imágenes, todos.

Las analíticas predictivas analizan los datos históricos e identifican patrones que pueden usarse para realizar predicciones sobre eventos o tendencias futuras. Esto puede ayudar a las empresas a optimizar sus operaciones, prever la demanda o identificar oportunidades o riesgos potenciales. Algunos ejemplos incluyen predicciones de demanda de productos, demoras en el tránsito y durante cuánto tiempo más pueden ejecutarse de forma segura los equipos de manufactura.

Conoce más sobre el mantenimiento predictivo

Elastic machine learning capabilities and its use cases

¿Cuáles son las desventajas del machine learning?

Las desventajas del machine learning incluyen:

  • Dependencia de datos de entrenamiento de alta calidad: si los datos están sesgados o incompletos, el modelo también puede estar sesgado o ser impreciso.
  • Costo: puede haber un alto costo asociado con los modelos de entrenamiento y el preprocesamiento de datos. Dicho esto, sigue siendo más bajo que el enorme costo de programación de un algoritmo especializado para cumplir con la misma tarea y que probablemente no sea tan preciso.
  • Inexplicabilidad: la mayoría de los modelos de machine learning, como las redes neuronales profundas, no operan de forma transparente. Comúnmente conocidos como modelos de "caja negra", esto hace que sea desafiante comprender cómo los modelos llegan a su decisión.
  • Experiencia: existen muchos tipos de modelos para elegir. Sin un equipo de ciencia de ciencia de datos designado, las organizaciones pueden tener problemas con el ajuste de los hiperparámetros para lograr el rendimiento óptimo. La complejidad del entrenamiento, en especial para transformadores, incrustación y modelos de lenguaje grandes, también puede ser una barrera para la adopción.

Mejores prácticas para machine learning

Algunas mejores prácticas para machine learning incluyen lo siguiente:

  • Asegúrate de que los datos estén limpios, organizados y completos.
  • Selecciona el enfoque correcto que se adapte a tus datos y problema actual.
  • Usa técnicas para prevenir el sobreajuste, en el que el modelo tiene un buen rendimiento en los datos de entrenamiento, pero mal rendimiento en datos nuevos.
  • Evalúa el rendimiento de tu modelo probándolo en datos completamente nuevos. El rendimiento que mediste durante el desarrollo y la optimización del modelo no es una buna forma de predecir cómo rendirá en producción.
  • Ajusta la configuración de tu modelo para encontrar el mejor rendimiento, lo que se conoce como ajuste de hiperparámetros.
  • Elige las métricas además de la precisión del modelo estándar que evalúan el rendimiento de tu modelo en el contexto de tu problema comercial y aplicación reales.
  • Mantén registros detallados para asegurar que los demás puedan comprender y replicar tu trabajo.
  • Mantén tu modelo actualizado para asegurarte de que siga teniendo un buen rendimiento con datos nuevos.

Da los primeros pasos con machine learning de Elastic

El machine learning de Elastic hereda los beneficios de nuestra plataforma de Elasticsearch escalable. Obtienes valor desde el inicio gracias a las integraciones en soluciones de observabilidad, seguridad y búsqueda que usan modelos que requieren menos entrenamiento para ponerse en marcha. Con Elastic, puedes reunir nueva información para brindar experiencias revolucionarias a tus usuarios internos y clientes, todo con confiabilidad a escala.

Conoce cómo puedes hacer lo siguiente:

Ingestar datos de cientos de fuentes y aplicar machine learning y procesamiento de lenguaje natural donde residen los datos mediante integraciones integradas.

Aplicar machine learning de la forma que mejor funcione para ti. Obtén valor desde el inicio gracias a modelos preconfigurados, según tu caso de uso: modelos preconfigurados para monitoreo automático y búsqueda de amenazas, transformadores y modelos preentrenados para implementar tareas de NLP, como análisis de sentimiento o interacción de respuesta a preguntas, y Elastic Learned Sparse Encoder™ para implementar búsqueda semántica con un clic. O, si tu caso de uso demanda modelos optimizados y personalizados, entrena modelos supervisados con tus datos. Elastic te da la flexibilidad de aplicar el enfoque que se adapte a tus casos de uso y esté a tu nivel de experiencia.

Glosario de términos de machine learning

  • La inteligencia artificial es la capacidad de las máquinas para realizar tareas que generalmente requieren la inteligencia de una persona, como aprender, razonar, resolver problemas y tomar decisiones.
  • Las redes neuronales son un tipo de algoritmo de machine learning que consiste en capas interconectadas de nodos que procesan y transmiten información. Están inspiradas en la estructura y función del cerebro humano.
  • El aprendizaje profundo es un subcampo de las redes neuronales que tiene muchas capas, lo que le permite aprender relaciones bastante más complejas que los demás algoritmos de machine learning.
  • El procesamiento de lenguaje natural (NLP) es un subcampo de AI que se enfoca en permitir a las máquinas comprender, interpretar y generar lenguaje humano.
  • La búsqueda de vectores es un tipo de algoritmo de búsqueda que usa incrustaciones de vectores y búsqueda k de vecino más cercano para recuperar información relevante de grandes sets de datos.