Estos son los algoritmos más utilizados en Machine Learning

Ejemplos de estos algoritmos para Machine Learning los puedes encontrar en GitHub: www.github.com

De manera general, existen 2 grandes tipos de algoritmos:

  1. Aprendizaje Supervisado: estos reciben como entrada un conjunto de datos (variables independientes) y su valor de salida (variable dependiente) correspondiente. La idea es, utilizando la entrada, construir una función que asigne a la entrada la etiqueta de salida. Existen dos grandes tipos de tareas aquí, la regresión y clasificación, la diferencia es que en la regresión se trata de predecir números reales y la clasificación predice números enteros (número de clase).
  2. Aprendizaje no supervisado: los algoritmos reciben como entrada un conjunto de datos de entrada (variables independientes). La idea es, agrupar en clústers aquellos datos que sean parecidos.

Existen, además, otros 2 tipos de algoritmos en Machine Learning que no mencionaremos aquí, pero son aprendizaje semi-supervisado y aprendizaje por refuerzo.

Regresión lineal

Este algoritmo es el más básico en cuanto nos referimos a tareas de regresión, se trata de buscar una relación (función) lineal entre los valores independientes (entradas) y la salida. Podemos decir que, una función lineal es la “multiplicación” entre la entrada y una pendiente (pesos) y después sumar un desplazamiento. Por ejemplo, si la entrada es de un solo valor, digamos x, entonces podemos representar el algoritmo de regresión lineal como: 

Donde

    • y es el valor deseado de salida
    • w es la pendiente
    • x es la entrada
    • b es el desplazamiento o bias.

En general, si x es un vector, entonces la regresión lineal está dada por la ecuación:

- Anuncio -
Machine Learning Regresion lineal
Perceptrón

Este algoritmo es el más básico para tareas de clasificación (pertenencia a una clase). También es un tipo de neurona artificial. La idea se basa en el algoritmo de regresión lineal, pero en lugar de una igualdad, nos basamos en desigualdades, es decir, tratamos de determinar si “el punto” que representa a la variable independiente está por encima de una línea de decisión o no, utilizando la función:

fx={1    si wTx+b≥0 0    si wTx+b<0 .

En resumen, podemos pensar que el perceptrón funciona de la manera que se muestra en la siguiente imagen:

Machine Learning Perceptrón
Regresión logística

Primero, hay que aclarar que la regresión logística es un algoritmo de clasificación NO de regresión. Se basa en modelar las probabilidades de pertenencia a una clase. Este algoritmo se basa en la siguiente función (conocida como función logit):

Machine Learning Regresión logística

La idea es determinar la probabilidad de que la entrada x pertenezca a la clase por medio de la siguiente fórmula:

KNN (K vecinos más cercanos) 

Este es un algoritmo híbrido, ya que puede ser utilizado tanto como para regresión como para clasificación. La idea de este algoritmo es obtener los k datos más cercanos a la entrada (de ahí el nombre) y tomar una decisión de acuerdo con la tarea:

  • Regresión: la salida es el promedio de los valores f(x) de los k elementos más cercanos.
  • Clasificación: asignar el dato a la clase a la cual más vecinos cercanos pertenezcan.
Machine Learning KNN
Decision Trees (Árboles de decisión)

Estos algoritmos son más utilizados para clasificación. Asemejan a un grafo en forma de árbol en el cual cada nodo interno representa una decisión (por ello el nombre), quiere decir, que en cada nodo se hace una prueba, y de acuerdo con el resultado, esa prueba irá avanzando en el árbol hasta llegar a una hoja que estará etiquetada con una clase. Por lo tanto, para un nuevo elemento se recorrerá el camino que vaya indicando de acuerdo con sus elementos y una vez que alcance una hoja demostrará a que clase pertenece.

Algoritmo de Decision Trees
Decision Trees – Medium
Random Forest (Bosque aleatorio)

¿De qué están formados los bosques? ¡Exacto! De árboles, este algoritmo utiliza varios árboles de decisión, y lo único es que toma un promedio de las salidas y esa es la salida de este modelo.

Algoritmo Random Forest
Random Forest (Bosque aleatorio) – Repositorio Geofísico Nacional
K-Means (K-medias)

Este algoritmo pertenece a los algoritmos no supervisados. Describimos el algoritmo en pasos:

  1. Seleccionar de manera aleatoria k puntos, conocidos como centroides.
  2. Cada elemento lo asignamos al centroide (clúster) más cercano.
  3. Para cada clúster calculamos un nuevo centroide promediando los elementos que pertenecen al clúster.
  4. Repetimos el paso 2 y 3 hasta que los centroides no cambien.

Para predecir a qué clase pertenece un nuevo elemento, simplemente lo asignamos al clúster más cercano.

Algoritmo K Means
K-Means – Towards Data Science
Redes Neuronales Artificiales (RNA)

Podemos pensar que las RNA, más básicas, son muchos perceptrones conectados con funciones de activación (función cuya salida es 0, “OFF”, o 1, ”ON”) es por ello que muchas veces se le puede llamar como perceptrón multicapa. En general, las redes neuronales artificiales tienen tres tipos de capas:

  1. Entrada
  2. Oculta
  3. Salida

Pueden tener más de una capa oculta, estas capas se encargan de transformar la entrada en la salida deseada.

Algoritmo RNA
Redes Neuronales Artificiales (RNA) – Research Gate

En general, existen muchos más algoritmos, pero están más allá de este artículo. Estos son solo algunos de los más utilizados el área de machine learning (tanto en la educación como en la industria), con estos podrás darte una idea de cómo funcionan estos algoritmos y así encuentres un poco de motivación para aprender machine learning.

Artículo anteriorTodo lo que necesitas saber sobre Steam Link
Artículo siguienteCanales de YouTube para aprender programación
Candidato a Doctor en Ciencias. Curioso por la ciencia. Apasionado por la tecnología. Data Science. Docente.