Provjera sličnosti teksta
Usporedite dva teksta sa stvarnom n-gram Jaccard sličnošću i LCS rezultatom preklapanja na razini riječi, s odgovarajućim odlomcima istaknutim jedan pored drugog.
Rezultat
Ovaj alat uspoređuje dva teksta koja zalijepite koristeći dva neovisna, stvarna, dobro dokumentirana algoritma — a ne nejasnu heuristiku "izgleda slično". Prva je sličnost n-grama Jaccarda: svaki se tekst tokenizira u riječi, zatim dijeli na nizove od n uzastopnih riječi koji se preklapaju (n-gram; zadana postavka je n=3, trigram, a možete ga prilagoditi od 1 do 5). Jaccardov indeks dva rezultirajuća skupa n-grama — veličina njihovog sjecišta podijeljena s veličinom njihove unije — standardna je mjera sličnosti temeljena na skupu koja se koristi u pronalaženju informacija i otkrivanju gotovo duplikata. Veći n hvata duže zajedničko fraziranje i stroži je u pogledu točnog izražavanja; niže n više oprašta i hvata labavo preklapanje riječi čak i između drugačije strukturiranih rečenica.
Drugi algoritam je pravi najduži zajednički podniz (LCS) na razini riječi, izračunat sa stvarnom O(n·m) tablicom dinamičkog programiranja preko dva niza riječi — isti algoritam iz udžbenika koji koriste diff alati, a ne aproksimacija. Za razliku od n-gram rezultata, LCS ne zahtijeva da podudarne riječi budu susjedne, tako da bilježi preklapanje čak i kada je rečenica promijenjena u redoslijedu ili lagano uređena između zajedničkih fraza. Postotak preklapanja izveden je iz duljine LCS-a u odnosu na prosječnu duljinu oba teksta. DP tablica se zatim vraća unazad kako bi se točno identificirale koje su riječi u svakom tekstu sudjelovale u tom najdužem zajedničkom nizu, a ovo je značajka koja se ističe: te se riječi preslikavaju natrag na vaš izvorni tekst — s izvornim razmakom, prijelomima redaka i interpunkcijskim znakovima netaknutim — i prikazuju se kao istaknuti rasponi jedan pored drugog, tako da možete točno vidjeti koji se odlomci preklapaju umjesto da vjerujete golom broju.
Opseg i iskrenost ovdje su važni: ovo je alat za usporedbu dva teksta, a ne detektor plagijata. Nema internetsku vezu, indeks pretraživanja i bazu podataka tuđeg sadržaja za provjeru — može vam jedino reći koliko su slična dva teksta koja zalijepite jedan drugome. To ga čini prikladnim za usporedbu nacrta revizija, provjeru koliko je parafraza ili prepisivanje zapravo promijenjeno ili uočavanje gotovo duplikata sadržaja na vašim stranicama. Podudaranje riječi ne razlikuje velika i mala slova, a O(n·m) LCS tablica ograničena je na nekoliko milijuna ćelija parova riječi — za vrlo velike tekstove (otprilike nekoliko tisuća riječi u kombinaciji) točan LCS i korak isticanja se preskaču uz bilješku jednostavnog jezika, dok se n-gram Jaccard rezultat, koji košta samo linearno vrijeme, uvijek izračunava na cijelom tekstu. Sve radi lokalno u vašem pregledniku; nijedan tekst nikada ne napušta vaš uređaj.