Explicación del aprendizaje no supervisado

A pesar del éxito del aprendizaje automático supervisado y el aprendizaje profundo, existe una escuela de pensamiento que dice que el aprendizaje no supervisado tiene un potencial aún mayor. El aprendizaje de un sistema de aprendizaje supervisado está limitado por su formación; es decir, un sistema de aprendizaje supervisado puede aprender solo aquellas tareas para las que está capacitado. Por el contrario, un sistema sin supervisión podría, en teoría, lograr una "inteligencia general artificial", es decir, la capacidad de aprender cualquier tarea que pueda aprender un ser humano. Sin embargo, la tecnología aún no está ahí.

Si el mayor problema con el aprendizaje supervisado es el gasto de etiquetar los datos de entrenamiento, el mayor problema con el aprendizaje no supervisado (donde los datos no están etiquetados) es que a menudo no funciona muy bien. Sin embargo, el aprendizaje no supervisado tiene sus usos: a veces puede ser bueno para reducir la dimensionalidad de un conjunto de datos, explorar el patrón y la estructura de los datos, encontrar grupos de objetos similares y detectar valores atípicos y otros ruidos en los datos. 

En general, vale la pena probar métodos de aprendizaje no supervisados ​​como parte de su análisis exploratorio de datos para descubrir patrones y grupos, reducir la dimensionalidad de sus datos, descubrir características latentes y eliminar valores atípicos. Si luego necesita pasar al aprendizaje supervisado o al uso de modelos previamente entrenados para hacer predicciones, depende de sus objetivos y sus datos.

¿Qué es el aprendizaje no supervisado?

Piense en cómo aprenden los niños humanos. Como padre o maestro, no es necesario que muestre a los niños pequeños todas las razas de perros y gatos que existen para enseñarles a reconocer perros y gatos. Pueden aprender de unos pocos ejemplos, sin mucha explicación, y generalizar por sí mismos. Oh, pueden llamar erróneamente a un chihuahua "Kitty" la primera vez que ven uno, pero puedes corregir eso relativamente rápido.

Los niños agrupan intuitivamente en clases grupos de cosas que ven. Uno de los objetivos del aprendizaje no supervisado es esencialmente permitir que las computadoras desarrollen la misma habilidad. Como lo expresaron Alex Graves y Kelly Clancy de DeepMind en la publicación de su blog, "Aprendizaje sin supervisión: el alumno curioso",

El aprendizaje no supervisado es un paradigma diseñado para crear inteligencia autónoma recompensando a los agentes (es decir, programas de computadora) por aprender sobre los datos que observan sin una tarea en particular en mente. En otras palabras, el agente aprende por aprender.

El potencial de un agente que aprende por aprender es mucho mayor que un sistema que reduce imágenes complejas a una decisión binaria (por ejemplo, perro o gato). Descubrir patrones en lugar de realizar una tarea predefinida puede producir resultados sorprendentes y útiles, como se demostró cuando los investigadores del Lawrence Berkeley Lab ejecutaron un algoritmo de procesamiento de texto (Word2vec) en varios millones de resúmenes de ciencia de materiales para predecir los descubrimientos de nuevos materiales termoeléctricos.

Métodos de agrupamiento

Un problema de agrupamiento es un problema de aprendizaje no supervisado que pide al modelo que busque grupos de puntos de datos similares. Actualmente se utilizan varios algoritmos de agrupación en clústeres, que suelen tener características ligeramente diferentes. En general, los algoritmos de agrupamiento analizan las métricas o las funciones de distancia entre los vectores de características de los puntos de datos y luego agrupan los que están "cerca" entre sí. Los algoritmos de agrupamiento funcionan mejor si las clases no se superponen.

Agrupación jerárquica

El análisis de conglomerados jerárquico (HCA) puede ser aglomerativo (usted construye los conglomerados de abajo hacia arriba comenzando con puntos individuales y terminando con un solo conglomerado) o divisivo (comienza con un solo conglomerado y lo divide hasta terminar con puntos individuales). Si tiene suerte, puede encontrar una etapa intermedia del proceso de agrupación que refleje una clasificación significativa.

El proceso de agrupamiento generalmente se muestra como un dendrograma (diagrama de árbol). Los algoritmos HCA tienden a requerir mucho tiempo de cálculo [ O (n3)] y recursos de memoria [ O (n2)]; estos limitan la aplicabilidad de los algoritmos a conjuntos de datos relativamente pequeños.

Los algoritmos de HCA pueden utilizar varias métricas y criterios de vinculación. La distancia euclidiana y la distancia euclidiana al cuadrado son comunes para los datos numéricos; La distancia de Hamming y la distancia de Levenshtein son comunes para datos no numéricos. Son comunes el enlace simple y el enlace completo; ambos pueden simplificar los algoritmos de agrupamiento (SLINK y CLINK respectivamente). SLINK es uno de los pocos algoritmos de agrupación que garantiza encontrar una solución óptima.

Agrupación de K-medias

El problema de agrupamiento de k-medias intenta dividir n observaciones en k grupos utilizando la métrica de distancia euclidiana, con el objetivo de minimizar la varianza (suma de cuadrados) dentro de cada grupo. Es un método de cuantificación vectorial y es útil para el aprendizaje de características.

El algoritmo de Lloyd (aglomeración de clúster iterativo con actualizaciones de centroide) es la heurística más común utilizada para resolver el problema y es relativamente eficiente, pero no garantiza la convergencia global. Para mejorar eso, las personas a menudo ejecutan el algoritmo varias veces utilizando centroides de clúster iniciales aleatorios generados por los métodos Forgy o Random Partition.

K-means asume grupos esféricos que son separables para que la media converja hacia el centro del grupo, y también asume que el orden de los puntos de datos no importa. Se espera que los conglomerados sean de tamaño similar, de modo que la asignación al centro del conglomerado más cercano sea la asignación correcta.

Las heurísticas para resolver clústeres de k medias suelen ser similares al algoritmo de maximización de expectativas (EM) para los modelos de mezcla gaussiana.

Modelos de mezcla

Los modelos de mezcla asumen que las subpoblaciones de las observaciones corresponden a alguna distribución de probabilidad, comúnmente distribuciones gaussianas para observaciones numéricas o distribuciones categóricas para datos no numéricos. Cada subpoblación puede tener sus propios parámetros de distribución, por ejemplo, la media y la varianza de las distribuciones gaussianas.

La maximización de expectativas (EM) es una de las técnicas más populares que se utilizan para determinar los parámetros de una mezcla con un número determinado de componentes. Además de EM, los modelos de mezcla se pueden resolver con la cadena de Markov Monte Carlo, emparejamiento de momentos, métodos espectrales con descomposición de valor singular (SVD) y métodos gráficos.

La aplicación del modelo de mezcla original fue separar dos poblaciones de cangrejos costeros por la relación entre la frente y la longitud del cuerpo. Karl Pearson resolvió este problema en 1894 mediante el emparejamiento de momentos.

Una extensión común de los modelos de mezcla es conectar las variables latentes que definen las identidades de los componentes de la mezcla en una cadena de Markov en lugar de asumir que son variables aleatorias independientes distribuidas de manera idéntica. El modelo resultante se denomina modelo de Markov oculto y es uno de los modelos jerárquicos secuenciales más comunes.

Algoritmo DBSCAN

El agrupamiento espacial de aplicaciones con ruido basado en densidad (DBSCAN) es un algoritmo de agrupamiento de datos no paramétrico que data de 1996. Está optimizado para su uso con bases de datos que pueden acelerar las consultas de regiones geométricas mediante un árbol R * o alguna otra estructura de índice geométrico .

Esencialmente, DBSCAN agrupa los puntos centrales que tienen más de un número mínimo de vecinos dentro de cierta distancia de Epsilon, descarta como puntos atípicos que no tienen vecinos dentro de Epsilon y agrega puntos que están dentro de Epsilon de un punto central a ese grupo. DBSCAN es uno de los algoritmos de agrupación en clústeres más comunes y puede encontrar clústeres con formas arbitrarias.

Algoritmo OPTICS

Ordenar puntos para identificar la estructura de agrupamiento (OPTICS) es un algoritmo para encontrar agrupaciones basadas en densidad en datos espaciales. OPTICS es similar a DBSCAN, pero maneja el caso de densidad de puntos variable.

Las variaciones de las ideas en DBSCAN y OPTICS también se pueden utilizar para la detección y eliminación de ruido y valores atípicos simples.

Modelos de variables latentes

Un modelo de variable latente es un modelo estadístico que relaciona un conjunto de variables observables con un conjunto de variables latentes (ocultas). Los modelos de variables latentes son útiles para revelar estructuras ocultas en datos complejos y de alta dimensión. 

Análisis de componentes principales

El análisis de componentes principales (PCA) es un procedimiento estadístico que utiliza una transformación ortogonal para convertir un conjunto de observaciones de variables numéricas posiblemente correlacionadas en un conjunto de valores de variables linealmente no correlacionadas llamadas componentes principales. Karl Pearson inventó el PCA en 1901. El PCA se puede lograr mediante la descomposición de valores propios de una matriz de covarianza (o correlación) de datos, o la descomposición de valores singulares (SVD) de una matriz de datos, generalmente después de un paso de normalización de los datos iniciales.

Valor singular de descomposición

La descomposición de valor singular (SVD) es una factorización de una matriz real o compleja. Es una técnica común en álgebra lineal y, a menudo, se calcula utilizando transformaciones de Householder. SVD es una forma de resolver los componentes principales. Si bien es perfectamente posible codificar SVD desde cero, existen buenas implementaciones en todas las bibliotecas de álgebra lineal.

Método de momentos

El método de momentos utiliza los momentos de la muestra de datos observados (media, varianza, asimetría y curtosis) para estimar los parámetros de la población. El método es bastante simple, a menudo se puede calcular a mano y generalmente logra una convergencia global. Sin embargo, en el caso de estadísticas bajas, el método de momentos a veces puede producir estimaciones que están fuera del espacio de parámetros. El método de los momentos es una forma fácil de resolver modelos de mezcla (arriba).

Algoritmos de maximización de expectativas

Un algoritmo de maximización de expectativas (EM) es un método iterativo para encontrar estimaciones de máxima verosimilitud de parámetros en modelos que dependen de variables latentes no observadas. La iteración EM alterna entre realizar un paso de expectativa (E), que crea una función para la expectativa de la probabilidad logarítmica evaluada usando la estimación actual de los parámetros, y un paso de maximización (M), que calcula los parámetros que maximizan el logaritmo esperado. probabilidad encontrada en el paso E.

EM converge a un máximo o punto de silla, pero no necesariamente al máximo global. Puede aumentar la posibilidad de encontrar el máximo global repitiendo el procedimiento EM de muchas estimaciones iniciales aleatorias para los parámetros o utilizando el método de momentos para determinar las estimaciones iniciales.

La EM aplicada a un modelo de mezcla gaussiana (arriba) se puede utilizar para el análisis de agrupaciones.

Redes neuronales no supervisadas

Las redes neuronales generalmente se entrenan en datos etiquetados para clasificación o regresión, que por definición es aprendizaje automático supervisado. También pueden recibir formación sobre datos sin etiquetar, utilizando varios esquemas no supervisados.

Autoencoders

Los autocodificadores son redes neuronales que se entrenan en sus entradas. Esencialmente, el codificador automático es una red de avance que actúa como un códec, codificando su entrada desde la capa de entrada a una o más capas ocultas con un recuento de neuronas más bajo y luego decodificando la representación codificada en una capa de salida con la topología como la entrada.

Durante el entrenamiento, el codificador automático usa propagación hacia atrás para minimizar la diferencia entre la entrada y la salida. Los codificadores automáticos se han utilizado para la reducción de dimensionalidad, aprendizaje de características, eliminación de ruido, detección de anomalías, procesamiento de imágenes y para aprender modelos generativos.

Redes de creencias profundas

Las redes de creencias profundas (DBN) son pilas de codificadores automáticos o máquinas de Boltzmann restringidas (RBN) que pueden aprender a reconstruir sus entradas. Las capas luego actúan como detectores de características. Los RBN generalmente se entrenan usando divergencia contrastiva.

Los DBN se han utilizado para generar y reconocer imágenes, secuencias de video y datos de captura de movimiento.

Redes generativas de confrontación

Las redes generativas adversarias (GAN) entrenan simultáneamente dos redes, un modelo generativo que captura la distribución de datos y un modelo discriminativo que estima la probabilidad de que una muestra provenga de los datos de entrenamiento. El entrenamiento intenta maximizar la probabilidad de que el generador pueda engañar al discriminador.

Las GAN se pueden utilizar para crear fotografías de personas imaginarias y mejorar las imágenes astronómicas. Las GAN también se han utilizado para mejorar las texturas de los videojuegos antiguos para su uso en versiones de alta resolución de los juegos. Fuera del aprendizaje no supervisado, las GAN se han aplicado con éxito al aprendizaje por refuerzo de los juegos.

Mapa autoorganizado

El mapa autoorganizado (SOM) define un mapeo ordenado a partir de un conjunto de elementos de datos dados en una cuadrícula regular, generalmente bidimensional. Un modelo está asociado con cada nodo de la red. Un elemento de datos se mapeará en el nodo cuyo modelo es más similar al elemento de datos, es decir, tiene la distancia más pequeña desde el elemento de datos en alguna métrica.

Hay una serie de precauciones que debe tomar para asegurarse de que las asignaciones sean estables y estén bien ordenadas. No todas las implementaciones comerciales siguen todas las precauciones.