Sto tentando di cercare sottostringhe lunghe e approssimative in un database di grandi dimensioni. Ad esempio, una query potrebbe essere una sottostringa di 1000 caratteri che potrebbe differire dalla corrispondenza di una distanza di Levenshtein di diverse centinaia di modifiche. Ho sentito che i q-grammi indicizzati potrebbero farlo, ma non conosco i dettagli di implementazione. Ho anche sentito che Lucene potrebbe farlo, ma l'algoritmo di levenshtein di Lucene è abbastanza veloce per centinaia di modifiche? Forse qualcosa fuori dal mondo del rilevamento di plagio? Qualsiasi consiglio è apprezzato.Ricerca di sottostringhe (molto) approssimative in un database di grandi dimensioni
risposta
Q-grammi potrebbe essere un approccio, ma ce ne sono altri, come Blast, BLASTP - che vengono utilizzati per proteine, le partite di nucleotidi ecc
La biblioteca Simmetrics è una raccolta completa di approcci distanza stringa.
Si dovrebbe anche guardare la somiglianza cosentina – Mikos
Lucene non sembra essere lo strumento giusto qui. Oltre ai buoni consigli di Mikos, ho sentito parlare di AGREP, FASTA e Locality-Sensitive Hashing(LSH). Credo che un metodo efficiente dovrebbe innanzitutto ridurre lo spazio di ricerca, e solo allora eseguire punteggi più sofisticati sui restanti candidati.
- 1. Dimensioni spinner Android molto grandi
- 2. PyInstaller dimensioni file molto grandi
- 3. Ricerca di sottostringhe ripetitivi
- 4. Ricerca di sottostringhe in pitone
- 5. Eventuali suggerimenti sulla pianificazione di un database di grandi dimensioni
- 6. ottimizza la ricerca attraverso un array js di grandi dimensioni?
- 7. GHC non può gestire tabelle di ricerca di grandi dimensioni
- 8. C# ricerca di file di testo di grandi dimensioni
- 9. Ricerca in file di grandi dimensioni con ifstream
- 10. Recupera blob di grandi dimensioni dal database sqlite di Android
- 11. Scelta database per volume di dati di grandi dimensioni?
- 12. Git - la spinta di un ramo remoto per un progetto di grandi dimensioni è molto lenta
- 13. C# - Memoria di grandi dimensioni
- 14. Modifica di un file di grandi dimensioni in Scala
- 15. Creazione di un dizionario di grandi dimensioni in pyspark
- 16. Pdf RDF di grandi dimensioni in Python
- 17. Schema del database per applicazioni Web di grandi dimensioni
- 18. File JSON di grandi dimensioni
- 19. Calcolo di esponenti molto grandi in python
- 20. PyTables che si occupano di dati con dimensioni molto più grandi delle dimensioni della memoria
- 21. Alla ricerca e la lettura di file di grandi dimensioni in un Linux C++ applicazione
- 22. Memorizzazione di dimensioni file in un database
- 23. Leggi file di grandi dimensioni in parallelo?
- 24. Come verificare le dimensioni approssimative dell'app store in Xcode
- 25. Alla ricerca di un modo semplice per analizzare var_dump (PHP) su oggetti di grandi dimensioni
- 26. Leggere file di grandi dimensioni in Java
- 27. Programma di espansione decimale in esecuzione molto lento per ingressi di grandi dimensioni
- 28. Plottaggio di array di grandi dimensioni in pyqtgraph
- 29. PostgreSQL: definizione di una chiave primaria su un database di grandi dimensioni
- 30. Utilizzo di raccolte Backbone di grandi dimensioni
Per motivi di interesse, quali sarebbero le informazioni sulla stringa che stai cercando: informazioni testuali o qualcosa di strutturato in una forma diversa? –