Identyfikacja znamion ukrytego plagiatu Z wykorzystaniem IDEA Caseware
Dzięki zastosowaniu w IDEI zaawansowanego modułu importu danych istnieje możliwość wykorzystania oprogramowania do identyfikacji tzw. ukrytego plagiatu tekstu między dokumentami. Na poniższym przykładzie przedstawimy jak wykorzystać to narzędzie do wyszukania takich podobieństw i to w sytuacji gdy wzorcowy tekst został częściowo zmodyfikowany. Aby dokonać stosownych analiz wczytamy badane fragmenty tekstu do IDEI. W tym celu klikamy na moduł Desktop. Jako rodzaj formatu danych wskazujemy typ: Advanced Record Definition Editor, w dolnej części okna określamy źródłowy plik tekstowy (w naszym przypadku plik tekst_1.txt). Po zatwierdzeniu danych zostaniemy poproszeni o wskazanie sposobu rozdzielania badanej treści. W tym celu wybieramy opcję Delimited, pozwoli ona rozdzielić tekst według występującego w tekście wskazanego znaku. Tym znakiem w tekście jest spacja. Aby zdefiniować konkretny rodzaj znaku klikamy na przycisk Set Delimiters a następnie podajemy kod ASCII dla znaku spacji (#032). Dodatkowo w dolnej części okna opisujemy nazwę kolumny w której zostaną wyodrębnione z tekstu poszczególne słowa. Status: Dokument opracowany przez PBSG Sp. z o.o. www.pbsg.pl Wersja 1.0 z dnia: 2016-02-22 Strona: 2 z 9
W ten sposób uzyskaliśmy prostą jednokolumnową tabelę, która zawiera kolejne słowa, występujące w naszym tekście. Teraz dodamy kolumnę roboczą, która będzie informować o źródle tekstu. W tym celu klikamy na moduł Append, a następnie w oknie dialogowym wskazujemy w polu Field name nazwę kolumny, a w polu Parameter podajemy nazwę pliku wpisując treść: "tekst_1". Status: Dokument opracowany przez PBSG Sp. z o.o. www.pbsg.pl Wersja 1.0 z dnia: 2016-02-22 Strona: 3 z 9
Dodatkowo potrzebujemy dodać kilka kolejnych kolumn, których przeznaczeniem będzie odpowiednie manipulowanie poszczególnymi słowami: 1. Tworzymy kolumnę o nazwie słowo_0, która będzie zawierać nasze słowa pisane małymi literami, oraz bez znaków specjalnych i cyfr (formuła: @Lower(@JustLetters(@Strip(SŁOWA))) 2. Tworzymy kolumnę o nazwie słowo_1, która będzie pobierać wartość słowa z kolejnego wiersza(formuła: @GetNextValue( "SŁOWO_0" )) 3. Dodajemy następne kolumny zgodnie ze schematem z punktu 2, każdorazowo wskazując jako kolumna źródłowa ostatnio utworzoną kolumnę. Liczba kolumn jest zależna od tego jak długi wzorzec tekstu chcemy zastosować, czyli inaczej ile słów powinien zawierać nasz wzorzec. W naszym przypadku określiliśmy optymalną długość wzorca na poziomie 10 słów 4. Tworzymy kolumnę o nazwie Zdanie która dokona zebrania uzyskanych słów do jednej kolumny, przy okazji oddzielając je pojedynczą spacją (formuła: SŁOWO_0 +" "+ SŁOWO_1 +" "+ SŁOWO_2 +" "+ SŁOWO_3 +" "+ SŁOWO_4 +" "+ SŁOWO_5 +" "+ SŁOWO_6 +" "+ SŁOWO_7 +" "+ SŁOWO_8 +" "+ SŁOWO_9) Z tak uzyskanej bazy wyodrębnimy tylko dwie kolumny, pierwsza z nich zawierać będzie informacje na temat źródła tekstu(kolumna ŹRÓDŁO ), druga natomiast zebrana słowa (kolumna ZDANIE ). W tym celu najlepiej jest skorzystać z modułu Direct zgodnie z poniższym slajdem: Status: Dokument opracowany przez PBSG Sp. z o.o. www.pbsg.pl Wersja 1.0 z dnia: 2016-02-22 Strona: 4 z 9
Wszystkie powyższe czynności należy przeprowadzić dla drugiego, zaimportowanego pliku tekstowego dla którego dokonamy porównania treści. Dwie przygotowane tak tabele należy następnie połączyć pionowo. Najprościej będzie w tym celu użyć moduł o nazwie Append (dostępny z zakładki Analysis ) zgodnie z poniższym schematem: Teraz dla tak pozyskanego wspólnego pliku tekstów uruchamiamy bardzo interesujący moduł o nazwie Fuzzy. Pozwoli on zidentyfikować podobne fragmenty tekstów w obrębie badanych plików. Status: Dokument opracowany przez PBSG Sp. z o.o. www.pbsg.pl Wersja 1.0 z dnia: 2016-02-22 Strona: 5 z 9
Na tym etapie musimy wskazać pole kluczowe, dla którego przeprowadzimy porównanie (kolumna Zdanie ), oraz określamy w jakim stopniu fragmenty tekstów mają być do siebie podobne. Pamiętajmy, że zbyt niski poziom tego wskaźnika może spowodować wygenerowanie dużej liczby fałszywych sygnałów, natomiast wartość wskaźnika na poziomie 100% oznacza ze zostaną rozpoznane tylko identyczne fragmenty tekstu. W naszym przypadku ustalamy wartość tego wskaźnika na poziomie 85%. Akceptujemy ustawienia okna dialogowego. Nasza tabela została wzbogacona o dwie kolumny, jedna informuje nas o numerze grupy tekstów(group_id, druga służy do wyliczenia wskaźnika podobieństwa. A ponieważ interesują nas wyłącznie fragmenty tekstów, pochodzące z dwóch różnych źródeł (plików), musimy dodatkowo dokonać zgrupowania wyników wg numerów grupy, a następnie wyszukujemy duplikaty. W tym celu zastosujemy moduł Status: Dokument opracowany przez PBSG Sp. z o.o. www.pbsg.pl Wersja 1.0 z dnia: 2016-02-22 Strona: 6 z 9
Summarization zgodnie z poniższym schematem: Następnie na tak pozyskanych danych uruchamiamy kolejny moduł o nazwie Dupliacte Key. W ten sposób uzyskamy zestawienie grup dla których w dwóch różnych plikach zidentyfikowano podobny fragment tekstu. Status: Dokument opracowany przez PBSG Sp. z o.o. www.pbsg.pl Wersja 1.0 z dnia: 2016-02-22 Strona: 7 z 9
Nie pozostaje nam nic innego jak pokazać które fragmenty tekstu z obu plików są podobne. W tym celu otwieramy zestawienie wcześniej uzyskane wyników analiz podobieństw tekstu, a następnie łączymy je z listą duplikatów zgodnie z poniższym slajdem. W ten oto sposób uzyskujemy tabelę informującą nas o takich fragmentach tekstu które występują w obu plikach źródłowych i są względem siebie podobne w co najmniej 85% treści. Status: Dokument opracowany przez PBSG Sp. z o.o. www.pbsg.pl Wersja 1.0 z dnia: 2016-02-22 Strona: 8 z 9
Cały proces badawczy jest wieloetapowy, warto więc usprawnić całą analizę poprzez zastosowanie intuicyjnych w obsłudze makr. Dzięki temu cała analiza łącznie z importem danych może być sprowadzona do kilku kliknięć, a my możemy się skupić wyłącznie na interpretacji uzyskanych wyników badań. Status: Dokument opracowany przez PBSG Sp. z o.o. www.pbsg.pl Wersja 1.0 z dnia: 2016-02-22 Strona: 9 z 9