Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методы и модели решения задачи классификации данных. Основные этапы. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
Визуальный анализ позволяет сделать вывод о неплохом соответ­ствии распределения выборочных данных нормальному закону. Для ана­литической проверки гипотезы о соответствии нормальному закону рас­пределения могут быть применены также критерии согласия: Шапиро – Уилка, Крамера – Мизеса, Андерсона – Дарлинга, соответственно функ­ции, реализующие критерии (для первого класса):
install.packages("nortest")
library(nortest) shapiro.test(data1$СВЗ)
cvm.test(data1$СВЗ)
ad.test(data1$
СВЗ)
В табл. 3. представлена сводная информация по результатам расчета критериев согласия (расчетное значение критической статистики крите­рия и p-value).
Таблица 3
Результаты расчета критериев согласия
Класс
Первый 0,963 0,017 0,042 0,642 0,484 0,222 Второй 0,961 0,093 0,163 0,141 0,983 0,137 Третий 0,818 <0,0001 0,649 <0,0001 4,157 <0,0001 Четвертый 0,892 0,031 0,422 0,067 2,570 0,051
Shapiro CVM AD
W p-value W p-value A p-value
61
Как следует из табл. 3, гипотеза о нормальном распределении при­знака СВЗ внутри классов не отвергается при уровне значимости 0,01 (p-value>0,01) для всех классов, кроме третьего. Наилучшее соответ­ствие распределения признака СВЗ нормальному закону наблюдается в первом и втором классе.
2.3.2. ИССЛЕДОВАНИЕ ВЗАИМОСВЯЗЕЙ ПРИЗНАКОВ
На следующем этапе исследуются корреляционные взаимосвязи между зависимой переменной «Класс» и объясняющими переменными (признаками) с целью выделения и выбора предикторов, которые должны быть включены в модель классификатора. Кроме того, оцени­ваются корреляционные взаимосвязи между исходными признаками для выявления сильно коррелированных признаков (явление мульти­коллинеарности – наличие статистически значимых взаимосвязей между исходными
признаками). Результаты оценки применяются для априорного выбора методов классификации, так как ограничением при­менения многих методов является выполнение условия независимости предикторных признаков, которые используются для построения мо­дели классификатора.
Для визуальной оценки различий между классами по выбранному количественному признаку строятся диаграммы размаха, которые поз­воляют сравнить основные числовые характеристики признака по
клас­сам (например, среднее, медиану, СКО, нижний и верхний квартили, размах). Диаграммы размаха помогают также в идентификации выбро­сов (аномалий) в данных, которые отображаются на графике в виде точек.
Ниже приведен код построения диаграмм размаха для четырех при-
знаков («Возраст», ВТ1, ВТ2, «Стаж»):
par(mfrow = c(2,2)) boxplot(Возраст~Класс, data=Train, col="blue") boxplot(ВТ1~Класс, data=Train, col="coral") boxplot(ВТ2~
Класс, data=Train, col="green")
boxplot(Стаж~Класс, data=Train, col="lightblue")
На рис. 8 и 9 представлены диаграммы размаха для всех количе-
ственных признаков, которые иллюстрируют изменение статистических
62
характеристик признака в зависимости от значения класса. На диа­грамме размаха положение центральной линии определяет значение ме­дианы, границы прямоугольника соответствуют нижнему и верхнему
квартилю, высота прямоугольника – интерквартильный размах (),
r
q
«усы» диаграммы расположены от верхней (нижней) границы прямо­угольника до наибольшего (наименьшего) значения, находящегося
в пределах 1, 5
r . Наблюдения за пределами «усов» могут быть аномаль-
q
ными выбросами. Наблюдаются визуально значимые различия в значе­ниях числовых характеристик признаков: ВТ1; ВТ2; «Стаж»; УОС; КВК; СВЗ по классам; сравнительно небольшая разница соответствует признакам «Возраст» и СС.
Рис. 8. Диаграммы размаха признаков («Возраст», ВТ1, ВТ2, «Стаж»)
63
Рис. 9. Диаграммы размаха признаков (УОС, КВК, СС, СВЗ)
Для аналитической проверки статистической значимости различий в значениях признаков по классам применяется однофакторный одно­мерный дисперсионный анализ (в случае нормальной распределенности признаков) либо его непараметрический аналог – критерий Краскела – Уоллиса. Код для проверки гипотезы о статистической незначимости различий средних значений признака (для примера взят признак «Воз­раст») по классам (однофакторный дисперсионный анализ
) следующий:
model<-aov(Возраст~Класс, data=Train)
summary(model)
В результате выдается расчетное значение критической статистики критерия (F-value) и p-value:
64
При заданном уровне значимости 0,05 гипотеза о статистической не­значимости отличий средних значений признака «Возраст» по классам не отвергается (p-value=0,244>0,05).
Для проверки гипотезы о равенстве распределений признака по классам (распределения с одинаковой медианой) используется крите­рий Краскела – Уоллиса:
kruskal.test(Возраст~Класс, data=Train)
В результате выдается расчетное значение критической статистики критерия (chi-squared) и p-value:
Гипотеза о статистической
незначимости отличий в распределении признака «Возраст» по классам не отвергается при уровне значимости 0,05 (p-value=0,093>0,05), как и в случае использования дисперсионного анализа.
В табл. 4 приведены результаты расчета критериев для всех количе­ственных признаков. Анализ табл. 4 позволяет сделать вывод о стати­стически значимых отличиях по классам в значениях всех признаков, кроме признака «Возраст
Результаты расчетов дисперсионного анализа и критерия
», при уровне значимости 0,05.
Таблица 4
Краскела – Уоллиса
Признак
Возраст 1,395 0,244 6,417 0,093 ВТ1 236,0 <0,0001 225,9 <0,0001 ВТ2 170,8 <0,0001 204,0 <0,0001 Стаж 412,2 <0,0001 257,5 <0,0001 УОС 697,7 <0,0001 275,3 <0,0001 КВК 259,0 <0,0001 226,9 <0,0001 СС 10,96 <0,0001 29,64 <0,0001 СВЗ 103,1 <0,0001 171,3 <0,0001
Дисперсионный анализ Критерий Краскела – Уоллиса
F-value p-value chi-squared p-value
65
Зависимая переменная «Класс» имеет порядковый тип, так как но­мер класса отражает степень квалификации IT-специалиста. Поэтому для исследования взаимосвязей между номером класса и значениями ко­личественных признаков применяется ранговый коэффициент корреля­ции Спирмена, также этот коэффициент позволяет оценить взаимосвязь между количественными и порядковыми признаками. При этом исполь­зуется понижение шкалы измерения
значения признака и количествен-
ный признак преобразуется к порядковому типу.
Функция для расчета коэффициента корреляции Спирмена следую­щая:
panel.cor <- function(x, y, digits = 2, prefix = "", cex.cor, ...)
{ par(usr = c(0, 1, 0, 1))
r <- (cor(x, y, method = "spearman"))
txt <- format(c(r, 0.123456789), digits=digits)[1]
txt <- paste(prefix, txt, sep = "")
text(0.5, 0.5, txt, cex = 1.3) }
Для визуальной оценки парной взаимосвязи между исследуемыми признаками можно построить двумерные диаграммы рассеяния. Следу­ющий программный код реализует построение матричного графика, в котором над главной диагональю строятся диаграммы рассеяния между
парой признаков, а под главной диагональю выводятся соответ-
ствующие оценки коэффициента корреляции Спирмена:
pairs(~Класс+УОС+КВК+СС+СВЗ, data=Train, pch = 21, bg=4,
lwd = 1, lower.panel = panel.cor)
На рис. 10 и 11 приведены матричные графики, анализ которых поз­воляет сделать вывод о сильных корреляционных взаимосвязях между зависимой переменной «Класс» и предикторными признаками, кроме признака «Возраст»: 0,038 (слабая связь) и признака СС (
соблюдение сроков): 0,29 – связь средней силы. Корреляционные взаимосвязи между некоторыми признаками также сильные; например, между вре­менем написания тестовых программ первого (ВТ1) и второго (ВТ2) типа коэффициент корреляции Спирмена равен 0,72, что свидетель­ствует о мультиколлинеарности исходных признаков.
66
Рис. 10. Матричный график («Класс», «Возраст»,
ВТ1, ВТ2, «Стаж»), функция pairs ()
Рис. 11. Матричный график («Класс», УОС,
КВК, СС, СВЗ), функция pairs ()
67
Разные варианты матричных графиков могут быть также постро­ены с помощью функции ggpairs() из библиотеки GGally. Код для по­строения матричных графиков между исследуемыми признаками сле­дующий:
install.packages("GGally")
install.packages("ggplot2")
library(GGally)
library(ggplot2)
data1<-Train[,c(11,1,2,3,4)]
data2<-Train[,c(11,5,6,7,8)] ggpairs(data1, columns = 1:5, aes(color = Класс,alpha = 0.5)) ggpairs(data2, columns = 1:5, aes(color = Класс,alpha = 0.5))
На рис. 12 и 13 приведены матричные графики, построенные с по­мощью функции ggpairs(). Преимущество использования функции ggpairs() по сравнению с базовой функцией pairs() заключается
в том, что построенный матричный график содержит сравнительно больше ин­формации о распределении и взаимосвязях между признаками. На мат­ричном графике отображена следующая информация:
графики плотности распределения вероятностей для количествен-
ных признаков для каждого класса и столбиковые диаграммы для каче­ственных признаков (главная диагональ);
диаграммы рассеяния между парами количественных признаков
с выделением цвета класса (под главной диагональю);
диаграммы размаха для каждого класса для количественных при-
знаков (первая строка);
гистограммы распределения количественных признаков по клас-
сам (первый столбец);
значения коэффициентов корреляции Пирсона с оценкой их ста-
тистической значимости для пар количественных признаков, рассчитан­ные по всем данным и с разделением по классам (выше главной диаго­нали).
68
Рис. 12. Матричный график («Класс», «Возраст», ВТ1, ВТ2, «Стаж»),
функция ggpairs()
Анализ графиков рис. 12 и 13 подтверждает выводы о силе взаимо­связи между исследуемыми признаками, которые были сделаны выше, и позволяет более детально проанализировать корреляционные взаимо­связи между признаками внутри классов. Например, между признаками УОС (условная оценка сложности) и СВЗ (скорость выполнения задач) наблюдается сильная корреляция (0,626) при расчете по всей выборке, но корреляционные
взаимосвязи слабые внутри классов. Следовательно,
69
можно сделать вывод о разном соотношении значений признаков по классам: для первого класса наблюдаются относительно низкие значе­ния признаков УОС и СВЗ; для второго и третьего классов – средние значения признаков УОС и СВЗ; для четвертого класса – высокие зна­чения рассматриваемых признаков. Однако внутри классов статистиче­ски значимых взаимосвязей между значениями признаков
УОС и СВЗ
не выявлено, за исключением третьего класса (0,251).
Рис. 13. Матричный график («Класс», УОС, КВК, СС, СВЗ), функция ggpairs()
70
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]