PROBLEMA:corrispondenza di file più vicina nella data di testo ASCII Files
Ho circa 20 file di testo ASCII, ciascuna una dimensione inferiore a 10^9 Bytes .Un altro file di testo ASCII avere (diciamo FOO) è dato . Il programma è quello di abbinare strategicamente il contenuto di FOO con i dati di 20 file e stampare il nome del file di matching di CLOSEST. Il contenuto di FOO potrebbe corrispondere solo parzialmente.
Poiché la dimensione del file è troppo grande, mi chiedo:
1.How da usare Information Retrieval (dato che non so molto di IR)
struttura dati2.Which dovrei usare per memorizzare tali informazioni
3. Quale sarebbe il miglior Algoritmo per implementarlo.
So che sto chiedendo troppo, ma in realtà sono bloccato a questo problema e non sono in grado di scoprire come affrontare. Qualsiasi aiuto sarebbe apprezzato. Grazie!
come su di scansione di tutti i file e creare un vettore tridimensionale di parole per ogni file di testo, allora si può calcolare l'angolo tra i documets e selezionare la quello più vicino? –
Un modo più semplice sarebbe utilizzare l'indice Jaccard http://en.wikipedia.org/wiki/Jaccard_index, anche se potrebbe non fornire la stessa accuratezza della somiglianza del coseno. Si noti che queste tecniche operano su conteggi di parole normalizzati. – decden
Hai davvero bisogno di definire "il più vicino". Se il file di test corrisponde a tutte le parole del file n. 1, ma con le parole in ordine inverso (ad es. "Quick fox rosso" e "fox red quick the"), è "più vicino" rispetto a se corrisponde esattamente al file n. in ordine per il primo 30%, ma poi ha pochissime somiglianze in seguito? Il caso è significativo? Spazio bianco?Senza una definizione di "più vicino", avrai un momento difficile per decidere cosa confrontare. –