- •Аннотация
- •Оглавление
- •Глава 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
4.3. Оценка точности классификации примеров (с помощью алгоритма abcn2)
В данном разделе проводится тестирование реализованного алгоритма ABCN2. Тестирование проводилось также на задачах монахов.
Результат обучения серьезно зависит от заданных экспертом аргументов. В зависимости от того, насколько правильно эксперт расставит приоритеты при задании того или иного аргумента будут меняться полученные аргументированные продукционные правила, а также результат классификации в целом.
4.3.1 Результат классификации в задаче monk1(abcn2)
Рис.4.8 Набор аргументационных правил для задачи MONK1.
Рис.4.9 Результат классификации в задаче MONK1.
Эксперт тщательно аргументировал примеры, на основании сводки правил из алгоритма CN2(Пример сводки правил - Рис.3.5). То есть, анализировались самые часто встречаемые правила, полученные при работе алгоритма CN2, и на основе них эксперт отдавал предпочтение или исключал тот или иной атрибут при аргументации. Были заданы аргументы «[cX= false] потому что [x2 = 1]» и «[cX=false] потому что [x4 = x5]». С помощью задания данных аргументов удалось увеличить процент классификации на 3-5% для каждого эксперимента, что говорит о том, что аргументация позволяет исключать противоречия, возникающие в ходе обычного обучения на зашумленных выборках и более эффективно проводить классификацию новых выборок.
Ниже представлены аналогичные результаты тестирования для задачи monk3.
4.3.2 Результат классификации в задаче monk3(abcn2)
Рис.4.10 Набор аргументационных правил.
Рис.4.11 Результат классификации в задаче MONK3
Путем добавления аргументирования атрибутов [Сх= true] потому что [a5 = 3] и [Сх= true] потому что [a4 = 1] мы также смогли увеличить процент правильно классифицированных правил примерно на 5%.
4.4 Выводы
В данной главе доказана актуальность и конкурентоспособность алгоритма CN2 и ABCN2 относительно аналогичных алгоритмов обучения «с учителем». Представлен результат тестирования на известных наборах данных задач MONK1, MONK2, MONK3.
По результатам тестирования алгоритма ABCN2 можно сделать следующий вывод: применение аргументации для задачи обобщения в условиях зашумленных обучающих выборок является эффективных методом. Точность классификации при наличии шума для приведенных тестовых наборов данных удалось в среднем увеличить на и 5—7%. Такие результаты объясняются прежде всего тем, что наличие неверно классифицированных объектов в обучающих выборках приводит к формированию неверных классификационных решающих правил. Такие правила приводят к появлению противоречий, находимых и решаемых методами аргументации. Таким образом применение методов аргументации позволяет уменьшить влияние некорректных правил вывода, и приводить к увеличению точности классификации тестовых наборов данных
Заключение
В результате выполненной работы были изучены базовые модели и методы интеллектуального анализа данных, основанного на построении решающих правил, дан обзор наиболее известных алгоритмов обучения «с учителем».
Выбран алгоритм для программной реализации и исследования, позволяющий достаточно быстро формировать обобщения исходных данных и представлять их в компактной форме, удобной для восприятия и для дальнейшего использования в решении задачи распознавания. Работа выбранного алгоритма была успешно реализована и отлажена, а также протестирована с помощью специальных тестовых наборов данных из хранилища UCI Machine Learning Repository, традиционно используемых для построения решающих правил.
Таким образом, было создано приложение, позволяющее получить набор аргументированных продукционных правил для различных множеств данных, а так же проводить классификацию набора примеров.
Основные особенности рассматриваемого алгоритма следующие:
Алгоритм обеспечивает высокое качество классификации, а учет статических закономерностей позволяет ему работать с зашумленными данными.
Реализованный алгоритм позволяет эксперту отдать предпочтение тем или иным атрибутам при построении решающих правил несмотря на то, насколько точно полученные правила будут классифицировать новые примеры.
Алгоритм ABCN2 эффективнее в условиях зашумленных обучающих выборок.
