Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Методы и модели решения задачи классификации данных. Основные этапы. Учебное пособие
.pdf
Этап 6
Этап 5
Этап 4
Этап 3
Анализ
результатов
и интерпретация
Классификация
анализ
Первичный
и интерпретация
полученных
результатов
в терминах
прикладной задачи
Анализ
моделей классифи-
кации с помощью
Построение
Графический
анализ данных
Оценка степени
моделей классифи-
программных
средств
Оценка точности
Расчет
статистических
характеристик
Исследование
законов распреде-
Анализ
и устранение
Анализ структуры
распределения
объектов по классам
Выявление
дисбаланса классов
Выбор и примене-
дисбаланса классов
ние метода семпли-
достижения
конечных целей
исследования
достоверности
результатов
Оценка степени
кации на обучающей
и тестовой выборке
Сравнение
ления данных
Исследование
рования
ной модели по сово-
купности показателей
точности
точности моделей
Выбор оптималь-
корреляционных
взаимосвязей
в данных
и свойствах данных
гипотез (предполо-
жений) о структуре
Проверка различ-
ных статистических
Рис. 1. Этапы решения задачи классификации данных
Этап 2
данных
Подготовка
для обработки
Очистка данных
Обработка
пропущенных
значений
Задание типов
признаков
Определение
целевой переменной
(«Класс») и предик-
торных признаков
Расчет
статистических
характеристик
задачи
Этап 1
Постановка
статистического
исследования
Цели и задачи
Исходные данные
Предмет и объекты
и их описание
Требования
к представлению
результатов
Формальная
постановка задачи
Методы и модели
выборку
Деление исходных
данных на обучаю-
щую и тестовую
Программные
средства анализа
данных
11

классификации: языки и программные среды; статистические пакеты;
библиотеки и т. п.
Этап 2. Подготовка данных для обработки. Этап начинается с загрузки исходных данных в программную среду. В рамках этапа выполняется подготовка исходных данных для автоматизированной обработки, к которой относится очистка данных и обработка пропущенных
значений. Очистка данных
подразумевает выявление и удаление ошибок и несоответствий в данных, информационных дублей, недопустимых и аномальных значений признаков. Обработка пропущенных значений включает идентификацию пропущенных значений и их описание:
структура пропусков (доля пропущенных значений, где они рас-
положены, насколько широкую область они охватывают);
выявление причин наличия пропусков (распределение пропущен-
ных значений по записям и признакам, можно ли считать пропуски случайными или пропущены данные в строго определенных записях).
Далее выбирается способ обработки пропущенных значений: записи
с пропусками либо удаляются, либо используются статистические методы для заполнения пропущенных значений (методы импутации).
В настоящем учебном пособии
методы очистки данных и обработки
пропущенных значений не рассматриваются. В примере решения задачи
классификации (см. раздел 2) предполагается, что этап очистки выполнен и исходная база данных (БД) не содержит пропущенных значений.
В рамках этапа определяется также структура исходной БД с точки
зрения решения задачи классификации: целевая зависимая переменная
(признак), задающая
класс объекта наблюдения, и независимые (пре-
дикторные) признаки. Задается тип значений каждого из признаков исходной БД: количественный или качественный (порядковый, классификационный). Выполняется первичное статистическое описание исходной БД, которое включает определение объема выборки (количества
записей в БД), количества наблюдений в каждом классе, расчет и анализ
базовых статистических характеристик
признаков (среднее, медиана,
дисперсия, среднеквадратическое отклонение (СКО), квартили, размахи
и т. д.).
В заключение этапа исходная БД разбивается на части (выборки):
обучающую и тестовую. На обучающей выборке строятся модели классификатора, а их способность к прогнозированию проверятся на тестовой выборке. Пропорции частей определяет и задает исследователь.
Этап 3. Анализ и
устранение дисбаланса классов. Анализируется
структура распределения объектов по классам на основе информации,
12

полученной на предыдущем этапе. В случае наличия в исходной БД явного дисбаланса классов, т. е. преобладания объектов определенного
(мажоритарного) класса, делается вывод о необходимости применения
методов семплирования данных. Целесообразность применения методов семплирования данных, направленных на устранение дисбаланса
классов, зависит от исходных данных и от конкретной прикладной задачи.
Один из подходов к построению классификаторов основан на
сравнении точности результатов, полученных с использованием несбалансированной выборки и результатов, полученных с использованием
сбалансированной выборки, и дальнейшем выборе оптимального варианта. Отметим, что балансировка классов выполняется только на обучающей выборке.
Этап 4. Первичный (разведочный) анализ данных. На этом этапе
применяются различные статистические методы первичной обработки
и графического анализа данных с целью статистического описания распределения данных и выявления структуры взаимосвязей признаков.
Выполняется исследование законов распределения признаков исходной
БД, определяются статистически значимые взаимосвязи предикторных
признаков между собой и с целевой переменной «Класс». В результате
выполнения этапа уточняется совокупность предикторных признаков
и
математических моделей классификации, которые будут использо-
ваться в ходе решения задачи.
Этап 5. Классификация. Проводится вычислительная реализация
выбранных математических моделей классификации, выполняется
оценка точности решения задачи классификации на базе выбранных методов. Результаты применения моделей классификации оформляются
в табличном и графическом виде и представляют значения метрик точности на обучающей
и тестовой выборке. Как правило, для решения задачи классификации используется совокупность разных методов и моделей. В этом случае в конце этапа выполняется сравнительный анализ
точности моделей классификации с целью выбора оптимальной модели.
Этап 6. Анализ и интерпретация результатов. Анализируются и
интерпретируются полученные результаты в терминах прикладной задачи
, оценивается, насколько достигнуты конечные цели исследования,
степень достоверности результатов. В зависимости от сделанных заключений либо формулируются окончательные научные и практически выводы, либо даются уточнения и изменения в постановке задачи и осуществляется возврат на один из предыдущих этапов.
13

1.3. УСТРАНЕНИЕ ДИСБАЛАНСА КЛАССОВ
НА ОСНОВЕ ПРИМЕНЕНИЯ МЕТОДОВ
СЕМПЛИРОВАНИЯ
Алгоритм решения задачи классификации данных включает этап
анализа и устранения дисбаланса классов в случае необходимости.
Как известно, цель алгоритма обучения с учителем – на основе набора
данных создать модель, которая принимает вектор признаков на входе
и возвращает информацию, позволяющую определить класс для этого
вектора признаков. Точность алгоритма классификации во многом зави-
от той выборки объектов, на основе которой происходит построение
сит
и обучение классификатора. Применение подавляющего большинства
подобных алгоритмов требует от исследователя внесения сопоставимого числа объектов для каждого из классов, однако чаще всего сделать
сбалансированные наборы данных невозможно в связи с рядом факторов. Ключевой из них – специфика предметной области (балансировка
данных может понизить показатель репрезентативности выборки) [3].
Поэтому появляется проблема обучения модели на несбалансированных данных (таковыми являются данные, в которых некоторые классы
недостаточно представлены в обучающей выборке). В соответствии
с базовыми предположениями, лежащими в основе большинства алгоритмов, целью обучения является максимизация доли правильных решений по отношению ко всем принятым
решениям, а обучающая выборка и генеральная совокупность подчиняются одному и тому же распределению. Однако приведенные предположения и несбалансированность выборки приводят к тому, что модель оказывается неспособна
классифицировать данные лучше, чем тривиальная модель, полностью
игнорирующая менее представленный (миноритарный) класс и маркирующая все объекты для классификации как принадлежащие
к доминирующему (мажоритарному) классу. С другой стороны, высока вероятность построения слишком сложной модели, включающей большое
множество правил, охватывающих при этом малое количество объектов. Подобный классификатор, скорее всего, окажется неэффективным,
что приведет модель к переобучению и некорректным оценкам прогноза. Исходя из этого с целью предотвращения подобных проблем
и
достижения точных результатов классификации выполняется балан-
сировка исходных выборочных данных.
Одним из подходов к решению описанных проблем является примене-
ние стратегий семплинга. Стратегия подразумевает добавление в обучаю-
14

щую выборку объектов менее представленных классов (миноритарных)
или удаление из нее объектов мажоритарных классов с целью достичь сбалансированного распределения классов в наборе данных [2]. К основным
преимуществам алгоритмов семплинга можно отнести: семплинг является
достаточно простой процедурой, не требует модификации алгоритма обучения и может применяться к любым типам классификаторов.
Рассмотрим подробнее
основные методы семплирования.
Увеличение выборки (oversampling)
Дублирование объектов миноритарных классов – стратегия, позволяющая увеличить важность некоторых классов путем создания нескольких копий данных из этих классов. Достоинства стратегии: высокая скорость работы, простота реализации, увеличение размера выборки, а основной недостаток – риск переобучения модели. На рис. 2, а
продемонстрирован принцип работы
алгоритма увеличения выборки.
Сокращение выборки (undersampling)
Случайное удаление объектов мажоритарных классов является
наиболее простой стратегией, в которой из набора данных случайным
образом исключаются объекты мажоритарного класса для достижения
необходимого соотношения классов. Стратегия обладает следующими
достоинствами: высокой скоростью работы, простотой реализации.
Однако стратегия имеет и существенный недостаток – высокую вероятность потери
наблюдений, несущих полезную информацию, из-за
уменьшения размера выборки. На рис. 2, б продемонстрирован принцип
работы алгоритма сокращения выборки.
а б
Рис. 2. Виды семплинга:
а – увеличение выборки; б – сокращение выборки
15

Расширение выборки меньшинства синтетическими образцами
x
x
f
(Synthetic Minority Oversampling Technique, SMOTE)
Стратегия SMOTE [1] базируется на технологии увеличения выборки. Стратегия предполагает создание синтетических данных, основанное на случайном выборе значений признаков из нескольких объектов миноритарного класса и объединение их в новые объекты этого
класса. Достоинства стратегии заключаются в высокой скорости работы, простоте реализации, а
недостаток – в возможном переобучении
модели из-за возможного перемешивания классов.
Адаптивная синтетическая выборка
(Adaptive Synthetic Sampling, ADASYN)
Недостатком алгоритма SMOTE является то, что он для каждого
объекта миноритарного класса создает одинаковое количество искусственных объектов (наблюдений). Это не оптимально, поскольку не все
объекты одинаково «просты» в обучении. Например, наблюдения, расположенные вблизи границ классов,
обычно «перемешаны» с наблюдениями соседнего класса, поэтому алгоритму обучения сложнее их распознать. Поэтому при увеличении выборки для таких объектов логично
генерировать больше искусственных наблюдений, чтобы сделать границу класса более четкой. На этом принципе и основана работа алгоритма адаптивной синтетической выборки (ADASYN).
Пусть имеется выборка S, содержащая n наблюдений
,
n
{, }
Xxy
объекте;
y
– номер (метка) класса, к которому принадлежит i-й объект. Обозна-
i
n
чим
m
соответственно, так что
np
ij i
i
, где
,1
ij
– вектор значений признаков, измеренных на i-м объекте;
– значение j-го признака, измеренного на i-м
ij
и fn – число объектов миноритарного и мажоритарного класса
nn и .
mf
nnn
mf
(объектов)
Алгоритм состоит из следующих шагов.
1. Вычислить показатель несбалансированности классов:
n
m
dn
. (1)
2. Задать порог максимально допустимого показателя несбаланси-
рованности классов –
d
и проверить, выполняется ли условие
max
16

dd
f
x
x
x
x
g
x
x
. Если дисбаланс превышает допустимый, то продолжить ра-
max
боту алгоритма.
3. Определить число искусственных объектов, которые должны
быть сгенерированы из миноритарного класса:
(–)
– уровень баланса выборки. Так,
где
Gnn , (2)
m
1
означает, что выборка пол-
ностью сбалансирована.
4. Для каждого наблюдения
найти
k ближайших соседей (объектов) на основе расстояния Евклида
, 1, ,
mn из миноритарного класса
mm
(или другой метрики) и вычислить отношение:
k
m
где
k
– количество из k ближайших соседей вектора
m
rk
m
принадлежат к мажоритарному классу, т. е.
r
5. Нормализовать
в соответствии с выражением
m
*
r
m
, (3)
, которые
m
0,1
r .
m
r
m
. (4)
n
m
r
∑
m
m
1
6. Вычислить количество искусственных объектов, которые нужно
сгенерировать для каждого объекта миноритарного класса
:
m
GGr
mm
7. Для каждого объекта миноритарного класса
, 1,
искусственные объекты
lG , в процессе выполнения следую-
lm
*
. (5)
сгенерировать
m
щего цикла:
случайно выбрать один объект миноритарного класса
ближайших соседей
;
m
17
из k
z

сгенерировать искусственный пример:
g
(– )
где
– случайное число из диапазона [0, 1].
xxx
lm zm
, (6)
Таким образом, ключевая идея алгоритма ADASYN заключается в
использовании
*
в качестве критерия для автоматического определе-
r
m
ния количества искусственных объектов, которые необходимо сгенерировать для каждого миноритарного объекта. Фактическое значение
*
–
r
m
это показатель распределения весов для различных объектов миноритарного класса в соответствии с их уровнем сложности для обучения.
Результирующий набор данных после применения алгоритма
ADASYN не только обеспечит сбалансированное представление данных в соответствии с желаемым уровнем баланса, определяемым коэффициентом
, но также и «заставит» алгоритм обучения сосредото-
читься на наиболее сложных для обучения объектах. В этом и заключается главное отличие алгоритма ADASYN от SMOTE, в котором для
каждого объекта миноритарного класса генерируется одинаковое количество искусственных объектов.
1.4. ПЕРВИЧНЫЙ АНАЛИЗ ДАННЫХ
Решение любой задачи, связанной со статистической обработкой информации, в том числе и задачи классификации, предполагает проведение первичного (разведочного) анализа данных как одного из ключевых
этапов. Анализ проводится с целью статистического описания исходных данных, выявления наиболее общих характеристик, структур, закономерностей и тенденций в данных. В рамках этапа первичного
анализа
данных, как правило, выполняются следующие операции (процедуры)
[7, 8, 12, 16]:
графический анализ данных;
расчет основных числовых характеристик данных (среднее, мода,
медиана, дисперсия, СКО, асимметрия, эксцесс, квантили, квартили,
размахи и т. д.);
исследование законов распределения данных;
исследование корреляционных взаимосвязей в данных;
проверка различных статистических гипотез (предположений)
о структуре и свойствах данных.
18

Результаты первичного анализа данных служат основой для априорного выбора методов и моделей классификации, так как применение
каждого из методов классификации требует выполнения определенного
комплекса условий, например, нормальная распределенность предикторных признаков, их статистическая независимость между собой,
наличие статистически значимой взаимосвязи между зависимой переменной «Класс» и предикторными признаками.
1.4.1. ГРАФИЧЕСКИЙ АНАЛИЗ ДАННЫХ
Этап первичного анализа данных рекомендуется начинать с проведения графического анализа, который играет немаловажную роль в процессе решения задачи классификации. Графический анализ данных важен по нескольким причинам. Во-первых, он позволяет визуализировать данные и представить их в понятной и наглядной форме. Визуальные представления, такие как диаграммы и
графики, помогают исследователям в обнаружении скрытой структуры и описании распределения
данных, а также выявлении структур, закономерностей и трендов, которые могут быть менее очевидными при рассмотрении табличных данных. Во-вторых, графический анализ помогает обнаружить пропуски,
выбросы, аномалии и ошибки в данных, что позволяет проводить их
очистку, обработку пропущенных
значений и, как следствие, повышает
качество данных. В-третьих, графический анализ данных позволяет исследователям искать корреляции между различными признаками. С помощью графиков можно обнаружить взаимосвязи признаков, что помогает формулировать статистические гипотезы и выбирать методы для
решения задач кластеризации, классификации и регрессии. На основе
графического анализа данных формулируются предварительные
выводы о структуре, взаимосвязях, тенденциях в данных, которые затем
проверяются аналитическими методами первичного анализа данных.
В рамках графического анализа данных строятся 2D и 3D графики
разных типов, например, радиальные, столбиковые и лепестковые диаграммы; гистограммы распределений признаков; линейные графики;
диаграммы размахов; диаграммы рассеяния. Наиболее интересны для
анализа категорированные и матричные графики,
которые состоят из совокупности элементарных графиков и позволяют обобщенно представить и описать все исходные данные.
По итогам обработки данных также проводится графический анализ
с целью иллюстрации и интерпретации результатов применения методов
19

анализа данных. Например, строятся графики ROC-кривых для анализа
точности модели классификатора, диаграммы дискриминации в рамках
дискриминантного анализа данных, деревья решений, представляющие
логическую модель классификатора.
Основные типы графиков и их описание на примере анализа данных
о специалистах IT-компании представлены в разделе 2.
1.4.2. ИССЛЕДОВАНИЕ ЗАКОНОВ
РАСПРЕДЕЛЕНИЯ ДАННЫХ
Закон распределения данных представляет собой наиболее полное
их статистическое описание и определяет значения числовых характеристик распределения данных. Исключительно важную роль в теории
вероятностей и математической статистике имеет нормальный закон
распределения (закон Гаусса), который занимает особое положение
среди других законов и является предельным, самым общим законом
фактического распределения. Поэтому, как правило
, выполняют проверку выборочного распределения данных на соответствие модели нормального закона распределения. При решении задачи классификации
такая проверка может быть важна по нескольким причинам.
1. Оценка возможности применения параметрических методов
и моделей классификации: некоторые методы предполагают нормальность распределения данных, такие как линейный дискриминантный
анализ (LDA), наивный байесовский классификатор, логистическая
регрессия
.
2. Оценка возможности применения статистических критериев
(тестов) в ходе решения задачи классификации и интерпретации полу-
ченных результатов. Например, анализ дисперсий (ANOVA) предполагает нормальный закон распределения данных для правильной интерпретации результатов. Если данные не соответствуют нормальному распределению, результаты таких тестов могут быть искажены или неправильны.
3. Расчет вероятностей и
оценка рисков: во многих моделях машин-
ного обучения при решении задачи классификации используется вероятностный подход для принятия решений о принадлежности объектов
к классам. Такие модели предполагают нормальное распределение данных в каждом классе. Если данные не соответствуют нормальному распределению, оценки вероятностей и рисков могут быть неточными или
недостоверными.
Проверка на нормальность распределения данных
20
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
