Введение 3
1. Постановка задачи 5
2. Актуальность 7
2.1 Обзор аналогичных решений 7
3. Анализ предметной области 9
3.1 Онтологический базис 9
3.2 Представление данных в векторном пространстве 13
3.3 Предварительная обработка данных 17
3.4 Способы уменьшение размерности векторов 18
3.5 Характеристики иерархических классификаторов 19
3.6 Способы взвешивания признаков 20
3.7 Иерархические классификаторы 22
3.8 F-мера для иерархической структуры 25
4. Обзор средств реализации 27
4.1 Дерево принятий решений 27
4.2 ID3 29
4.3 CART 30
4.4 Средства разработки 31
5. Этапы разработки 34
5.1 Архитектура диалоговой системы 34
5.2 Ассоциативная память 40
6. Результаты 42
Заключение 45
Список использованной литературы 47
Приложения 49
Диалоговые агенты являются предметом внимания многих исследователей в области прикладных систем искусственного интеллекта. Сеть Интернет содержит более семи миллионов ссылок на Web страницы, в которых встречается словосочетание «диалоговый агент». Однако публикации, посвященные диалоговым агентам, даже те из них, которые обсуждают теоретические вопросы моделирования диалога, как правило освещают решение частных проблем диалоговых программных приложений. В то же время существуют научные направления, имеющие непосредственное отношение к исследованию природы диалога. Результаты, полученные в рамках этих направлений, ценны для исследователей в области ИИ, занимающихся проектированием универсальных и специализированных диалоговых агентов, и исповедующих философию систем «думающих, как человек».
Целью данной дипломной работы является исследование методов предобработки данных, сравнение результатов обучения классификатора, используя модель "Bag of Words"и архитектуру skip-gram, ознакомление с библиотеками на Python для классификации и разработки собственной диалоговой системы антропоморфного социального агента на основе изученного материала.
Изучением различных аспектов диалогового взаимодействия и теории разговора занимаются многие области науки, например, такие, как эпистемология, когнитивная психология, эротетическая логика. Можно отметить несколько важных работ из этого списка.
В области эпистемологии - Хинтикка и Шаффера. В их работах обсуждаются и моделируются виды знаний, которые необходимы вопросно-ответного общения.
В области эротетической логики - работы Бэлнапа и Стила, посвященные исследованию и моделированию структуры вопросно-ответной пары, и логическому выводу в ходе вопросно-ответного общения.
Коротко о теории диалога будет рассказано в параграфе «Онтологический базис». В следующем параграфе будут определены задачи, которые должны быть рассмотрены в дипломной работе и также выделены минимальные требования к диалоговой системе.
На основе изученного материала, применяя теоретические и практические навыки в сфере информационного поиска, машинного поиска и обработки текста на естественном языке, была разработана система, отвечающая всем требованиям, приведенным при постановке задачи, рассмотрены и изучены методы по обработке текстовых данных, способы конвертирования “сырых” данных в вектора, алгоритмы обучения классификаторов, представлена архитектура системы и описаны все этапы разработки. Система нацелена на простоту и удобство использования, и при тщательном выборе обучающей выборки, можно добиться хороших результатов в качестве классификации.
В процессе выполнения дипломной работы были решены следующие задачи:
1. Разработаны модули, отвечающие за обработку и сжатию данных. Разработка сети слов-синонимов для русского языка на основе словаря Н. Абрамова.
2. Разработан интерфейс по работе с инвертированным индексом.
3. Разработан модуль по взвешиванию признаков на основе функции tf-idf.
4. Реализована задача по конфигурированию системы на основе внешнего файла configjson.
5. Разработан модуль по взаимодействию с базой данных.
6. Проведена компоновка всех модулей и разработка архитектуры диалоговой системы на базе двух интерфейсов.
Дальнейшее развитие системы:
1. Реализация web-интерфейса на основе API.
2. Последующая оптимизация программного кода для более эффективной работы системы.
На данный момент все настройки хранятся в конфигурационном файле, в том числе и параметры, отвечающие за загрузку обучающей выборки. Web-интерфейс даст гибкость в управлении с данными, возможность отслеживания динамики запросов и их наглядную визуализацию, возможность загрузки данных и обучении системы в реальном времени.