Similarità Stringhe
Confronta due stringhe con gli algoritmi Levenshtein, Jaro-Winkler, Coseno, Jaccard, Hamming e Dice. Risultati immediati, 100% privato.
Cos'è la similarità di stringhe?
La similarità di stringhe misura quanto due testi sono simili tra loro. È usata nei correttori ortografici, analisi del DNA, rilevamento di plagio e deduplicazione dei dati.
Cos'è la distanza di Levenshtein?
La distanza di Levenshtein (distanza di editing) misura il numero minimo di modifiche a un singolo carattere — inserimenti, cancellazioni o sostituzioni — necessarie per trasformare una stringa in un'altra. Ad esempio, la distanza tra "cat" e "bat" è 1.
Cos'è la similarità di Jaro-Winkler?
Jaro-Winkler assegna punteggi più alti alle stringhe che condividono un prefisso comune. È ampiamente usata per confrontare nomi, indirizzi e record nei database.
Come funziona la similarità coseno?
La similarità coseno suddivide le stringhe in n-grammi di caratteri, li converte in vettori e misura il coseno dell'angolo tra di essi. Funziona bene per testi lunghi.
Qual è la differenza tra similarità coseno e Jaccard?
La similarità coseno usa vettori di frequenza degli n-grammi e misura l'angolo tra di essi, mentre Jaccard confronta insiemi di n-grammi usando il rapporto intersezione su unione. Jaccard ignora i duplicati; il coseno no.
Cos'è la distanza di Hamming?
La distanza di Hamming conta il numero di posizioni in cui i caratteri corrispondenti differiscono tra due stringhe di uguale lunghezza. Funziona solo con stringhe della stessa lunghezza.
Cos'è il coefficiente di Sørensen-Dice?
Il coefficiente di Sørensen-Dice misura la similarità basandosi sul numero di bigrammi condivisi rispetto al totale dei bigrammi in entrambe le stringhe. Dà più peso agli elementi comuni rispetto a Jaccard.
Quale algoritmo dovrei usare?
Per stringhe brevi con errori di battitura (nomi, codici) usare Levenshtein o Jaro-Winkler. Per testi lunghi, la similarità coseno è la migliore. Per un confronto rapido basato su insiemi, usare Jaccard.
Cos'è l'analisi n-gram?
Un n-gram è una sequenza contigua di n caratteri da una stringa. Ad esempio, i bigrammi di "hello" sono "he", "el", "ll", "lo". Gli n-gram sono i mattoni di molti algoritmi di similarità.
Cos'è il fuzzy matching?
Il fuzzy matching trova stringhe che corrispondono approssimativamente a un modello, non esattamente. È usato nei motori di ricerca, correttori ortografici e pulizia dei dati.
I miei dati vengono inviati a un server?
No, tutti i calcoli vengono eseguiti localmente nel browser. Il testo non lascia mai il dispositivo. Non c'è elaborazione o archiviazione lato server.
Posso confrontare testi in lingue diverse?
Sì, gli algoritmi funzionano con qualsiasi carattere Unicode. Tuttavia, i risultati possono variare perché lingue diverse hanno strutture di caratteri diverse.