Введение 3
Глава 1. Особенности физико-математических текстов и форматы их хранения 5
Формат хранения TeX 5
Формат хранения PDF 6
1.3 Формат хранения docx 7
Глава 2. «Формульная структура» физико-математического документа 9
2.1 Алгоритм определения формульной структуры на основе положения формул в тексте 9
2.2 Модификация алгоритма определения формульной структуры 10
2.3 Сравнение формул по математическим символам 12
2.4 Усовершенствование алгоритма 13
Глава 3. Сравнение по строкам 16
3.1 Алгоритм Бойера-Мура 16
3.1.1 Описание алгоритма 16
3.1.2 Таблица стоп-символов 18
3.1.3 Таблица суффиксов 19
3.2 Присвоение веса символам алфавита 20
3.3 Расстояние Левенштейна 21
3.4 Алгоритм Джаро-Винклера 24
3.4.1 Расстояние Джаро-Винклера 25
Глава 4. Методы трансформации научных документаций в строку 27
4.1 Методы преобразования математических нотаций в формате .tex 27
4.2 Методы преобразования математических нотаций в формате .pdf 29
4.2.1 Методы сегментации математических формул из формата .pdf. Эвристический метод
Фейтмана 30
4.2.2 Система сегментации на основе модифицированного алгоритма Фейтмана 32
4.2.3 Сегментация строк 35
4.2.4 Сегментация математических формул 36
4.2.5 Парсинг математических нотаций с помощью системы DRACULAE 37
Глава 5. Определение коэффициента подобия двух строк 39
5.1 Метрики оценки алгоритмов 39
5.2 Итоговый коэффициент подобия 41
Глава 6. Алгоритм выявления дубликатов 43
Глава 7. Тестирование алгоритма 46
Заключение 51
Библиографический список 52
В современном мире информационная безопасность становится одним из важнейших понятий этого века. Современное общество переходит на хранение информации в электронном виде, полностью отказываясь от бумажных носителей. Главными факторами данной миграции является интернет, лёгкий доступ к любой информации в обширной сети. Миллионы людей ежедневно выкладывают в сеть ту или иную информацию для общего обозрения, в том числе физики и математики. Некоторые из них делают это даже прежде, чем данную информацию опубликуют. В связи с вышесказанным вытекает одна из проблем современного общества - плагиат.
Благодаря безграничности всемирной паутины, найти оригинального автора той или иной статьи бывает очень затруднительно. Некоторые IT компании позаботились об этом, выпустив продукты и сервисы по поиску заимствованием в интернете, но и они не всегда могут помочь.
Ранее мной в курсовой работе было проведено исследование на тему сервисов по поиску заимствования и столкнулся с тем, что ни в одной из современных сервисов не присутствует поиск заимствований для публикаций, переведённых на различные языки [12]. Но ведь значимость некоторых статей многих русских исследователей выходят за масштабы нашей страны и могут быть переписаны другим языком, тогда как найти плагиат в мультиязычной коллекции документов?
Для решения данной проблемы, был придуман алгоритм выявления дубликатов в мультиязычных коллекциях, на основе сравнения строк, состоящих из придуманного алфавита для преобразования статьи. Для создания данного алгоритма было проанализировано и разобрано большинство методов по неточному сравнению строк.
Целью данной работы является создание алгоритма, выявляющего дубликаты статьи-запроса из мультиязычной коллекции документов.
В первой главе рассмотрены основные форматы хранения физико-математических статей, такие как .pdf, .tex, docx и их структура.
Во второй главе разработан алгоритм определения формульной структуры физико-математических документов. Показано как происходило модифицирование алфавита для осуществления трансформации физико-математической статьи в строку.
В третьей главе рассматриваются три основных алгоритма для сравнения строк: "алгоритм Бойера-Мура", "Расстояние Джаро-Винклера" и "Расстояние Левенштейна". Исследуемыме методы используется для анализа и сравнения ДНК в вычеслительной биологии, где геном записывается строкой, состоящей из повторяющихся символов [2]. Присвоен каждому символу предложенного алфавита определённый вес.
В четвёртой главе описываются методы трансформации физико-математических документов в формате .pdf и .tex в строку.
В пятой главе приводится частный и общий коэффициент подобия для сравнения двух строк.
В шестой главе Представлена архитектура алгоритма. Рассматривается полный алгоритм определения подобия физико-математических публикаций.
Глава седьмая посвящена тестированию предложенного алгоритма. Тестирование проводится на коллекции, взятой с архива Mathnet.ru. Предоставление результатов работы алгоритма.
Результатами данной работы являются:
1. Основная задача, поставленная в начале работы, была выполнена. Был создан Алгоритм выявления дубликатов.
2. Создана собственная формульная структура для физико-математических документов.
3. Создан собственный алфавит для трансформации документа в строку.
4. Рассмотрены основные методы сравнения строк и выбраны три наиболее подходящих для созданного алгоритма.
5. Рассмотрен и модифицирован существующий метод сегментации формул из формата .pdf.
6. Разработан метод получения LaTeX кода из .pdf файла.
7. Выявлены частные и общий коэффициенты подобия для оценки похожести физико-математических публикаций.
8. Создана реализация алгоритма на языке C#.
9. Проведено тестирование алгоритма.
В рамках данной работы были использованы средства из вычислительной биологии для сравнения генома ДНК [2]. Данные наработки в сфере биологии были применены для сравнения строк, полученных из физико-математических публикаций путём предложенного алгоритма.