5

Tengo dudas al calcular IDF (Inverse Document Frequency) en la categorización de documentos. Tengo más de una categoría con múltiples documentos para entrenamiento. Estoy calculando FDI para cada término en un documento utilizando la fórmula siguiente:Calculo de IDF (Frecuencia inversa del documento) para la categorización de documentos

IDF(t,D)=log(Total Number documents/Number of Document matching term); 

Mis preguntas son:

  1. ¿Qué significa "documentos Número total de Corpus" significa? Si el documento cuenta desde una categoría actual o desde todas las categorías disponibles?
  2. ¿Qué significa "Número de término que coincide con el documento"? Si el término coincide con el recuento de documentos de una categoría actual o de todas las categorías disponibles?

Respuesta

9

Total Number documents in Corpus es simplemente la cantidad de documentos que tiene en su corpus. Entonces, si tiene 20 documentos, este valor es 20.

Number of Document matching term es el recuento de cuántos documentos se produce el término t. Así que si usted tiene 20 documentos en total y el término t ocurre en 15 de los documentos a continuación, el valor de Number of Documents matching term es 15.

El valor para este ejemplo sería así IDF(t,D)=log(20/15) = 0.1249

Ahora bien, si estoy en lo cierto, tiene múltiples categorías por documento y desea poder categorizar nuevos documentos con una o más de estas categorías. Un método para hacer esto sería crear un documento para cada categoría. Cada documento de categoría debe contener todos los textos que están etiquetados con esta categoría. A continuación, puede realizar tf*idf en estos documentos.

Una forma simple de categorizar un nuevo documento podría lograrse al sumar los valores de término de la consulta utilizando los diferentes valores de término calculados para cada categoría. La categoría cuyos valores de término, utilizados para calcular el producto, dan como resultado el resultado más alto, se clasificará primero.

Otra posibilidad es crear un vector para la consulta utilizando el idf de cada término en la consulta. Todos los términos que no aparecen en la consulta reciben el valor 0. El vector de consulta puede entonces compararse por similitud con cada vector de categoría usando, por ejemplo, cosine similarity.

Smoothing es también una técnica útil para tratar las palabras en una consulta que no se producen en su corpus.

Sugiero leer sections 6.2 and 6.3 de "Introducción a la recuperación de información" por Christopher D. Manning, Prabhakar Raghavan y Hinrich Schütze.

+0

Gracias ... Obtuve una respuesta. ¿Pero puede explicar por favor categorizando el nuevo documento poco elaborado ?. ¿Así es como obtener la categoría correspondiente para el nuevo documento ?. Entonces, ¿cómo se forma el vector de frecuencia para que el nuevo documento coincida? ... –

+0

Agregué la información a mi respuesta. – Sicco

+0

Gracias por ayudar .. –

-1

He escrito un pequeño puesto que describe la frecuencia de documentos de frecuencia inversa término aquí: http://bigdata.devcodenote.com/2015/04/tf-idf-term-frequency-inverse-document.html

Aquí hay un fragmento del mensaje:

TF-IDF es la métrica más fundamental utilizado ampliamente en la clasificación de los documentos . Probemos y definamos estos términos:

La frecuencia de término básicamente es significativa de la frecuencia de ocurrencia de una palabra determinada en un documento en comparación con otras palabras en el documento.

Inversa La frecuencia de los documentos es significativa en la ocurrencia de la palabra en todos los documentos para una colección determinada (de documentos que queremos clasificar en diferentes categorías).

Cuestiones relacionadas