1 ВВЕДЕНИЕ 6
1.1 Постановка задачи классификации текстовых документов 6
1.2 Типы классификации текстовых документов 7
1.2.1 Многоклассовая и одноклассовая классификации 7
1.2.2 «Жесткая» классификация и классификация с ранжированием 8
1.3 Подходы к классификации текстовых документов 9
1.3.1 Экспертный подход 9
1.3.2 Подход на основе машинного обучения 10
1.3.3 Обучающее, тестовое и валидационное множества 11
1.3.4 Оценка качества классификации 12
2 ИССЛЕДОВАТЕЛЬСКАЯ ЧАСТЬ 16
2.1 Индексация документов 16
2.2 Выбор метода уменьшения размерности пространства факторов 18
2.2.1 Уменьшение размерности с помощью отбора терминов 19
2.2.2 Уменьшение размерности с помощью извлечения терминов 19
2.2.3 Уменьшение размерности с помощью вероятностного тематического
моделирования 20
2.2.3.1 Основные определения и гипотезы 21
2.2.3.2 Принцип максимума правдоподобия 23
2.2.3.3 Модель латентного размещения Дирихле 24
2.2.3.4 Обоснования использования распределения Дирихле 24
2.2.3.5 Байесовский вывод для модели латентного размещения Дирихле 25
2.2.3.6 Обучение модели латентного размещения Дирихле с помощью
алгоритма сэмплирования Гиббса 26
2.2.3.7 Уменьшение размерности при помощи тематических моделей.. .28
2.2.4 Выбранный метод уменьшения размерности 28
2.3 Случайный лес 28
2.3.1 Деревья решений 29
2.3.2 Бутстрэп аггрегация 32
2.3.2 Декорреляция леса 33
3 КОНСТРУКТОРСКАЯ ЧАСТЬ 35
3.1 Вспомогательные модули системы 36
3.1.1 Модуль лексического анализа документов 37
3.1.2 Модуль лемматизации русского и английского языка 38
3.2 Основные модули системы 39
3.2.1 Система построения вероятностных тематических моделей 39
3.2.2 Модуль индексации документов 43
3.2.3 Система классификации 45
3.3 Система технической документации 48
4 ТЕХНОЛОГИЧЕСКАЯ ЧАСТЬ 49
4.1 Выбор платформы и программных средств разработки 49
4.1.1 Требования к платформе и программным средствам разработки 49
4.1.2 Основные языки программирования 50
4.1.3 Qt Creator - основная среда разработки C++ 51
4.1.4 Vim - основной текстовый редактор 51
4.2 Основные библиотеки и пакеты системы 52
4.2.1 Boost 52
4.2.2 Лемматизатор AOT 52
4.2.3 Библиотека libgumbo 53
4.2.4 MALLET 54
4.2.5 Пакеты Python 54
4.3 Комплексное тестирование всей системы 55
4.3.1 Коллекция документов 55
4.3.2 Построение вероятностной тематической модели 56
4.3.3 Индексация обучающего и тестового множеств документов 58
4.3.4 Построение и оценка классификаторов 58
5 ТЕХНИКО-ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ НИОКР 63
5.1 Расчет трудоемкости выполнения НИОКР 64
5.2 Расчет стоимости основных производственных фондов, используемых для
выполнения НИОКР 67
5.3 Расчет затрат на выполнение НИОКР 69
5.3.1 Материалы, покупные изделия и полуфабрикаты (РМ) 69
5.3.2 Специальное оборудование (СО) 70
5.3.3 Фонд заработной платы (РЗ) 70
5.3.4 Амортизационные отчисления (РА) 71
5.3.5 Косвенные расходы (РК) 74
5.3.6 Производственные командировки (РПК) 74
5.3.7 Контрагентные работы (РКР) 75
5.3.8 Единый социальный налог (ЕСН) 75
5.3.9 Полная себестоимость работы (С) 75
5.4 Формирование чистой прибыли предприятия и определение
эффективности производственных затрат 76
5.5 Оценка технического уровня НИОКР 77
5.6 Выводы 77
6 ПРОМЫШЛЕННАЯ ЭКОЛОГИЯ И БЕЗОПАСНОСТЬ 79
6.1 Основные факторы воздействия среды на оператора ПК 79
6.1.1 Параметры микроклимата 79
6.1.2 Требования к уровням шума и вибрации 80
6.1.3 Требования к освещению 81
6.1.4 Требования к уровню электромагнитного излучения 84
6.1.5 Требования электробезопасности 85
6.1.6 Требования к организации рабочего места оператора ПК 85
6.1.7 Пожаробезопасность 88
6.2 Расчет освещения 89
6.3 Утилизация жидкокристаллических мониторов 92
6.4 Выводы 96
7 ЗАКЛЮЧЕНИЕ 97
8 СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 98
Приложения должны быть в работе, но в данный момент отсутствуют
За последние несколько десятилетий задачи, связанные с обработкой и хранением электронных документов, приобрели наибольший интерес. Увеличение числа компаний, занимающихся такими задачами, дало толчок развитию новых областей науки, таких как «информационный поиск» и «машинное обучение». Одной из самых распространенных задач на стыке данных научных областей является задача классификации текстовых документов.
Классификация текстовых документов — это процесс отнесения документа к той или иной тематической категории из предопределенного набора категорий, основанный на содержании документа. Так же задачу классификации текстовых документов часто называют задачей категоризации текстов, тематической классификацией или определением тематики. В настоящее время классификация текстовых документов применяется в контексте решения широкого круга задач, начиная от индексации коллекций документов, заканчивая документной фильтрацией, автоматической генерацией метаданных документа, снятием морфологической омонимии и т. д.
В результате выполнения данного дипломного проекта был разработан эскизный проект системы классификации веб-документов, который уже может быть внедрен в любую имеющуюся систему информационного поиска с небольшими изменениями.
Отличительной особенностью разработки является использование тематического моделирования при решении проблемы высокой размерности пространства признаков, при помощи которых индексируются документы.
Разработанная система состоит из 3 крупных модулей: модуль отвечающий за подготовку и индексацию коллекций документов, написанный на языке С++; модуль, предназначенный для построения тематических моделей коллекций, в качестве которого выступает сторонний пакет MALLET;модуль ответственный за построение и оценку моделей классификаторов, реализованный на языке Python.Вся структура является достаточно гибкой и подразумевает дальнейшее расширение.
В ходе написания диплома были проведено практическое сравнение полученной системы с классическими методами, применяемыми при решении задач классификации. По результатам исследований было установлено, что качество классификации, предоставляемое системой значительно превосходит классические методы.
В организационно-экономической части проекта определена трудоемкость разработки, построен календарный график выполнения работ, определен состав затрат на разработку, определены сроки выполнения проекта.
В разделе проекта «Охрана труда и экология» проведен анализ условий труда на этапе реализации разработанного ПО, в рамках которого выполнен рас-чет системы искусственного освещения.
1. Айвазян С. А., Бухштабер В. М., Енюков И. С., Мешалкин Л. Д. Прикладная статистика: классификация и снижение размерности. — М.: Финансы и статистика, 1989. - 607 с.
2. Вапник В. Н. Восстановление зависимостей по эмпирическим данным. — М.: Наука, 1979. - 449 с.
3. Журавлев Ю. И., Рязанов В. В., Сенько О. В. «Распознавание». Математические методы. Программная система. Практические применения. — М.: Фазис, 2006. - 176 с.
4. Загоруйко Н. Г. Прикладные методы анализа данных и знаний. — Новосибирск: ИМ СО РАН, 1999. - 270 с.
5. Маннинг К., Рагхаван П., Шютце Х. Введение в информационный поиск. - Вильямс, 2011. - 528 с.
6. Маслов В.С. Методические указания к курсовому/дипломному квалификационной работе. - М.: МГТУ им. Н.Э. Баумана, 2005. - 5 с.
7. Смирнов С.Г., Баланцев С.К. Расчет искусственного освещения. - М.: МВТУ им. Н.Э.Баумана, 1976. - 23 с.
8. Федорук Е.В. Методические указание к выпускной квалификационной ра-боты (дипломного проектирования) дипломированных специалистов ка-федры САПР МГТУ им. Н. Э. Баумана. - М.: МГТУ им Н.Э. Баумана, 2014. - 6 с.
9. ГОСТ 12.1.004 - 91. Пожарная безопасность. Общие требования. - Москва: Изд-во стандартов, 1995. - 60 с.
10. ГОСТ 25861 — 83. Машины и вычислительные системы для обработки данных. - Москва: Изд-во стандартов, 1987. - 50 с.
11. СанПин 2.2.2/2.4.1340-03. Гигиенические требования к персональным электронно-вычислительным машинам и организации работы.
12. СНИП 23-05-95. Естественное и искусственное освещение.
13. «Википедия - свободная энциклопедия». Русскоязычная версия, [HTML] (http://ru.wikipedia.org/).
14. «Хабрахабр», [HTML] (http://habrahabr.ru/).
15. Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning. — Springer, 2001. - 737 c.
16. James G., Witten D., Hastie T., Tibshirani R. An Introduction to Statistical Learning: with Applications in R. - Springer, 2013. - 419 c.
17. Lutz M. Learning Python. — O'Reilly, 2013. - 1507 с.
18. Manning C., Shutze H. Foundatuions of Statistical Natural Language Processing. - MIT Press, 1999. - 657 c.
19. Mitchell T. Machine Learning. —McGraw-Hill Science/Engineering/Math, 1997. - 414 c.
20. Polukhin A. Boost C++ Application Development Cookbook. — Packt Publishing, 2013. - 329 c.
21. Rischpater R. Application Development with Qt Creator. - Packt Publishing, 2013 - 117 c.
22. Blei D. M., Ng A. Y., Jordan M. I. Latent Dirichlet allocation // Journal of Machine Learning Research. 2003. Vol. 3. c. 993-1022.
23. Griffiths T. Gibbs sampling in the generative model of Latent Dirichlet Allocation. - 2002. - 3 с.
24. Sebastiani F. Machine learning in automated text categorization. - 2002. с. 47.