courses:data_analysis_and_interpretation:task4

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
courses:data_analysis_and_interpretation:task4 [2019/02/13 18:46]
andrey.suchkov [Порядок выполнения работы]
courses:data_analysis_and_interpretation:task4 [2022/12/10 09:08] (current)
Line 1: Line 1:
-====== Практическая работа №4: Изучение ​дискриминантного анализа ======+====== Практическая работа №4: Исследование методов кластер-анализа ======
 ===== Цель работы ===== ===== Цель работы =====
-ознакомиться с методами ​дискриминантного ​анализа на основе ​пакета Statistica.+Ознакомиться с методами кластер-анализа на основе ​языка R.
 ===== Основные теоретические положения ===== ===== Основные теоретические положения =====
-Дискриминантный анализ ​используется для ​принятия решения о том, какие переменные различают искриминируют) две ​или более возникающие совокупности (группы). Напримернекий исследователь ​в области ​образования может захотеть исследовать,​ какие переменные относят выпускника средней школы к одной из трех категорий: (1) поступающий ​в колледж, (2) поступающий в профессиональную школу ​или (3) отказывающийся от дальнейшего образования или ​профессиональной подготовки. Для этой цели ​исследователь может собрать данные ​о различных переменных, ​связанных с учащимися школы. После выпуска большинство учащихся естественно должно попасть в одну из названных ​категорий. Затем можно использовать ​Дискриминантный анализ для определения того, какие переменные дают наилучшее предсказание выбора учащимися дальнейшего пути.\\ +Термин ​кластерный анализ ​первые ​понятие ​введено математиком Р. Трионом, ​1939) в действительности включает ​в себя набор различных алгоритмов классификации. Общий ​вопрос, задаваемый исследователями во многих областяхсостоит в том, как организовать наблюдаемые данные в наглядные структуры, т.еразвернуть ​таксономии. Например, ​биологи ставят ​цель разбить животных на различные виды, чтобы содержательно описать различия между ​ними. В соответствии с современной ​системой, принятой в биологии, человек принадлежит к приматам, млекопитающим, амниотам, позвоночным и животнымЗаметьте, что в этой классификации, ​чем выше уровень агрегациитем меньше сходства между членами в соответствующем классе. Человек имеет больше ​сходства с другими приматами (т.ес обезьянами), ​чем с <<отдаленными>> ​членами семейства млекопитающих (напримерсобакамии т.д. 
-Медик может регистрировать ​различные переменные, относящиеся ​к состоянию больного, чтобы ​выяснить, какие переменные лучше предсказывают, что пациент, ​вероятно, выздоровел полностью (группа 1), частично (группа 2) или совсем ​не выздоровел (группа 3). Биолог может записать различные характеристики сходных ​типов (групп) цветов, чтобы затем провести анализ дискриминантной ​функции,​ наилучшим образом разделяющей типы ​или группы.\\ + 
-//​Функции классификации.// Функции классификации ​предназначены для ​определения тогок какой группе ​наиболее ​вероятно может быть ​отнесен каждый объектИмеется столько же функций классификации, ​сколько групп. Каждая функция позволяет вам для каждого образца и для каждой совокупности вычислить ​веса классификации по формуле+Фактическикластерный анализ является ​не столько обычным статистическим методом, сколько <<​набором>> ​различных алгоритмов <<распределения объектов по кластерам>>. Существует точка ​зрения, что в отличие от многих других статистических процедурметоды кластерного анализа ​используются в большинстве случаев тогда, когда ​вы не имеете каких-либо априорных гипотез относительно классов, но все еще находитесь в описательной стадии исследования. Следует пониматьчто кластерный анализ определяет <<наиболее возможно значимое решение>>. 
-$$ + 
-S_i = c_i + \sum_{j = 1}^mw_{ij}x_j. +//Деревья кластеризации.// Назначение алгоритма ​построения деревьев кластеризации заключается в постепенном объединении объектов в достаточно ​большие кластеры, используя ​меры расстояния и сходства между объектами. 
-$$ +На первом шаге каждый объект является ​кластером. При переходе к следующему шагу группы ​объектов объединяются в кластеры на основе меры расстояния и выбранного метода. На каждом следующем шаге процедура ​повторяется для наиболее «близких» друг ​к другу кластеров. 
-В этой формуле ​индекс $i$ обозначает ​соответствующую совокупность, ​а индекс $j$ обозначает переменную; $c_i$ являются константами для $i$-ой ​совокупности, $w_{ij}$ – веса для $j$-ой переменной ​при ​вычислении показателя классификации для $i$-ой совокупности;​ $x_j$ - наблюдаемое значение для ​соответствующего образца $j$-ой переменной. Величина $S_i$ является результатом показателя классификации. Переменные с наибольшими регрессионными коэффициентами вносят наибольший вклад в дискриминацию.\\ +Использующиеся ​меры расстояния между объектами
-Расстояние Махаланобиса является ​мерой расстояния между двумя точками в пространстве, определяемым двумя или более коррелированными переменными. Например,​ если имеются всего две некоррелированных ​переменные, то можно нанести ​точки (образцы) на стандартную диаграмму рассеяния. Расстояние Махаланобиса между ​точками будет в этом случае равно расстоянию Евклида, т.е. расстоянию, измеренному, например, ​рулеткой. Если имеются три некоррелированные переменные, ​то для определения расстояния вы можно по-прежнему ​использовать рулетку (на 3М диаграмме). При наличии ​более трех переменных вы не можете более представить расстояние на диаграмме. Также и в случае,​ когда ​переменные коррелированы, то оси на графике могут рассматриваться как неортогональные (они уже не направлены под прямыми углами друг к другу). В этом случае простое определение расстояния ​Евклида не подходит, в то время ​как расстояние Махаланобиса является адекватно определенным в случае наличия корреляций. Для расчёта ошибок классификации удобнее всего представить расстояние Махалонобиса, как симметричную матрицу с нулевой главной диагональю:​ +  * Евклидово расстояние: $d(x,​\,​y) ​\|\mathbf x + \mathbf y\| \sqrt{\sum_i(x_i - y_i)^2}$. 
-$$ R =  +  * Манхэттенское расстояние (расстояние ​городских кварталов): $d(x,\,y) = \sum_i|x_i - y_i|$
-\begin{pmatrix} +  * Расстояние Чебышева: $d(x,\,y) = \max|x_i - y_i|$. 
-0 & r_{12}^2 & \ldots & r_{1M}^2\\ +Использующиеся способы объединения кластеров: 
-r_{21}^2 & 0 & \ldots & r_{2M}^2\\ +  * Одиночная связь (метод ближайшего ​соседа)В этом методе расстояние между двумя кластерами ​определяется расстоянием между двумя наиболее близкими ​объектами (ближайшими соседями) в различных кластерах; 
-\vdots & \vdots & \ddots &​\vdots\\ +  * Полная связь (метод наиболее удаленных соседей). В этом методе расстояния между кластерами определяются наибольшим ​расстоянием ​между любыми двумя объектами в различных кластерах, то есть <<наиболее удаленными соседями>>. 
-r_{M1}^2 & r_{M2}^2 & \ldots & 0 +  Невзвешенное попарное среднее. В этом методе расстояние между двумя ​различными ​кластерами вычисляется как среднее расстояние между всеми ​парами объектов в них. 
-\end{pmatrix},​ +  * Метод Варда. Метод минимизирует сумму квадратов для любых двух (гипотетических) кластеров, которые могут быть сформированы на каждом шаге. 
-$$ +//Метод ​k-means (k-средних).// Предположим, уже имеются гипотезы относительно ​числа кластеров (по наблюдениям или по переменным). Можно указать системе образовать ровно три кластера так, чтобы они были настолько различнынасколько это возможно. Это именно тот тип задач, которые ​решает алгоритм метода //k//-meansВ общем случае метод //k//-means строит ​ровно //k// различных ​кластероврасположенных ​на возможно больших ​расстояниях друг ​от друга. 
-$r_{ij} = r_{ji}$, $r_{ij} = 0$ при $i = j$. Элементы матрицы можно найти как: +===== Постановка задачи ​===== 
-$$ +===== Порядок выполнения работы ​===== 
-r_{ij}^2 = (\mu_i - \mu_j)^T\Sigma^{-1}(\mu_i - \mu_j), +===== Содержание отчёта ​===== 
-$$ + 
-где $\mu_i$ и $\mu_j$ – вектора математических ожиданий для первого и второго ​класса соответственно,​ $\Sigma$ – ковариационная матрица. Вероятность ошибки ​можно определить следующим образом:​ +
-$$ +
-P(i \mid j) = \Phi\left(-\frac{r_{ij}}2\right) = 1 - \Phi\left(\frac{r_{ij}}2\right),​ +
-$$ +
-где $\Phi(\cdot)$ – функция ​ошибок.\\ +
-//Пошаговый анализ с включением.// В пошаговом анализе дискриминантных функций модель дискриминации ​строится по шагам. Точнее, на каждом шаге просматриваются все переменные ​и находится та из них, которая вносит наибольший ​вклад в различие ​между ​совокупностями. Эта переменная должна ​быть включена в модель на данном шаге, и происходит ​переход к следующему шагу.\\ +
-//Пошаговый анализ с исключением.//​ Можно также двигаться в обратном направлении, в этом случае все переменные будут сначала включены в модель,​ а затем на каждом шаге будут устраняться переменные, вносящие малый вклад в предсказания. Тогда в качестве результата успешного анализа можно сохранить только "важные"​ переменные в модели, то есть те переменные,​ чей вклад в дискриминацию больше остальных. Эта пошаговая ​процедура ​"​руководствуется" соответствующим значением $F$ для ​включения и соответствующим значением $F$ для исключения. Значение $F$ статистики для переменной ​указывает на ее статистическую значимость при дискриминации между ​совокупностями, то есть, она является мерой ​вклада переменной в предсказание членства в совокупности+
-===== Общая формулировка задачи ===== +
-  * Провести ​исследование ​по построению ​дискриминантных функции для имеющихся экспериментальных данных+
-  * Подготовить ​самостоятельно модельные примеры из многомерных нормальных векторов с заданными векторами математического ожидания ​и ковариационной матрицей. +
-  * Провести эксперименты по классификации на модельных примерах аналогично описанным вышеПровести теоретический ​расчет ошибок классификации для модельных примеров и сравнить их с результатамиполученными в Statistica. +
-==== Порядок выполнения работы ==== +
-=== 1. Построение дискриминантных функций === +
-  - В системе Statistica в панели Statistics ​(Анализ) → Multivariate Exploratory Techniques (Многомерный анализ) выбрать пункт Discriminant (Дискриминантный анализ). +
-  - Выбрать переменные Variables, указать номер группирующей переменной и независимых переменных+
-  - В появившемся окне появляется панель ​с единственной закладкой Quick (Быстрый). Выбрать Variables (Переменные), в первом окне в качестве группирующей переменной ​указать ​класс (как правилопоследняя переменная), во втором окне выбрать все ​остальные переменные. +
-  - Запустить дискриминантный анализ нажатием ​на клавишу ОК. В окне Discriminant Function Analysis (Результаты анализа дискриминантных функций) во вкладке Quick (Быстрый) нажать «Summary: Variables in Model» (Переменные ​в модели). Получены результаты дискриминантного анализа+
-  - Просмотреть результаты дискриминантного ​анализа в окне Discriminant Function Analysis (Результаты анализа дискриминантных функций) во вкладке Classification (Классификация):​ +
-     ​Unordered List ItemVariables in model (Переменные в модели);​ +
-     * Classification matrix (Матрица классификации);​ +
-     * Classification cases (Классификация ​наблюдений); +
-     * Classification functions (Функции классификации). +
-  - Сохранить результаты для ​отчета. +
-=== 2. Метод ​дискриминантного анализа с включением ​переменных === +
-  - Запустить ​дискриминантный анализ аналогично пункту 1, выбрать переменные для анализа. Указать опцию «Advanced option» (Дополнительные параметры). +
-  - В окне «Model Definition» (Определение модели) на вкладке «Quick» (Быстрый) выбрать метод «Forward stepwise» (Пошаговый с включением). На вкладке «Advanced» (Дополнительно) установить F – включения равным 4.0, а также Display results – At each step (Вывод результатов ​– На каждом шаге). +
-  - Нажать Next, тем самым перейдя к первому шагу.  +
-  - Выполнить все шаги, вывести таблицы из пункта 1 в отчет. +
-  - Сравнить результаты, полученные на последнем шаге ​с результатами из пункта 1+
-=== 3. Метод ​дискриминантного анализа с исключением переменных === +
-  - Выполнить действияописанные в пункте 2, со следующими изменениями:  +
-    * Выбрать метод «Backward stepwise» (Пошаговый ​с исключением). +
-    * На вкладке «Advanced» (Дополнительно) установить F-исключения ​равным 3.9. +
-  - Выполнить все шаги, вывести таблицы из пункта 1 в отчет. +
-  - Сравнить ​результаты,​ полученные на последнем шаге, с результатами из пп. 1 и 2. +
-=== 4. Разработка статистической ​модели данных === +
-  - Подготовить самостоятельно модельные примеры из многомерных ​нормальных векторов с заданными векторами математического ожидания и ковариационной матрицей. +
-  - Провести эксперименты по классификации на модельных примерах аналогично описанным выше. Провести теоретический расчет ошибок классификации для модельных примеров и сравнить их с результатами, полученными по программе Statistica. +
-== Задание ​на разработку статистических данных == +
-Модель представляет собой набор многомерных векторов $\vec x = (x_1,​\,​\dots,​\ x_m)$ , $m = 2,​\,​3$, ​имеющих заданные вектора математических ожиданий $\mu_i$, $i = 1..M$ и заданные ​ковариационные матрицы (одинаковые по классам),​ которые имеют вид $\Sigma = \mathop{\mathrm{diag}}\nolimits\{\sigma_1,​\,​\dots,​\,​\sigma_m\}$Компоненты векторов имеют нормальное распределение. Количество ​классов равно $M = 2,\,3$. +
-^  № варианта  ^  Размерность $m$  ^  Объём выборки $N$ по классу  ^  Вектора $\mu_i$ ​ ^  Значения ​$\sigma_i$ ​ ^  Количество классов $M$  ^ +
-|  1  |  2  |  100  |  $\mu_1 = (1,\,2)^T \\ \mu_2 = (1,​\,​-2)^T$ ​ |  $\sigma_1 = 1 \\ \sigma_2 = 1$  |  2  | +
-|  2  |  2  |  300  |  $\mu_1 = (1.5,\,3)^T \\ \mu_2 = (3,\,4)^T \\ \mu_3 = (-1.5,​\,​-1)^T$ ​ |  $\sigma_1 = 1 \\ \sigma_2 = 1$  |  3  | +
-|  3  |  3  |  150  |  $\mu_1 ​(1,​\,​1,​\,​1)^T \\ \mu_2 (2,​\,​2,​\,​2)^T$ ​ |  $\sigma_1 ​0.5 \\ \sigma_2 ​1 \\ \sigma_3 ​0.5$  |  2  | +
-|  4  |  3  |  150  |  $\mu_1 ​(1,​\,​1,​\,​1)^T \\ \mu_2 (2.5,​\,​2.5,​\,​2.5)^T \\ \mu_3 (4,​\,​4,​\,​4)^T$ ​ |  $\sigma_1 ​0.5 \\ \sigma_2 ​1 \\ \sigma_3 = 2$  |  3  | +
-|  5  |  2  |  200  |  $\mu_1 ​(-0.5,​\,​2)^T \\ \mu_2 (-1,​\,​4)^T$ ​ |  $\sigma_1 ​1.5 \\ \sigma_2 ​1$  |  2  | +
-|  6  |  2  |  250  |  $\mu_1 ​(1,\,1)^T \\ \mu_2 (4,\,2.5)^T \\ \mu_3 (-1,​\,​3)^T$ ​ |  $\sigma_1 ​1.3 \\ \sigma_2 ​0.8$  |  3  | +
-|  7  |  3  |  100  |  $\mu_1 ​(0,​\,​0,​\,​0)^T \\ \mu_2 = (3,​\,​3,​\,​3)^T$ ​ |  $\sigma_1 = 1.5 \\ \sigma_2 = 1 \\ \sigma_3 = 2$  |  2  | +
-|  8  |  3  |  150  |  $\mu_1 ​(4,​\,​4.5,​\,​3.7)^T \\ \mu_2 (5.2,​\,​4.9,​\,​4.1)^T \\ \mu_3 (2.2,​\,​3.9,​\,​3.8)^T$ ​ |  $\sigma_1 ​0.3 \\ \sigma_2 ​0.5 \\ \sigma_3 ​0.6$  |  3  | +
-|  9  |  2  |  250  |  $\mu_1 ​(1.5,\,1)^T \\ \mu_2 (3,​\,​2.7)^T$ ​ |  $\sigma_1 ​1 \\ \sigma_2 ​1.2$  |  2  | +
-|  10  |  2  |  180  |  $\mu_1 = (-0.9,​\,​2.7)^T \\ \mu_2 = (0,\,-5)^T \\ \mu_3 = (-1,​\,​-1)^T$ ​ |  $\sigma_1 = 0.25 \\ \sigma_2 = 2$  |  3  | +
-|  11  |  3  |  200  |  $\mu_1 = (-1,​\,​2,​\,​-3)^T \\ \mu_2 = (2,​\,​-1,​\,​0)^T$ ​ |  $\sigma_1 = 0.75 \\ \sigma_2 = 0.3 \\ \sigma_3 = 1.6$  |  2  | +
-|  12  |  3  |  200  |  $\mu_1 = (-1,​\,​-1,​\,​-1)^T \\ \mu_2 = (0,​\,​0,​\,​0)^T \\ \mu_3 = (2,​\,​2,​\,​2)^T$ ​ |  $\sigma_1 = 1 \\ \sigma_2 = 0.5 \\ \sigma_3 = 1$  |  3  |+
  
courses/data_analysis_and_interpretation/task4.1550083587.txt.gz · Last modified: 2022/12/10 09:08 (external edit)