Введение 3
1. Цели и задачи 4
2. Машинное обучение 5
3. Обработка естественного текста 6
3.1 Нормализация естественного текста 8
3.2 Стеммер Портера(Snowball ) 9
3.3 Стеммер Stemka 10
3.4 СтеммерMystem 11
4. Модель векторного пространства 12
5. Кластеризация 14
5.1 Метрики схожести 15
5.2 Алгоритмы кластеризации 17
5.3 Метрика качества кластеризации 21
6. Этапы построения модели 23
6.1 Обработка естественного текста 24
6.2 Конвертация текста в векторную модель 25
6.3 Кластеризация текстов 26
6.4 Сериализация модели 27
7. Разработка API 28
Заключение 30
Список использованных источников 31
Приложение 32
По статистическим данным загруженность арбитражных судов такова, что на каждого судью приходится около 56 дел в месяц что влияет на качество принятия решения судами, а дела могут оставаться не рассмотренными в течение длительного периода времени.Для ускорения судопроизводства без потери качества рассмотрения дел было принято решение разрабатывать информационную систему «Робот-Юрист». Разработанный программный продукт увеличит пропускную способность судов, повысит обоснованность принимаемых решений, не теряя эффективности и корректности делопроизводства. Одной из важнейших задач формируемой информационной системы являются поиск и предоставление аналогичных решений по схожим судебным искам. Таким образом, необходима компонента поиска и рекомендации аналогичных документов.
В результате проведенной работы разработана компонента системы рекомендации аналогов судебных дел.
В рамках выполнении дипломной работы были:
• Изучены алгоритмы реализации обработки текста и кластеризации.
• Выбран оптимальный метод кластеризации на основе анализа полученных данных на разных объемах корпуса.
• Разработан программный код построения модели.
• Разработано API для интеграции с системой «Робот юрист».
В будущем планируется внести изменения для динамического переобучения модели, а также написание конфигуратора для интеграции к любым системам. Так же предусматривается возможность расширения функционала компоненты, реализаций других методов стемминга и кластеризации,внедрение функционала разделения доступа к документам, и методам интерфейса компоненты, по ролям и приложениям интеграторам.
1. Natural Language Processing with Python - Analyzing Text with the
Natural Language Toolkit Steven Bird, Ewan Klein, and Edward
Loper[Электронныйресурс]. - Режимдоступа: http://www.nltk.org/book/ ,свободный.
2. Russianstemmingalgorithm[Электронный ресурс]. - Режим доступа: http: //snowball. tartarus. org/algorithms/russian/stemmer. html, свободный.
3. Ilya Segalovich “A fast morphological algorithm with unknown word guessing induced by a dictionary for a web search engine”, 2003.
4. Francesco Ricci,LiorRokach, BrachaShapira, Paul B. Kantor Recommender Systems Handbook 63 с.
5. Дюран Б. Оделл П. Кластерный анализ 1977 с. 53-71
6. Documention of scikit-learn 018 Режимдоступа: http://scikit-learn.org/stable/documentation.html, свободный.
7. УэссМаккинни "Python и анализ данных" ДМК Пресс, 2015 c 382
8. Jones K. S. A statistical interpretation of term specificity and its application in retrieval // Journal of Documentation :журнал. — MCB University: MCB University Press, 2004. — Т. 60, № 5. — С. 493-502.
9. Методы и средства анализа данных. Кластеризация. Типы алгоритмов
[Электронный ресурс]. - Режим доступа:
http: //bourabai. ru/tpoi/analysis6. htm, свободный.
10. Кулаичев А. П. Методы и средства комплексного анализа данных. —
М: ИНФРА- М, 2006.