Алгоритм шинглів (від англ. shingles — лусочки) — алгоритм, розроблений для пошуку копій та дублікатів розглянутого тексту в вебдокументі. Інструмент для виявлення плагіату.
Уді Манбер в 1994 році першим у світі висловив ідею пошуку дублікатів, а в 1997-му Андрій Бродер оптимізував і довів її до логічного завершення, дав ім'я даній системі — «алгоритм шинглів».
Етапи
Етапи, які проходить текст, що підлягає антиплагіатній експертизі:
- канонізація тексту;
- розбиття на шингли;
- обчислення гешів шинглів;
- випадкова вибірка 84 значень контрольних сум;
- порівняння, визначення результату.
Канонизація тексту
Канонизація тексту приводить оригінальний текст до єдиної нормальної форми. Текст очищається від прийменників, займенників, розділових знаків, HTML тегів, та іншого непотрібного «сміття», котрий не повинен брати участь у порівнянні. В більшості випадків також пропонується видаляти із тексту прикметники, так як вони не несуть смислового навантаження.
Також на етапі канонізації тексту можна приводити іменники до називному відмінку, однини, або залишати від них лише корінь.
Розбиття на шингли
Шингли — виділені із статті підпослідовності слів. Необхідино із порівнюваних текстів виділити підпослідовності слів, що йдуть один за одним по 10 штук (довжина шинглу). Вибірка відбувається внахлест, а не встик. Таким чином, розбиваючи текст на підпослідовності, ми отримаємо набір шинглів в кількості рівній кількості слів мінус довжина шингли плюс один (кіл_ть_слів - довж_шинглу + 1).
Обчислення гешів шинглів
Принцип алгоритму шинглів полягає в порівнянні випадкової вибірки контрольних сум шинглів (підпослідовностей) двох текстів між собою.
Проблема алгоритму полягає в кількості порівнянь, адже це безпосередньо позначається на продуктивності. Збільшення кількості шинглів для порівняння характеризується ростом операцій, що критично відіб'ється на продуктивності.
Література
- Manber, Udi, Finding Similar Files in a Large File System, USENIX Winter Technical conference, January, 1994, CA.
Посилання
- Сравнительный анализ методов определения нечетких дубликатов для Web-документов [ 4 березня 2016 у Wayback Machine.]
- Реализация алгоритма на языке Erlang [ 11 червня 2018 у Wayback Machine.]
Ця стаття має кілька недоліків. Будь ласка, допоможіть удосконалити її або обговоріть ці проблеми на . refless |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Algoritm shingliv vid angl shingles lusochki algoritm rozroblenij dlya poshuku kopij ta dublikativ rozglyanutogo tekstu v vebdokumenti Instrument dlya viyavlennya plagiatu Udi Manber v 1994 roci pershim u sviti visloviv ideyu poshuku dublikativ a v 1997 mu Andrij Broder optimizuvav i doviv yiyi do logichnogo zavershennya dav im ya danij sistemi algoritm shingliv EtapiEtapi yaki prohodit tekst sho pidlyagaye antiplagiatnij ekspertizi kanonizaciya tekstu rozbittya na shingli obchislennya geshiv shingliv vipadkova vibirka 84 znachen kontrolnih sum porivnyannya viznachennya rezultatu Kanonizaciya tekstuKanonizaciya tekstu privodit originalnij tekst do yedinoyi normalnoyi formi Tekst ochishayetsya vid prijmennikiv zajmennikiv rozdilovih znakiv HTML tegiv ta inshogo nepotribnogo smittya kotrij ne povinen brati uchast u porivnyanni V bilshosti vipadkiv takozh proponuyetsya vidalyati iz tekstu prikmetniki tak yak voni ne nesut smislovogo navantazhennya Takozh na etapi kanonizaciyi tekstu mozhna privoditi imenniki do nazivnomu vidminku odnini abo zalishati vid nih lishe korin Rozbittya na shingliShingli vidileni iz statti pidposlidovnosti sliv Neobhidino iz porivnyuvanih tekstiv vidiliti pidposlidovnosti sliv sho jdut odin za odnim po 10 shtuk dovzhina shinglu Vibirka vidbuvayetsya vnahlest a ne vstik Takim chinom rozbivayuchi tekst na pidposlidovnosti mi otrimayemo nabir shingliv v kilkosti rivnij kilkosti sliv minus dovzhina shingli plyus odin kil t sliv dovzh shinglu 1 Obchislennya geshiv shinglivPrincip algoritmu shingliv polyagaye v porivnyanni vipadkovoyi vibirki kontrolnih sum shingliv pidposlidovnostej dvoh tekstiv mizh soboyu Problema algoritmu polyagaye v kilkosti porivnyan adzhe ce bezposeredno poznachayetsya na produktivnosti Zbilshennya kilkosti shingliv dlya porivnyannya harakterizuyetsya rostom operacij sho kritichno vidib yetsya na produktivnosti LiteraturaManber Udi Finding Similar Files in a Large File System USENIX Winter Technical conference January 1994 CA PosilannyaSravnitelnyj analiz metodov opredeleniya nechetkih dublikatov dlya Web dokumentov 4 bereznya 2016 u Wayback Machine Realizaciya algoritma na yazyke Erlang 11 chervnya 2018 u Wayback Machine Cya stattya maye kilka nedolikiv Bud laska dopomozhit udoskonaliti yiyi abo obgovorit ci problemi na storinci obgovorennya refless