¿Por qué Lucene IDF tiene un +1 aparentemente adicional?

8

De los documentos de Lucene

IDF=1+Iniciar sesión(numDocsdocFreq+1)

En otras referencias (es decir, wikipedia ), IDF generalmente se calcula como o para evitar bucear en 0.Iniciar sesión(numDocsdocFreq)Iniciar sesión(numDocsdocFreq+1)

También me doy cuenta de que Lucene usa lugar de para calcular TF, pero entiendo que esta es solo una transformación preferida, probablemente para evitar .XIniciar sesión(X)Iniciar sesión(0 0)

¿Alguien puede explicar ese +1 adicional en el término IDF?

Greg Dean
fuente

Respuestas:

9

Todos los esquemas de ponderación TF-IDF son solo métodos heurísticos para dar más peso a términos inusuales. No estoy seguro de que los esquemas TF-IDF generalmente tengan una base estadística sólida detrás de ellos (ver referencia 1), excepto por la observación de que TF-IDF tiende a producir mejores resultados que el simple conteo de palabras. Dado que la calidad de los resultados es la justificación primaria (¿única?) Para TF-IDF en primer lugar, se podría argumentar que probar su método con y sin +1 y elegir el mejor estaría bien.

Si estoy leyendo este hilo de aprendizaje de sckit correctamente, parece que no eres la primera persona en plantear una pregunta similar acerca de agregar 1 a los puntajes de la FID. El consenso sobre ese hilo es que +1 también es un comportamiento no estándar. Solo lo hojeé, pero el hilo no parece contener un rotundo respaldo o justificación de +1.

Entonces, la elección de +1 tiene el efecto de colocar el límite inferior en todos los valores IDF en 1 en lugar de en 0. Esto es lo mismo que agregar midocumentos que contienen cada palabra a su corpus. No estoy seguro de por qué eso podría ser útil, pero tal vez sea en contextos específicos. Incluso se podría tratar algún parámetroC en C+Iniciar sesión(numDocsdocFreq + 1) como parámetro de ajuste, para darle una familia más flexible de esquemas IDF con C como su límite inferior.

Cuando el límite inferior de IDF es cero, el producto frecuencia de término×IDFpuede ser 0 para algunos términos, de modo que esos términos no tengan peso en absoluto en el procedimiento de aprendizaje; cualitativamente, los términos son tan comunes que no proporcionan información relevante para la tarea de PNL. Cuando el límite inferior no es cero, estos términos tendrán más influencia.

  1. John Lafferty y Guy Lebanon. " Núcleos de difusión en manifiestos estadísticos ". Revista de aprendizaje automático. 2005
Sycorax dice reinstalar a Mónica
fuente
Gracias por el pozo a través de la respuesta. Esperaba tener una mejor idea de por qué es útil el límite inferior de 1 para IDF. Es interesante que otras personas tengan la misma pregunta, sin una respuesta real.
Greg Dean
@GregDean Me temo que esta explicación es la mejor que puedo manejar. Investigué un poco más para tratar de encontrar algo más definitivo, pero no tuve mucha suerte.
Sycorax dice reinstalar a Mónica