Tema
Suavizado y palabras desconocidas
- Lenguaje natural y modelos de lenguaje
- Nivel intermedio
El suavizado traslada una parte de la masa de probabilidad de los n gramas observados hacia los que no aparecieron, con el fin de que ninguna secuencia posible reciba probabilidad cero.
Nombre en inglés
Smoothing and unknown words
Intuición
Un conteo de cero no significa imposible, sino no visto todavía. El suavizado de Laplace suma una unidad ficticia a cada conteo, como si el corpus incluyera una ronda de todas las combinaciones, mientras que el descuento de Kneser y Ney reparte la masa sobrante según en cuántos contextos distintos aparece cada palabra y no según cuántas veces aparece, criterio que evita premiar a palabras muy frecuentes pero siempre en el mismo molde.
Fórmula
P_{Laplace}(w_t | w_{t-1}) = (C(w_{t-1} w_t) + 1) / (C(w_{t-1}) + |V|)
Ejemplo resuelto
Con el corpus de tres oraciones del tema de n gramas, el vocabulario tiene 5 tipos, que son el, gato, perro, duerme y come. Sin suavizar, P(come | perro) = 0 / 1 = 0. Con Laplace, P(come | perro) = (0 + 1) / (1 + 5) = 1/6 = 0.167, mientras que P(duerme | perro) baja de 1.0 a (1 + 1) / (1 + 5) = 2/6 = 0.333. La masa que gana lo no visto sale directamente de lo visto, y ese trasvase es el precio del suavizado.
Errores frecuentes
- Suavizar con Laplace sobre un vocabulario de 50 000 tipos, elección que traslada casi toda la masa a los n gramas no vistos y empeora la perplejidad frente a un descuento más contenido.
- Contar la palabra desconocida sin haberla creado durante el entrenamiento, cuando el símbolo debe ganarse su conteo sustituyendo en el corpus de entrenamiento las palabras de frecuencia 1.
- Comparar perplejidades de modelos con vocabularios distintos, comparación inválida porque el tamaño del vocabulario entra en el denominador del suavizado y cambia la escala del resultado.
Ejercicio
Un bigrama tiene C(la casa) = 4 y C(la) = 10, con un vocabulario de 6 tipos. Calcule P(casa | la) sin suavizar y con suavizado de Laplace.
Ver la solución
Sin suavizar, la estimación por máxima verosimilitud divide los conteos y da 4 / 10 = 0.4. Con Laplace se suma 1 al numerador y el tamaño del vocabulario al denominador, de modo que queda (4 + 1) / (10 + 6) = 5 / 16 = 0.3125. La estimación baja porque parte de la masa se reserva para los bigramas que empiezan por la y todavía no se han visto.
Respuesta: 0.4 y 0.3125