menu icon

Machine Learning

El machine learning se centra en aplicaciones que aprenden de la experiencia y mejoran su toma de decisiones o precisión predictiva a lo largo del tiempo.

¿Qué es machine learning?

El machine learning es una rama de la inteligencia artificial (IA) enfocada en la creación de aplicaciones que aprenden de los datos y mejoran su precisión con el tiempo sin ser programados para hacerlo. 

En la ciencia de datos, un algoritmo es una secuencia de pasos de procesamiento estadístico. En el machine learning, los algoritmos son “entrenados” para encontrar patrones y características en cantidades masivas de datos con el fin de tomar decisiones y predicciones basadas en nuevos datos. Cuanto mejor sea el algoritmo, más precisas serán las decisiones y las predicciones a medida que procesa más datos.

Hoy en día, hay ejemplos de machine learning a nuestro alrededor. Los asistentes digitales buscan en la web y reproducen música en respuesta a nuestros comandos de voz. Los sitios web recomiendan productos y películas y canciones con base en lo que compramos, vimos o escuchamos antes. Los robots aspiran el piso mientras nosotros hacemos algo mejor con nuestro tiempo. Los detectores de spam evitan que los correos electrónicos no deseados lleguen a nuestras bandejas. Los sistemas de análisis de imágenes médicas ayudan a los médicos a detectar tumores que podrían haber pasado desapercibidos. Y los primeros vehículos autónomos están siendo cada vez más populares.

Podemos esperar más. Dado que siguen aumentando los big data, la computación se vuelve más potente y accesible, y los científicos de datos continúan creando algoritmos más capaces, el machine learning hará la vida cada vez más eficiente tanto a nivel personal como laboral. 

Cómo funciona el machine learning

Crear una aplicación (o modelo) de machine learning conlleva cuatro pasos básicos. En general, los realizan los científicos de datos que trabajan en estrecha colaboración con los profesionales del negocio para quienes se está desarrollando el modelo.

Paso 1: Seleccionar y preparar un conjunto de datos de entrenamiento

Los datos de entrenamiento son un conjunto de datos representativos de los datos que el modelo de machine learning va a consumir para resolver el problema para el cual se diseñó. En algunos casos, los datos de entrenamiento están etiquetados para solicitar las características y clasificaciones que el modelo necesitará identificar. Otros datos no están etiquetados, y el modelo tendrá que extraer esas características y asignar clasificaciones por su cuenta.

En cualquier caso, los datos de entrenamiento necesitan prepararse debidamente, distribuirse de forma aleatoria, deduplicarse y revisarse para detectar desequilibrios o sesgos que podrían afectar el entrenamiento. También deben dividirse en dos subconjuntos: el subconjunto de entrenamiento, que se utilizará para entrenar la aplicación, y el subconjunto de evaluación para ponerla a prueba y perfeccionarla.

Paso 2: Seleccionar un algoritmo para ejecutar en el conjunto de datos de entrenamiento

Una vez más, un algoritmo es un conjunto de pasos de proceso estadístico. El tipo de algoritmo depende del tipo (etiquetado o no etiquetado) y la cantidad de datos en el conjunto de datos de entrenamiento, así como del tipo de problema que va a resolverse.

Los tipos comunes de algoritmos de machine learning para utilizarlos con datos etiquetados incluyen:

  • Algoritmos de regresión: la regresión lineal y logística son ejemplos de algoritmos de regresión utilizados para comprender las relaciones en los datos. La regresión lineal se utiliza para predecir el valor de una variable dependiente basada en el valor de una variable independiente. La regresión logística puede utilizarse cuando la variable dependiente es binaria por naturaleza: A o B. Por ejemplo, un algoritmo de regresión lineal podría ser entrenado para predecir las ventas anuales de un vendedor (la variable dependiente) en función de su relación con su educación o años de experiencia (las variables independientes). Otro tipo de algoritmo de regresión, llamado máquina de vectores de soporte, es útil cuando las variables dependientes son más difíciles de clasificar.
  • Árbol de decisión: un árbol de decisión utiliza datos clasificados para realizar recomendaciones basadas en un conjunto de reglas de decisión. Por ejemplo, un árbol de decisión que recomienda apostar a un caballo en particular a Win, Place o Show podría utilizar datos sobre el caballo (por ejemplo, la edad, el porcentaje de éxito y el pedigrí) y aplicar reglas a esos factores para recomendar una acción o decisión.
  • Algoritmos basados en instancias: un buen ejemplo de un algoritmo basado en instancias es k vecinos más cercanos ​o k-nn. Utiliza la clasificación para estimar la probabilidad de que un punto de datos sea miembro de un grupo u otro con base en su proximidad a otros puntos de datos.

Los algoritmos para utilizar con datos no etiquetados incluyen:

  • Algoritmos de agrupación en clúster: piense en clústeres como grupos. La agrupación en clúster se centra en identificar grupos de registros similares y etiquetar los registros según el grupo al que pertenecen. Esto se hace sin conocimiento previo de los grupos y sus características. Los tipos de algoritmos de agrupación en clúster incluyen la agrupación en clúster de K-medias, TwoStep y Kohonen.
  • Algoritmos de asociación: los algoritmos de asociación encuentran patrones y relaciones en los datos e identifican las relaciones “condicionales” frecuentes denominadas normas de asociación. Son similares a las reglas utilizadas en la minería de datos.
  • Redes neuronales: una red neuronal es un algoritmo que define una red en capas de cálculos con una capa de información, donde se introducen datos; al menos una capa oculta, donde se realizan cálculos y sacan diferentes conclusiones sobre la información; y una capa de salida, donde se asigna una probabilidad a cada conclusión. Una red neuronal profunda define una red con varias capas ocultas, cada una de las cuales refina sucesivamente los resultados de la capa anterior. (Para obtener más información, consulte la sección “Deep learning” a continuación.)

Paso 3: Entrenamiento del algoritmo para crear el modelo

El entrenamiento del algoritmo es un proceso iterativo que implica ejecutar variables a través del algoritmo, comparar la salida con los resultados que debería haber producido, ajustar los pesos y los sesgos dentro del algoritmo que podría producir un resultado más preciso, y volver a ejecutar las variables hasta que el algoritmo arroje el resultado correcto la mayor parte del tiempo. El algoritmo resultante entrenado y preciso es el modelo de machine learning, una distinción importante a tener en cuenta, porque “algoritmo” y “modelo” se utilizan incorrectamente de manera indistinta, incluso en los proyectos maven de machine learning.

Paso 4: Utilización y mejora del modelo 

El paso final es utilizar el modelo con nuevos datos y, en el mejor de los casos, para que mejore en precisión y eficacia con el tiempo. De dónde provienen los nuevos datos dependerá del problema que se esté resolviendo. Por ejemplo, un modelo de machine learning diseñado para identificar spam ingerirá mensajes de correo electrónico, mientras que un modelo de machine learning que impulsa una aspiradora robótica va a ingerir datos resultantes de la interacción del mundo real con muebles que se cambiaron de lugar o nuevos objetos en la habitación.

Métodos de machine learning 

Los métodos de machine learning (también denominados estilos de machine learning) se dividen en tres categorías principales.

Para profundizar en las diferencias entre estos enfoques, consulte “Aprendizaje supervisado vs. aprendizaje no supervisado: ¿cuál es la diferencia?

Machine learning supervisado             

El machine learning supervisado se entrena en un conjunto de datos etiquetados . Es decir, los datos se etiquetan con la información para que el modelo de machine learning para la cual se creó la determine y que incluso puede clasificarse en formas en que el modelo se supone que clasifica los datos. Por ejemplo, un modelo de visión por computadora diseñado para identificar pastores alemanes de raza pura podría ser entrenado en un conjunto de datos de varias imágenes de perros etiquetados.

El machine learning supervisado requiere menos datos de entrenamiento que otros métodos de machine learning y facilita el entrenamiento, porque los resultados del modelo pueden compararse con los resultados etiquetados reales. Sin embargo, es costoso preparar datos etiquetados correctamente, y existe el peligro de sobreajuste, o crear un modelo tan vinculado y sesgado a los datos de entrenamiento que no maneja variaciones en los nuevos datos con precisión.

Conozca más sobre el aprendizaje supervisado.   

Machine learning no supervisado

El machine learning no supervisado ingiere una enorme cantidad de datos no etiquetados y utiliza algoritmos para extraer características significativas necesarias para etiquetar, ordenar y clasificar los datos en tiempo real, sin intervención humana. El aprendizaje no supervisado no se trata de la automatización de decisiones y predicciones, sino sobre la identificación de patrones y relaciones en los datos que los humanos perderían. Veamos la detección de spam; por ejemplo, las personas generan más correos electrónicos de lo que un equipo de científicos de datos podría esperar etiquetar o clasificar en toda su vida. Un algoritmo de aprendizaje no supervisado puede analizar grandes volúmenes de correos electrónicos y descubrir las características y patrones que indican spam (y seguir mejorando al señalar el spam).

Conozca más sobre el aprendizaje no supervisado.

Aprendizaje semisupervisado 

El aprendizaje semisupervisado ofrece un término medio entre el aprendizaje supervisado y no supervisado. Durante el entrenamiento, utiliza un conjunto de datos etiquetados más pequeños para guiar la clasificación y la extracción de características de un conjunto de datos más grande y sin etiquetar. El aprendizaje semisupervisado puede resolver el problema de no tener suficientes datos etiquetados (o no poder permitirse etiquetar suficientes datos) para entrenar un algoritmo de aprendizaje supervisado. 

Machine learning por refuerzo

El machine learning por refuerzo es un modelo de machine learning de comportamiento que es similar al aprendizaje supervisado, pero el algoritmo no se entrena utilizando datos de muestra. Este modelo aprende a medida que utiliza el método de prueba y error. Se reforzará una secuencia de resultados satisfactorios para desarrollar la mejor recomendación o política para un problema determinado.

El sistema IBM Watson®, que ganó el desafío Jeopardy! en 2011, es un buen ejemplo. El sistema utilizó machine learning por refuerzo para decidir si intenta una respuesta (o pregunta, por así decirlo), qué cuadrado seleccionar en el tablero y cuánto apostar, especialmente en los dobles diarios.

Conozca más sobre el aprendizaje por refuerzo.    

Deep learning

El deep learning es un subconjunto del machine learning (todo el deep learning es machine learning, pero no todo el machine learning es deep learning). Los algoritmos de deep learning definen una red neuronal artificial que está diseñada para saber cómo aprende el cerebro humano. Los modelos de deep learning requieren grandes cantidades de datos que pasan a través de varias capas de cálculos, aplicando pesos y sesgos en cada capa sucesiva para ajustar y mejorar continuamente los resultados.

En general, los modelos de deep learning son no supervisados o semisupervisados. Los modelos de aprendizaje por refuerzo también pueden ser modelos de deep learning. Ciertos tipos de modelos de deep learning, incluyendo redes neuronales convolucionales (CNN) y redes neuronales recurrentes (RNN), están impulsando el progreso en áreas como la visión por computadora, procesamiento de lenguaje natural (incluyendo el reconocimiento del habla), y los vehículos autónomos. 

Vea la publicación de blog “IA vs. machine learning vs. deep learning vs. redes neuronales: ¿Cuál es la diferencia?” para tener una idea más clara de cómo se relacionan los diferentes conceptos.

Conozca más sobre deep learning.                                                               

Casos de uso de machine learning en el mundo real

Como se señaló al principio, el machine learning está en todas partes. Estos son solamente algunos ejemplos de machine learning que puede encontrar todos los días:

  • Asistentes digitales: Apple Siri, Amazon Alexa, Google Assistant y otros asistentes digitales funcionan con procesamiento del lenguaje natural (PLN), una aplicación de machine learning que permite a las computadoras procesar datos de texto y voz y entender el lenguaje humano tal como las personas. El procesamiento del lenguaje natural también impulsa aplicaciones de voz, como GPS y software de reconocimiento de voz (conversión de voz en texto).
  • Recomendaciones: los modelos de deep learning generan recomendaciones del tipo “a las personas también le gustó” y “solo para usted” ofrecidas por Amazon, Netflix, Spotify, y otros servicios de comercio minorista, entretenimiento, viajes, búsqueda de empleo y noticias.
  • Publicidad contextual en línea: los modelos de machine learning y deep learning pueden evaluar el contenido de una página web —no solamente el tema, sino también matices como la opinión o actitud del autor— y gestionar anuncios adaptados a los intereses del visitante.
  • Chatbots: los chatbots pueden utilizar una combinación de reconocimiento de patrones, proceso del lenguaje natural y redes neuronales profundas para interpretar el texto de entrada y proporcionar respuestas adecuadas.
  • Detección del fraude:  los modelos de regresión y clasificación de machine learning han sustituido los sistemas de detección de fraudes basados en reglas, que tienen un alto número de afirmaciones falsas al marcar el uso de tarjetas de crédito robadas y casi nunca detectan el uso delictivo de datos financieros robados o vulnerados.
  • Ciberseguridad: el machine learning puede extraer inteligencia de informes de incidentes, alertas, publicaciones de blogs y más para identificar amenazas potenciales, asesorar a analistas de seguridad y acelerar la respuesta.
  • Análisis de imágenes médicas: los tipos y el volumen de datos de imágenes médicas digitales se han ampliado, lo que ha llevado a más información disponible para ayudar en diagnósticos, pero también más oportunidad para el error humano en la lectura de los datos. Las redes neuronales convolucionales (CNN), las redes neuronales recurrentes (RNN) y otros modelos de deep learning han demostrado ser cada vez más eficaces en la extracción de características e información de imágenes médicas para ayudar en diagnósticos precisos.
  • Vehículo autónomo: es toda una proeza en el machine learning: debe identificar continuamente objetos en el entorno, predecir cómo va a cambiar o moverse, así como guiar el vehículo alrededor de los objetos, así como hacia el destino del conductor. Prácticamente todas las formas de machine learning y el algoritmo de deep learning mencionado juega un papel en la habilitación de un vehículo autónomo.

Machine learning e IBM Cloud

IBM Watson Machine Learning da soporte al final del ciclo de vida del machine learning. Está disponible en una gama de ofertas que le permiten crear modelos de machine learning en cualquier lugar donde estén sus datos e implementarlos en cualquier lugar del entorno de multinube híbrida. 

IBM Watson Machine Learning on IBM Cloud Pak for Data ayuda a la ciencia de datos empresariales y a los equipos de IA a acelerar el desarrollo y la implementación de IA en cualquier lugar, en una plataforma de datos e IA nativa de la nube. IBM Watson Machine Learning Cloud, un servicio administrado en el entorno de IBM Cloud, es la forma más rápida de mover modelos desde la experimentación en el escritorio hasta la implementación para cargas de trabajo de producción. Para los equipos más pequeños que buscan escalar implementaciones de machine learning, IBM Watson Machine Learning Server ofrece una instalación sencilla en cualquier nube privada o pública.

Regístrese para obtener un ID de IBM (IBMid) y crear su cuenta de IBM Cloud.