Descripción de los principios del aprendizaje automático

Completado

El aprendizaje automático es una técnica de programación que se usa para crear modelos predictivos. A diferencia de la programación típica, en la que el código se usa para describir pasos específicos para generar un resultado, el aprendizaje automático se basa en el uso de un algoritmo para explorar de manera iterativa la relación entre las características de una entidad de datos y la etiqueta que el modelo resultante debe predecir. Los algoritmos de aprendizaje automático se basan en estadísticas y la teoría de la probabilidad y se basan en grandes volúmenes de datos con los que entrenar el modelo.

En un nivel simplista, un modelo de Machine Learning es una función que toma las características de una entidad observada (sus características) y hace un cálculo sobre ellos para devolver una etiqueta prevista. En general, es habitual hacer referencia a las características como x y la etiqueta prevista como y; por lo tanto, un modelo de Machine Learning es la función f en la expresión y = f(x).

La operación específica que realiza la función en las características para calcular un valor para la etiqueta viene determinada por el algoritmo que se usa para entrenar el modelo.

Tipos de aprendizaje automático

En términos generales, hay dos tipos comunes de aprendizaje automático:

  • Aprendizaje automático supervisado, en el que el modelo se entrena con datos que incluyen valores de etiqueta conocidos (por lo que un algoritmo usa los datos existentes para establecer una relación entre x e y, lo que da lugar a una función que se puede aplicar a x para calcular y).
  • Aprendizaje automático no supervisado, en el que el modelo se entrena solo con valores de características (x) y observaciones de grupos (o clústeres) con características similares.

Aprendizaje automático supervisado

Este módulo se centra en el aprendizaje automático supervisado, ya que es el escenario más común. Dentro de la amplia definición del aprendizaje automático supervisado, hay dos tipos de algoritmo de aprendizaje automático comunes:

  • Algoritmos de regresión, en los que la etiqueta es un valor numérico como un precio, temperatura, cantidad u otro valor que se puede medir. Los algoritmos de regresión generan modelos en los que la función (f) opera en las características (x) para calcular el valor numérico de la etiqueta (y).

    Por ejemplo, se podría usar un algoritmo de regresión para entrenar un modelo que predice el número esperado de helados que un quiosco vende en un parque un día determinado en función de características como el mes del año, el día de la semana, la temperatura, la humedad, etc.

  • Algoritmos de clasificación, en los que la etiqueta es una categoría discreta (o clase). Los algoritmos de clasificación generan modelos en los que la función (f) opera en las características (x) para calcular un valor de probabilidad para cada clase posible y devuelve la etiqueta (y) de la clase con la mayor probabilidad.

    Por ejemplo, se podría usar un algoritmo de clasificación para entrenar un modelo que prediga si un paciente tiene o no diabetes en función de características como el nivel de insulina en sangre, el peso, la altura, la edad, etc. Un modelo de clasificación que identifica una de las dos clases posibles (como verdadero o falso) es un ejemplo de clasificación binaria. Los algoritmos que predicen la probabilidad de más de dos clases (por ejemplo, diferenciando entre pacientes sin diabetes, con diabetes tipo 1 o con diabetes tipo 2) se usan para la clasificación multiclase.

Aprendizaje automático no supervisado

La forma más común de aprendizaje no supervisado es la agrupación en clústeres, en la que las características de los casos de datos se consideran un vector de puntos en el espacio multidimensional. El objetivo de un algoritmo de agrupación en clústeres es definir clústeres que agrupen los puntos para que los casos con características similares estén cerca, pero los clústeres estén claramente separados entre sí.

La agrupación en clústeres resulta útil cuando es necesario definir categorías de datos distintas, pero no se tienen categorías predefinidas a las que ya se asignaron observaciones de datos existentes. Por ejemplo, es posible que quiera segmentar a los clientes en función de las similitudes de sus perfiles. La agrupación en clústeres también se puede usar como un paso inicial para compilar una solución de clasificación; básicamente, se usa la agrupación en clústeres para determinar las clases adecuadas para los datos.