Bene, prima di tutto capire che cosa si sta di fronte.
Il plagio di parola per parola dovrebbe essere ridicolmente facile da individuare. L'approccio più ingenuo sarebbe prendere delle tuple di parole di lunghezza sufficiente e confrontarle con il tuo corpus. La lunghezza sufficiente può essere incredibilmente bassa. Confronta risultati di Google:
"I think" => 454,000,000
"I think this" => 329,000,000
"I think this is" => 227,000,000
"I think this is plagiarism" => 5
Quindi, anche con questo approccio si ha una probabilità molto alta di trovare una buona partita o due (fatto divertente: la maggior parte dei criminali sono veramente stupido).
Se il plagio ha usato sinonimi, modificato l'ordine delle parole e così via, ovviamente diventa un po 'più difficile. Dovresti memorizzare anche i sinonimi e cercare di normalizzare un po 'la struttura grammaticale per mantenere lo stesso approccio operativo. Lo stesso vale per l'ortografia, ovviamente (ad esempio, cercare di far corrispondere la normalizzazione o cercare di spiegare le deviazioni nella corrispondenza, come negli approcci NCD pubblicati nelle altre risposte).
Tuttavia il problema più grande è il plagio concettuale. Questo è davvero difficile e non ci sono soluzioni ovvie senza analizzare la semantica di ogni frase (cioè un'IA sufficientemente complessa).
La verità è, tuttavia, che è necessario trovare solo un tipo di corrispondenza. Non è necessario trovare una corrispondenza esatta per trovare un testo pertinente nel corpus. La valutazione finale dovrebbe sempre essere fatta da un umano comunque, quindi va bene se trovi una corrispondenza inesatta.
I plagi sono per lo più stupidi e pigri, quindi anche le loro copie saranno stupide e pigre.Alcuni mettono uno sforzo incredibile nel loro lavoro, ma quelle opere sono spesso un plagio non ovvio in primo luogo, quindi è difficile rintracciare programmaticamente (cioè se un umano ha difficoltà a riconoscere il plagio con entrambi i testi presentati fianco a fianco molto probabilmente lo farà anche un computer). Per tutto il restante 80%, quindi, l'approccio stupido è abbastanza buono.
+1. Ho letto sulla compressione utilizzata per misurare il contenuto delle informazioni molto tempo fa, ma il tuo post ha riportato questa idea interessante. –
Il fatto che due file identici possano dare valori inferiori (0,03, 0,10) ma anche valori più alti a seconda della dimensione (0,99) è molto rilevante. Non mi affiderei esclusivamente a questo. – Chaotic