- •Аннотация
- •Оглавление
- •Глава 1.Интеллектуальный анализ данных и Data Mining 8
- •Глава 2. Обзор алгоритмов обобщения с «учителем» 29
- •Глава 3. Программная реализация алгоритма cn2 и abcn2 49
- •Глава 4. Тестирование работы алгоритма и исследование полученных результатов 60
- •Введение
- •Глава 1.Интеллектуальный анализ данных и Data Mining
- •1.1. Задачи Data Mining
- •1.1.1. Задача классификации и регрессии
- •1.1.2. Задача кластеризации
- •1.1.3. Задача поиска ассоциативных правил
- •1.2. Модели Data Mining
- •1.3. Методы Data Mining
- •1.4. Общий подход в прогнозирующих методах
- •1.5. Классификация алгоритмов качественного обобщения по признакам
- •1.5.1.Способы представления исходной информации в интеллектуальных системах
- •1.5.2.Варианты реализации систем обобщения
- •1.5.2.1 Обучение "без учителя": основные понятия
- •1.5.2.2. Обучение "с учителем": постановка задачи
- •1.6 Выводы
- •Глава 2. Обзор алгоритмов обобщения с «учителем»
- •2.1.1 Алгоритм древ
- •2.1.2. Описание алгоритма древ
- •2.2. Алгоритм id3(индукция решающих деревьев)
- •2.3 Алгоритм aq
- •2.3.1 Описание алгоритма
- •2.3.2 Псевдокод алгоритма
- •2.4 Алгоритм cn2
- •2.4.1 Описание алгоритма
- •2.4.2 Псевдокод алгоритма
- •2.5 Алгоритм abcn2
- •2.5.1 Особенности аргументированного обучения
- •2.5.2 Аргументирование примеров
- •2.5.3 Оценка условий формируемых правил
- •2.5.4 Алгоритм извлечения продукционных правил
- •2.6 Выводы
- •Глава 3. Программная реализация алгоритма cn2 и abcn2
- •3.1 Постановка задачи
- •3.2 Требования к системе
- •3.3 Среда разработки
- •3.4. Форматы входных и выходных данных
- •3.5 Интерфейс
- •3.6. Ввод информации об атрибутах
- •3.7.Ввод обучающей выборки и построение аргументированных продукционных правил
- •3.8.Получение набора аргументированных продукционных правил
- •3.9.Вкладка «Экзамен»
- •3.10. Выводы
- •Глава 4. Тестирование работы алгоритма и исследование полученных результатов
- •4.1. Исследование правильности построения продукционных правил
- •4.2. Оценка точности классификации примеров(с помощью алгоритма cn2)
- •4.2.1 Результат классификации в задаче monk1(cn2)
- •4.2.2 Результат классификации в задаче monk2(cn2)
- •4.2.3 Результат классификации в задаче monk3(cn2)
- •4.3. Оценка точности классификации примеров (с помощью алгоритма abcn2)
- •4.3.1 Результат классификации в задаче monk1(abcn2)
- •Ниже представлены аналогичные результаты тестирования для задачи monk3.
- •4.3.2 Результат классификации в задаче monk3(abcn2)
- •4.4 Выводы
- •Заключение
- •Список литературы
- •Пространство имён DataStructures
- •Пространство имён uc
- •Пространство имён PercentageConverter.Cs
- •Пространство имён AttrinuteTypesView
- •Пространство имён LearningExamplesView
- •Пространство имён ArguedLearningExamplesView
- •Пространство имён ExamineExamolesView
- •Пространство имён Log
- •Пространство имён NumericUpDown
- •Проект WpfApp
НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ «МЭИ»
УДК: Институт___АВТИ_____________________________________ Кафедр_____ВТ_________________________________________ Направление_09.04.01 Информатика и вычислительная______ техника___________________________________
МАГИСТЕРСКАЯ ДИССЕРТАЦИЯ
Программа: Программный и проектный менеджмент________________ _______________________________________________________________ ________________________________________________________________
Тема: Исследование и программная реализация алгоритма обобщения ABCN2 (Машинное обучение на основе аргументов)_____________________ __________________________________________________________________ __________________________________________________________________ __________________________________________________________________
Студент______А-06-10____________________________Кузнецов Д.А._____________ группа подпись фамилия, и., о.,
Научный руководитель__доцент, кандидат наук,_________________Фомина М.В.__________ должность звание подпись фамилия, и., о.,
Консультант_____________________________________________________________ должность звание подпись фамилия, и., о., Консультант_____________________________________________________________ должность звание подпись фамилия, и., о.,
Магистерская диссертация допущена к защите
Зав.кафедрой__________ проф. Топорков В.В.____________ звание подпись фамилия, и., о.,
Дата_________
МОСКВА 2016г. |
Аннотация
Данная работа посвящена проблеме решения задач обобщения информации в больших базах данных, построения продукционных правил с возможностью дальнейшего их использования для классификации объектов. Поставленная задача является достаточно актуальной в настоящее время, так как в связи с увеличением размера современных баз данных, человек не может обходиться без автоматизированных средств интеллектуального анализа данных.
В данной работе изучен и программно реализован один из алгоритмов машинного обучения, который называется ABCN2( Машинное обучение на основе аргументации ). Алгоритм сочетает в себе машинное обучение на наборе примеров с использованием понятия аргументации. Идея заключается в том, чтобы учитывать аргументы эксперта при построении продукционных правил. Полученные продукционные правила объясняют, почему при классификации тот или иной пример должен быть отнесен/не отнесен к конкретному классу.
В ходе работы были исследованы современные методы и алгоритмы машинного обучения, проведен анализ требований к подобным системам. На основе проведенных исследований был реализован и протестирован прототип системы для решения задач получения аргументированных продукционных правил с использованием тестовых баз данных из хранилища UCI Machine Learning Repository.
Оглавление
АННОТАЦИЯ 2
ВВЕДЕНИЕ 6
Глава 1.Интеллектуальный анализ данных и Data Mining 8
1.1. Задачи Data Mining 9
1.1.1. Задача классификации и регрессии 11
1.1.2. Задача кластеризации 13
1.1.3. Задача поиска ассоциативных правил 15
1.2. Модели Data Mining 16
1.3. Методы Data Mining 19
1.4. Общий подход в прогнозирующих методах 21
1.5. Классификация алгоритмов качественного обобщения по признакам 23
1.5.1.Способы представления исходной информации в интеллектуальных системах 23
1.5.2.Варианты реализации систем обобщения 25
1.5.2.1 Обучение "без учителя": основные понятия 25
1.5.2.2. Обучение "с учителем": постановка задачи 26
1.6 Выводы 27
Глава 2. Обзор алгоритмов обобщения с «учителем» 29
2.1.1 Алгоритм ДРЕВ 29
2.1.2. Описание алгоритма ДРЕВ 30
2.2. Алгоритм ID3(индукция решающих деревьев) 31
2.3 Алгоритм AQ 34
2.3.1 Описание алгоритма 34
2.3.2 Псевдокод алгоритма 35
2.4 Алгоритм CN2 37
2.4.1 Описание алгоритма 37
2.4.2 Псевдокод алгоритма 38
2.5 Алгоритм ABCN2 39
2.5.1 Особенности аргументированного обучения 39
2.5.2 Аргументирование примеров 41
2.5.3 Оценка условий формируемых правил 44
2.5.4 Алгоритм извлечения продукционных правил 46
46
2.6 Выводы 48
Глава 3. Программная реализация алгоритма cn2 и abcn2 49
3.1 Постановка задачи 49
3.2 Требования к системе 49
3.3 Среда разработки 50
3.4. Форматы входных и выходных данных 50
3.5 Интерфейс 52
3.6. Ввод информации об атрибутах 55
3.7.Ввод обучающей выборки и построение аргументированных продукционных правил 55
3.8.Получение набора аргументированных продукционных правил 56
3.9.Вкладка «Экзамен» 57
3.10. Выводы 59
Глава 4. Тестирование работы алгоритма и исследование полученных результатов 60
4.1. Исследование правильности построения продукционных правил 60
б) 61
4.2. Оценка точности классификации примеров(с помощью алгоритма CN2) 62
4.2.1 Результат классификации в задаче MONK1(CN2) 62
4.2.2 Результат классификации в задаче MONK2(CN2) 64
4.2.3 Результат классификации в задаче MONK3(CN2) 65
4.3. Оценка точности классификации примеров (с помощью алгоритма ABCN2) 67
4.3.1 Результат классификации в задаче MONK1(ABCN2) 68
Ниже представлены аналогичные результаты тестирования для задачи MONK3. 70
4.3.2 Результат классификации в задаче MONK3(ABCN2) 70
4.4 Выводы 71
Заключение 73
Список литературы 74
Приложение. 76
1. Диаграмма классов 76
2. Проект CN2 78
Пространство имён Core 78
Пространство имён Algorithms 78
CN2.cs 78
Пространство имён DataStructures 87
AttributeType.cs 87
AttributeValue.cs 90
AttributeTypeSet.cs 92
LearnableExample.cs 93
ArguedLearnableExample.cs 94
ExaminableExample.cs 96
IExpressionMember.cs 97
Expression.cs 97
ProductionRule.cs 101
Пространство имён UC 102
IValidatable.cs 102
SerializationData.cs 102
Пространство имён PercentageConverter.cs 103
Пространство имён AttrinuteTypesView 103
AttributeTypesDataGridItem.cs 103
AttributeTypesView.xaml 105
AttributeTypesView.xaml.sc 105
Пространство имён LearningExamplesView 111
LearningExamplesDataGridItem.cs 111
LearningExamplesView.xaml 112
LearningExamplesView.xaml.sc 113
Пространство имён ArguedLearningExamplesView 121
PredictiveAttributeValue.cs 121
ArguedLearningExamplesDataGridItem.cs 122
ArguedLearningExamplesView.xaml 123
ArguedLearningExamplesView.xaml.cs 124
Пространство имён ExamineExamolesView 137
ExamineExamplesDataGridItem.cs 137
ExamineExamplesView.xaml 138
ExamineExamplesView.xaml.sc 139
Пространство имён Log 148
Log.xaml 148
Log.xaml.sc 148
Пространство имён NumericUpDown 150
NumericUpDown.xaml 150
NumericUpDown.xaml.cs 151
Проект WpfApp 151
MainWindow.xaml 151
MainWindow.xaml.cs 152
