Los términos y sus frecuencias se denotan mediante Vectores almacenados en invertedIndex.
Un término es la unidad básica de búsqueda que consiste en un par de elementos de cadena: . Un vector de términos es una colección de términos. El índice invertido asigna términos a documentos. Para cada término T, debe almacenar el conjunto de todos los documentos que contienen ese término. Por lo tanto, es deber del analizador buscar los términos en los documentos y crear una secuencia de tokens para poder asignarlos. Los términos se almacenan en segmentos y se ordenan.
El archivo .frq contiene los identificadores de los documentos que contienen cada término, junto con la frecuencia del término en ese documento.
- ¿Existe alguna fórmula o algoritmo que determine / calcule los precios del gas o del petróleo?
- ¿Cómo obtuvieron sus nombres los recorridos de árbol binario preorden, inorder y postorder?
- ¿Puede la longitud de un comando Mathematica o Wolfram | Alpha ser una aproximación aproximada de su complejidad de Kolmogorov?
- ¿Por qué una elección de K es mejor que otras en el algoritmo K-means?
- C: ¿Existe un enfoque general para convertir una función recursiva en iterativa y viceversa?
Lucene almacena el término datos en formato de índice invertido como se describe en la imagen a continuación:
TermDocs proporciona el TF de un término determinado en cada documento que contiene el término. Podemos obtener el término documentos de un IndexReader, utilizando el término de interés. Espero que el siguiente código lo haga fácil de entender.
Lista termlist = new ArrayList (); IndexReader reader = IndexReader.open (indexFolder); TermEnum terms = reader.terms (); while (terms.next ()) { Término plazo = terms.term (); Cadena termText = term.text (); int frecuencia = reader.docFreq (término); termlist.add (termText); } lector.close ();