- •-Data Mining (интеллектуальный анализ данных).Основные понятия и методы. Решение задачи классификации с помощью программного продукта Rapid Miner.
- •Решение задачи классификации с помощью методов Data Mining
- •Метод деревьев решений
- •Процесс кросс-валидации
- •Алгоритм решения задачи классификации
- •Практическая часть. Интерфейс Пользователя RapidMiner и Пример Процесса
Процесс кросс-валидации
Перекрёстная прове́рка (англ. Cross-validation) — метод формирования обучающего и тестового множеств для обучения аналитической модели в условиях недостаточности исходных данных или неравномерного представления классов. Для успешного обучения аналитической модели необходимо, чтобы классы были представлены в обучающем множестве примерно в одинаковой пропорции. Однако, если данных недостаточно или процедура сэмплинга при формировании обучающего множества была произведена неудачно, один из классов может оказаться доминирующим. Это может вызвать «перекос» в процессе обучения, и доминирующий класс будет рассматриваться как наиболее вероятный. Метод перекрестной проверки позволяет избежать этого.
В его основе лежит разделение исходного множества данных на k примерно равных блоков, например k = 5. Затем на k - 1, т.е. на 4-х блоках, производится обучение модели, а 5-й блок используется для тестирования. Процедура повторяется k раз, при этом на каждом проходе для проверки выбирается новый блок, а обучение производится на оставшихся (рис. 2).
Рис 2 Процесс кросс-валидации
Перекрестная проверка имеет два основных преимущества перед применением одного множества для обучения и одного для тестирования модели. Во-первых, распределение классов оказывается более равномерным, что улучшает качество обучения. Во-вторых, если при каждом проходе оценить выходную ошибку модели и усреднить ее по всем проходам, то полученная ее оценка будет более достоверной. На практике чаще всего выбирается k = 10 (10 - проходная перекрестная проверка), когда модель обучается на 9/10 данных и тестируется на 1/10. Исследования показали, что в этом случае получается наиболее достоверная оценка выходной ошибки модели.
Алгоритм решения задачи классификации
На первом этапе необходимо загрузить исходные данные. Исходные данные состоят из атрибутов (например, результаты анализов) и классов (например, диагнозы). При загрузке исходных данных необходимо указать тип (таб. 1) и вид данных (таб. 2) (RapidMiner)
Таблица 1 Виды данных
Категория |
Виды данных |
Класс |
Label |
Порядковый номер |
Id |
Атрибуты |
Attribute |
Таблица 2 Типы данных
Категория |
Типы данных |
Качественные данные |
Nominal |
Целые значения |
Integer |
Значения с плавающей точкой |
Real |
На втором этапе создается алгоритм анализа данных из блоков (операторов). В результате процесса кросс-валидации определяется уровень точности классификатора.
На третьем этапе анализируются полученные результаты и формулируются выводы. Рассмотрим на примере. Предположим, что исходная выборка состоит их 42 объектов из них 19 принадлежат к 1 классу и 23 ко 2. В результате работы процесса кросс-валидации определяется уровень точности (accuracy) классификатора. Ее значение можно оценить используя таблицу 3
Таблица 3. Интервалы точности и их значение
Интервал точности |
Значение |
0-20 |
очень низкая |
20-40 |
низкая |
40-60 |
посредственная |
60-80 |
высокая |
80-100 |
очень высокая |
Кроме выводов по общей точности метода, есть возможность интерпретировать ошибки классификатора и определить для обнаружения какого класса данная модель лучше работает.
Из таблицы 4 видно, что классификатор правильно классифицировал 1 класс в 13 случаях (предполагаемый класс 1 совпал с фактическим классом 1) и ошибочно присвоил 6 объектам класс 2. При классификации класса 2, ошибочно классифицированы только 4 объекта.
Таблица 3. Пример таблицы точности согласно кросс-валидации
Точность кросс-валидации 75 ± 19,4% |
Фактический класс 1 |
Фактический класс 2 |
Точность распознавания |
Предполагаемый класс 1 |
13 |
4 |
76,47% |
Предполагаемый класс 2 |
6 |
19 |
76,00% |
Точность предсказания |
68,42% |
82,61% |
- |
Желтым цветом в таблице 3 выделены правильно классифицированные объекты, красным ошибки классификатора.
На основе приведенного примера можно сделать следующий вывод: Точность классификатора высокая, так как находится в диапазоне от 60-80% и равна 75 ± 19,4%. Из таблицы точность видно, что данная модель лучше классифицирует класс 2.
Для интеллектуального анализа данных на практических занятиях будет использоваться открытый программный продукт, свободно распространяемый – RapidMiner.
RapidMiner — среда для проведения экспериментов и решения задач машинного обучения и интеллектуального анализа данных. Эксперименты описываются в виде суперпозиций произвольного числа произвольным образом вложенных операторов, и легко строятся средствами визуального графического интерфейса RapidMiner-а.
RapidMiner может работать и как отдельное приложение, и как «интеллектуальный движок», встраиваемый в другие приложения, включая коммерческие.
Приложениями RapidMiner-а могут быть как исследовательские (модельные), так и прикладные (реальные) задачи интеллектуального анализа данных, включая анализ текста (text mining), анализ мультимедиа (multimedia mining), анализ потоков данных (data stream mining).
RapidMiner предоставляет более 400 операторов для всех наиболее известных методов машинного обучения, включая ввод и вывод, предварительную обработку данных и визуализацию.
Имеется встроенный язык сценариев, позволяющий выполнять массивные серии экспериментов.
Концепция многоуровневого представления данных (multi-layered data view) обеспечивает эффективную и прозрачную работу с данными.
Графическая подсистема обеспечивает многомерную визуализацию данных и моделей.
