¿Qué es la estimación de contraste de ruido (NCE)?

La estimación contrastante de ruido es esencialmente una “estrategia” para evitar un paso computacionalmente costoso en una tarea de modelado de lenguaje o tarea de generación de incrustación de palabras, cuando el corpus es grande.

Por ejemplo, en una tarea de modelado de lenguaje, la probabilidad de una palabra con un contexto dado c es ( términos explicados en el documento Notas sobre estimación de contraste de ruido y muestreo negativo – la clave para esta discusión es la suma del denominador Z (c) sobre todo el cuerpo ) capturado por la ecuación

El modelo de omisión de gramo de word2vec tiene un término de suma similar en el denominador sobre todo el corpus Representaciones distribuidas de palabras y frases y su composicionalidad

Por lo tanto, tanto en la generación de incrustación de palabras como en la tarea de modelado del lenguaje, se reduce a predecir una palabra dado un contexto, y el cálculo implica en su denominador, sumando una expresión sobre todo el vocabulario, que es una tarea computacionalmente intensiva.

La solución a esto es hacer una estimación contrastante de ruido o su muestreo negativo variante, los cuales evitan la suma total sobre el corpus ( el enfoque clásico según el documento a continuación es usar el muestreo de importancia utilizando los métodos de Monte Carlo para aproximar – NCE y negativo el muestreo son evoluciones de esas técnicas ).

En NCE, el cálculo de la suma total (Z (c)) en la ecuación 1 anterior se evita al convertir primero el problema de estimación en un problema de clasificación binaria y luego por otros dos supuestos que reducen el número de parámetros.

El muestreo negativo ( utilizado en el código word2vec ) también aprende los parámetros del modelo como un problema de clasificación binaria ( cada vez que una palabra se acerca a sus vecinos, también se extrae de k muestras tomadas de una distribución unigram ).

El documento Notes on Noise Contrastive Estimation and Negative Sampling sugiere el uso de NCE para el modelado del lenguaje y el muestreo negativo para la generación de incrustación de palabras.

Esta nota es muy clara sobre NCE. http://www.1-4-5.net/~dmm/ml/nce

La estimación de densidad, una tarea de aprendizaje no supervisada, puede realizarse mediante regresión logística (que es aprendizaje supervisado).

Sorprendentemente, esto significa que en este caso la regresión logística ha aprendido a discriminar (clasificar) entre los conjuntos de datos y ruido. Es decir, lo que terminamos es el aprendizaje no supervisado por aprendizaje supervisado, donde la clasificación exitosa es equivalente a aprender las diferencias entre los datos y el ruido. Aquí utilizamos la regresión logística no lineal para la clasificación, pero son posibles otros clasificadores.

Además, NCE y las redes adversas generativas (GAN) también tienen algunas relaciones, que se discuten en el documento: SOBRE CRITERIOS DE DISTINGUIBILIDAD PARA ESTIMAR MODELOS GENERATIVOS por Ian J. Goodfellow

NCE corresponde a entrenar un modelo de datos interno que pertenece a la red discriminadora pero que usa una red de generador fija. Mostramos que una variante de NCE, con una red de generador dinámico, es equivalente a la estimación de máxima verosimilitud.