Los métodos de Machine Learning para aplicar en distintos ámbitos empresariales, científicos y laborales. Es hoy en día un tema de moda en la investigación y la industria. Todo ello con nuevas metodologías desarrolladas todo el tiempo.
Así pues, la velocidad y complejidad de este campo hace que mantenerse totalmente actualizado con métodos nuevos, sea difícil incluso para los expertos. Lo hace potencialmente abrumador para los científicos de datos principiantes.
Así pues, para que entiendas mejor esta tecnología y ofrecer una ruta de aprendizaje a quienes no conocen los conceptos básicos, verás a continuación algunos métodos de Machine Learning diferentes.
Los métodos de Machine Learning se aplican mediante algoritmos
Para empezar a explicar los métodos de Machine Learning, tienes que saber primero que un algoritmo de esta tecnología, también llamado modelo, es una expresión matemática que representa los datos en el contexto de un problema. A menudo, un problema de índole organizacional. El objetivo de esto es pasar de los datos a la comprensión total.
Por ejemplo, si un comerciante minorista online quiere anticipar las ventas de los siguientes 3 meses, podría utilizar un algoritmo de Machine Learning que predijera esas ventas. Todo ello basándose en las ventas pasadas y otros datos relevantes. Igualmente, un fabricante podría supervisar visualmente algunos equipos importantes y alimentar los datos de vídeo a través de algoritmos entrenados para identificar algunas fallas.
Antes de entrar en materia, tienes que distinguir entre 2 categorías generales de Machine Learning. La primera es el aprendizaje supervisado y la segunda, el aprendizaje no supervisado. Las técnicas de Machine Learning supervisado se aplican cuando tienes un dato que quieres predecir o explicar. Esto se hace utilizando datos anteriores de entradas y procesos para predecir una salida que está basada en una entrada nueva.
Por ejemplo, se pueden utilizar técnicas de Machine Learning supervisado para ayudar a una compañía de servicios que quiere predecir el número de nuevos usuarios que se suscribirán al mismo el próximo mes.
Por el contrario, el Machine Learning no supervisado busca formas de relacionar y juntar puntos de datos. Todo ello sin utilizar una variable objetivo para predecir. En otras palabras, determina los datos en conceptos de rasgos y utiliza dichos rasgos para formar grupos de puntos que son parecidos entre ellos.
Como ejemplo práctico, se podría utilizar técnicas de aprendizaje no supervisado para ayudar a un minorista. El cual quiere separar productos con características casi iguales. Esto sin tener que especificar de antemano qué características debe utilizar para ello.
1. Métodos de Machine Learning en la regresión
Los métodos de regresión pertenecen a la categoría de Machine Learning supervisado. Ayudan a predecir y a explicar un valor numérico concreto. Esto lo hace basándose en un conjunto de datos previos. Por ejemplo, predecir el coste de cualquier propiedad. Todo ello basándose en datos de precios anteriores de propiedades similares y con las mismas características físicas.
El método más sencillo para esto es la regresión lineal. En la que se utiliza la ecuación matemática de la recta para modelar una agrupación de datos. Para ello, se entrena un modelo de regresión lineal con diversos pares de datos. Calculando la posición y la pendiente de una línea, la cual acorta la distancia total entre todos los puntos de datos y la línea propiamente dicha.
En otras palabras, se puede calcular la pendiente y la intersección de una recta que se acerque lo más que pueda a las observaciones de los datos que se recopilan. Debes tener en cuenta que las técnicas de regresión van desde las más sencillas, como la regresión lineal hasta las más complejas, como la regresión lineal regularizada, la regresión polinómica, los árboles de decisión y las regresiones de bosque aleatorio, las redes neuronales, etc.
2. Clasificación
Se trata de otro método de Machine Learning supervisado. Los métodos de clasificación predicen o explican un valor de clase. Es así como pueden ayudar en la predicción de un cliente online que comprará o no un producto en específico. De tal manera que el resultado puede ser sí o no: comprado o no comprado. Pero estos métodos no se limitan a 2 clases solamente.
Es por ello que una técnica de clasificación podría ayudar a determinar si una imagen dada, contiene un auto normal o un camión. Ahora bien, es casi certero al 100% que la salida arrojará 3 diferentes valores. Que la imagen contiene un auto, la imagen contiene un camión, o la imagen no contiene ni un coche ni un camión.
De esta manera, el algoritmo de clasificación más sencillo es la regresión logística. Esto debido a que es parecido a un método de regresión, pero no lo es. Simplemente, la regresión logística estima la probabilidad de que se produzca un evento en función de una o varias entradas dadas para el análisis.
Para ilustrarte con un ejemplo, una regresión logística puede tomar como entradas 2 calificaciones de exámenes de un estudiante. Esto para estimar la probabilidad de que va a ser admitido en una determinada universidad.
Dado que la estimación es una probabilidad, el resultado es un número entre 0 y 1. En donde el 1 representa la certeza total. Si la probabilidad estimada del estudiante es superior a 0,5, se puede predecir que será admitido en la universidad. Caso contrario, si la probabilidad que se estima es por debajo de 0,5. Se puede predecir que no será admitido.
3. Métodos de Machine Learning mediante el clustering o agrupamiento
De entrada, los métodos de clustering entran en la categoría de machine learning no supervisado. Esto debido a que su objetivo es agrupar observaciones que tienen características análogas. Es así como los métodos de clustering no utilizan información de salida para el entrenamiento, sino que dejan que el algoritmo defina la salida.
En los métodos de clustering, sólo puedes usar visualizaciones para inspeccionar la calidad de la solución que sale al final. Igualmente, el método de clustering o agrupamiento más conocido es K-Means. En donde la «K» representa el número de clústeres que el usuario elige crear. Por esta razón, verás a continuación lo que hace K-Means con los puntos de datos:
- Escoge aleatoriamente “K” centros dentro de los datos.
- Asigna cada punto de datos al más cercano de los centros creados aleatoriamente.
- Vuelve a calcular el centro de cada clúster.
- Si los centros no cambian o cambian muy poco, el proceso se da por terminado. Por el contrario, se vuelve al segundo factor.
4. Reducción de la dimensionalidad
Como su nombre indica, se usa la reducción de la dimensionalidad para borrar la información menos importante, a veces columnas redundantes, de un conjunto de datos. En la práctica, a menudo se ven conjuntos de datos con cientos e incluso, miles de columnas, también llamadas “características”.
Por esta razón, reducir el número total de conjuntos de datos redundantes es vital. Como ejemplo ilustrativo, las imágenes pueden incluir miles de píxeles, pero no todos ellos son importantes para un análisis en profundidad.
También sucede cuando se prueban microchips en el proceso de fabricación. Aquí puede haber miles de mediciones y pruebas aplicadas a cada chip. Muchas de las cuales arrojan información repetida. Así que en estos casos, se necesitan algoritmos de reducción de la dimensionalidad para hacer manejable el conjunto de datos relevante.
El método de reducción de la dimensionalidad más utilizado, es el Análisis de Componentes Principales (PCA). El cual reduce la dimensión del espacio de características encontrando nuevos vectores. Los cuales maximizan la variación lineal de los datos proporcionados.
Del mismo modo, el análisis de componentes principales puede reducir la dimensión de los datos de forma drástica. Todo ello sin perder mucha información, cuando las correlaciones lineales de los datos son sólidas. De hecho, también se puede medir la magnitud real de la pérdida de información y ajustarla con base en las pérdidas.
Uno de los métodos de Machine Learning más utilizados, es el t-Stochastic Neighbor Embedding (t-SNE). El cual realiza una reducción no lineal de la dimensionalidad. Los usuarios acostumbran a usar t-SNE para la visualización de datos. Pero también se puede usar para las técnicas y actividades de Machine Learning. Tales como la reducción del espacio de características y el clustering, por mencionar algunas.
5. Métodos de Machine Learning mediante montaje
Un ejemplo de este método, es que quieres construir una bicicleta debido a que no te sientes satisfecho con las bicicletas disponibles en las tiendas y en Internet. Para ello, podrías empezar por encontrar lo mejor de cada pieza que necesitas y una vez que ensamblas todas estas piezas. La bicicleta resultante será mucho mejor que todas las opciones que has visto.
Por esta razón, los métodos de conjunto utilizan esta misma idea de combinar varios modelos de predicción. Los cuales entran en los métodos de Machine Learning supervisado. Esto para obtener predicciones de mayor calidad que las que podría suministrar cada uno de los modelos por separado.
Generalmente, los algoritmos “Random Forest” o “Bosque Aleatorio”, son un método de conjunto que agrupa diversos árboles de decisión. Todos ellos entrenados con diferentes muestras de los conjuntos de datos. Como resultado, la calidad de las predicciones de un random, forest es mayor que la calidad de las predicciones estimadas con un solo Árbol de Decisión.
Debes pensar en los métodos de conjunto como una forma de reducir la varianza y el sesgo de un único modelo de Machine Learning. Hacer esto es importante debido a que un modelo específico puede ser preciso en determinadas condiciones, pero inexacto en otras. Con otro modelo, la precisión relativa puede ser inversa y al mezclar los 2 modelos, las predicciones se equilibran de forma total en cuanto a la calidad de las mismas.
6. Redes neuronales y Deep Learning
A diferencia de las regresiones lineales y logísticas, las cuales son consideradas modelos lineales. La función principal de las redes neuronales, es captar patrones no lineales en los datos. Añadiendo capas de características al modelo.
De hecho, la estructura de las redes neuronales es lo suficientemente flexible como para desarrollar una conocida regresión lineal y logística simultáneamente. El término “Deep Learning” (aprendizaje profundo), procede de una red neuronal con múltiples capas ocultas y abarca un gran abanico de arquitecturas de este método.
Es especialmente difícil mantenerse al día con los avances en el Deep Learning, Parte de ello se debe a que las comunidades de investigación y de la industria han redoblado sus esfuerzos en este ámbito. Generando metodologías completamente nuevas cada día que pasa.
Así pues, para obtener el mejor rendimiento, las técnicas de Deep Learning requieren muchos datos y mucha potencia de cálculo. Ya que el método se encarga de autoajustar muchos parámetros dentro de arquitecturas colosales. Puede que quede claro rápidamente el por qué los profesionales del Deep Learning y los científicos de datos necesitan de computadoras muy potentes mejoradas con GPU o Unidades de Procesamiento Gráfico.
Del mismo modo, las técnicas de Deep Learning y redes neuronales han tenido mucho éxito en las áreas de visión, en la clasificación de imágenes, texto, audio y vídeo. Es por esto que los paquetes de software más comunes para este método son Tensorflow y PyTorch.
7. Aprendizaje por transferencia
Para explicar este método de MachineLlearning, imagina que eres un científico de datos que trabaja en el sector del mercado minorista. Así pues, has pasado meses entrenando un modelo de alta calidad para clasificar imágenes como camisas, camisetas y demás prendas superiores. Ahora, tu nueva tarea es construir un modelo equivalente para clasificar imágenes de pantalones como jeans, casuales y pantalones de vestir.
¿Puedes transferir los conocimientos construidos en el primer modelo y aplicarlos al segundo? Sí se puede, utilizando el método de aprendizaje por transferencia. Así pues, el aprendizaje por transferencia consiste en reutilizar parte de una red neuronal previamente entrenada y adaptarla a una nueva tarea, siempre y cuando sea análoga.
En otras palabras, una vez que se entrena una red neuronal con los datos de una tarea, se puede transferir una parte de las capas entrenadas y combinarlas con unas cuantas capas nuevas. Las cuales se pueden entrenar con los datos de la nueva tarea propiamente dicha. Por esta razón, al agregar unas pocas capas, la nueva red neuronal puede aprender y adaptarse rápidamente a la nueva tarea que se ha codificado.
La principal ventaja del aprendizaje por transferencia es que se necesitan menos datos para entrenar la red neuronal. Esto es importante debido a que el entrenamiento de los algoritmos de deep learning es costoso en términos de tiempo y dinero, traducidos en recursos computacionales. Por supuesto, suele ser muy difícil encontrar suficientes datos ya etiquetados para dicho entrenamiento.
De igual manera, el aprendizaje por transferencia se ha vuelto cada vez más utilizado y ahora puedes disponer de diversos modelos pre – entrenados, totalmente disponibles para tareas comunes de Deep Learning. Algunos de ellos son la clasificación de imágenes y textos. ¿Quieres ser un científico de datos totalmente capacitado para ejecutar tareas y métodos de Machine Learning? Con el Máster en Data Science podrás adquirir todos los conocimientos necesarios para que seas un profesional en todos los aspectos de este trabajo.