Aprendizaje automático: supervisado

El aprendizaje supervisado es uno de los modelos importantes de aprendizaje involucrados en las máquinas de entrenamiento. Este capítulo habla en detalle sobre lo mismo.

Algoritmos para el aprendizaje supervisado

Hay varios algoritmos disponibles para el aprendizaje supervisado. Algunos de los algoritmos de aprendizaje supervisado más utilizados son los que se muestran a continuación:

  • k-Vecinos más cercanos
  • Árboles de decisión
  • Bayes ingenuo
  • Regresión logística
  • Máquinas de vectores de soporte

A medida que avanzamos en este capítulo, analicemos en detalle cada uno de los algoritmos.

k-Vecinos más cercanos

Los k-vecinos más cercanos, que simplemente se denominan kNN, es una técnica estadística que se puede utilizar para resolver problemas de clasificación y regresión. Analicemos el caso de clasificar un objeto desconocido usando kNN. Considere la distribución de objetos como se muestra en la imagen que se muestra a continuación:

Fuente:

https://en.wikipedia.org/wiki/K-nearest_neighbors_algorithm

El diagrama muestra tres tipos de objetos, marcados en colores rojo, azul y verde. Cuando ejecute el clasificador kNN en el conjunto de datos anterior, los límites para cada tipo de objeto se marcarán como se muestra a continuación:

Fuente:

https://en.wikipedia.org/wiki/K-nearest_neighbors_algorithm

Ahora, considere un nuevo objeto desconocido que desee clasificar como rojo, verde o azul. Esto se muestra en la siguiente figura.

Como lo ve visualmente, el punto de datos desconocido pertenece a una clase de objetos azules. Matemáticamente, esto se puede concluir midiendo la distancia de este punto desconocido con todos los demás puntos del conjunto de datos. Cuando lo hagas, sabrás que la mayoría de sus vecinos son de color azul. La distancia promedio a los objetos rojos y verdes sería definitivamente mayor que la distancia promedio a los objetos azules. Así, este objeto desconocido se puede clasificar como perteneciente a la clase azul.

El algoritmo kNN también se puede utilizar para problemas de regresión. El algoritmo kNN está disponible como listo para usar en la mayoría de las bibliotecas ML.

Árboles de decisión

A continuación se muestra un árbol de decisiones simple en formato de diagrama de flujo:

Escribiría un código para clasificar sus datos de entrada según este diagrama de flujo. El diagrama de flujo se explica por sí mismo y es trivial. En este escenario, está intentando clasificar un correo electrónico entrante para decidir cuándo leerlo.

En realidad, los árboles de decisión pueden ser grandes y complejos. Hay varios algoritmos disponibles para crear y atravesar estos árboles. Como entusiasta del aprendizaje automático, debe comprender y dominar estas técnicas para crear y atravesar árboles de decisiones.

Bayes ingenuo

Naive Bayes se utiliza para crear clasificadores. Suponga que desea separar (clasificar) frutas de diferentes tipos de una canasta de frutas. Puede utilizar características como el color, el tamaño y la forma de una fruta. Por ejemplo, cualquier fruta que sea de color rojo, de forma redonda y de unos 10 cm de diámetro puede considerarse manzana. Entonces, para entrenar el modelo, usaría estas características y probaría la probabilidad de que una característica dada coincida con las restricciones deseadas. Las probabilidades de diferentes características se combinan para llegar a una probabilidad de que una fruta determinada sea una manzana. Naive Bayes generalmente requiere una pequeña cantidad de datos de entrenamiento para la clasificación.

Regresión logística

Mira el siguiente diagrama. Muestra la distribución de puntos de datos en el plano XY.

En el diagrama, podemos inspeccionar visualmente la separación de los puntos rojos de los puntos verdes. Puede dibujar una línea de límite para separar estos puntos. Ahora, para clasificar un nuevo punto de datos, solo necesitará determinar en qué lado de la línea se encuentra el punto.

Máquinas de vectores de soporte

Mire la siguiente distribución de datos. Aquí las tres clases de datos no se pueden separar linealmente. Las curvas de los límites no son lineales. En tal caso, encontrar la ecuación de la curva se convierte en un trabajo complejo.

Fuente: http://uc-r.github.io/svm

Support Vector Machines (SVM) es útil para determinar los límites de separación en tales situaciones.