Понятия, модели и методы машинного обучения
Предиктивный анализ. Процесс создания модели в машинном обучении. Обучение с учителем (регрессия, классификация). Обучение без учителя (кластеризация). Метрика качества моделей. Валидация моделей.
Лыкошин Александр
2022-24
## Регрессия (Regression)
- В случае данного метода выбирается количественная переменная – предпочтительный результат анализа.
- Пример: цена покупки компьютера основывается на следующих предикторах:
- объем оперативной памяти,
- объем видеопамяти,
- частота процессора и другие.
- Связь между предполагаемой ценой и предикторными переменными – основа предиктивной модели.
- Также необходимо задать каждому из предикторов свой вес – коэффициент влияния на результат
#### Регрессия
- В машинном обучении и анализе данных основными являются такие типы регрессии, как:
- линейная,
- полиномиальная регрессии,
- регрессионные деревья.
#### Регрессия
- В теории вероятности и математической статистике это зависимость математического ожидания случайной величины
от одной или нескольких других случайных величин.
- В отличие от чисто функциональной зависимости `$y = f(x)$`, где каждому значению независимой переменной
`$x$`
соответствует единственное значение зависимой переменной `$y$`, регрессионная зависимость предполагает, что
каждому значению переменной `$x$` могут соответствовать различные значения `$y$`, обусловленные случайной
природой зависимости.
- Если некоторому значению величины `$ x_{i} $` соответствует набор значений величин
`$$ \bar{y}_i = \frac {y_{i1} + y_{i2} + \dots + y_{in}} {n_i}\ $$`
от `$ x_{i} $` и является регрессией в статистическом понимании данного термина.
#### Регрессия
- Типичным примером регрессионной зависимости может быть зависимость между ростом и весом человека.
- В большинстве случае вес пропорционален росту, но фактически большой рост не всегда означает большой вес.
Иными словами, у роста, например, 175 см. может наблюдаться несколько значений веса, скажем 69, 78 и 86 кг.
Тогда зависимость между ростом и средним значением указанных весов будет являться регрессионной.
#### Регрессия
- Изучение регрессии в теории вероятностей основано на том, что случайные величины `$X$` и `$Y$`, имеющие
совместное распределение вероятностей, связаны статистической зависимостью: при каждом фиксированном значении
`$X = x$`, величина `$Y$` является случайной величиной с определённым (зависящим от значения `$x$`) условным
распределением вероятностей.
#### Регрессия
- Регрессия величины `$Y$` по величине `$X$` определяется условным математическим ожиданием `$Y$`, вычисленным
при условии, что `$ X = x: E(Y|x) = u(x) $`
- Уравнение `$y = u(x)$` называется уравнением регрессии, а соответствующий график — линией регрессии `$Y$` по
`$X$`. Точность, с которой уравнение `$Y$` по `$X$` отражает изменение `$Y$` в среднем при изменении `$x$`,
измеряется условной дисперсией `$D$` величины `$Y$`, вычисленной для каждого значения `$X = x: D(Y|x)=D(x)$`
#### Регрессия
- Если `$ D(x) = 0 $` при всех значениях `$x$`, то можно достоверно утверждать, что `$Y$` и `$X$` связаны
строгой функциональной зависимостью `$Y = u(X)$`.
- Если `$D(x) = 0$` при всех значениях `$x$` и `$u(x)$` не зависит от `$x$`, то говорят, что регрессионная
зависимость `$Y$` по `$X$` отсутствует.
- Линии регрессии обладают следующим замечательным свойством: среди всех действительных функций `$f(X)$`
минимум
математического ожидания `$E[Y — f(X)]^2$` достигается для функции `$f(x) = u(X)$`.
- Это означает, что регрессия `$Y$` по `$X$` даёт наилучшее в указанном смысле представление величины `$Y$` по
величине `$X$`. Это свойство позволяет использовать регрессию для предсказания величины `Y` по `X`.
- Иными словами, если значение `$Y$` непосредственно не наблюдается и эксперимент позволяет регистрировать
только `$X$`, то в качестве прогнозируемого значения `Y` можно использовать величину `Y = u(X)`.
#### Регрессия
- Наиболее простым является случай, когда регрессионная зависимость `$Y$` по `$X$` линейна, т.е. `$ E(Y|x) =
b_0
+ b_1x $`, где `$b_{0}$` и `$b_{1}$` – коэффициенты регрессии.
- На практике обычно коэффициенты регрессии в уравнении `$y = u(x)$` неизвестны, и их оценивают по наблюдаемым
данным.
- Регрессия широко используется в аналитических технологиях при решении различных бизнес-задач
- прогнозирование (продаж, курсов валют и акций),
- оценивание различных бизнес-показателей по наблюдаемым значениям других показателей (скоринг),
- выявление зависимостей между показателями и т.д.
#### Регрессия
- **Логистическая регрессия** позволяет оценивать вероятность того, что событие наступит для конкретного
объекта
испытания (больной/здоровый, возврат кредита/дефолт и т.д.). Логистическая регрессия является традиционным
статистическим инструментом для расчета коэффициентов (баллов) скоринговой карты на основе накопленной
кредитной
истории.
- **Линейная регрессия** может использоваться для решения различных задач, например, прогнозирования и
численного предсказания.
#### Линия регрессии (Regression line)
- Линия регрессии представляет собой график уравнения регрессии, которое в общем виде может быть записано:
`$ y(x_1,x_2,...,x_n)=E(Y|X_1=x_1,X_2=x_2,...,X_n=x_n) $`
где
- `$Y$` — зависимая переменная,
- `$X1$`, `$X2$`, ..., `$Xn$` — независимые переменные, а функция `$y(x1,x2,...,xn)$` называется регрессией
`$Y$` по `$X$`, и её график задаёт линию регрессии.
![linear-regression.svg](./img/linear-regression.svg)
#### Линия регрессии (Regression line)
- Наиболее простым является случай простой линейной регрессии: `$ y = ax + b $`, где `$a$` и `$b$` – параметры
линейной модели, `$x$` — независимая переменная.
Пример на Gooogle Colab: https://colab.research.google.com/drive/11eypo_DU47OTdPe6NxAYBjECV-lEL64Q
## Классификация
- Второй большой категорией контролируемого обучения является классификация.
- Классификация позволяет разбивать данные на несколько категорий, например, низкая, средняя или высокая
температура на улице.
- В этом случае, анализ происходит не только по предиктивным переменным, но и по уже известным выходным
данным.
- Исследуются различные комбинации предикторов, находится наиболее влияющие на выходной результат – данный
набор
данных является обучающей выборкой.
- Данные наблюдения далее переносятся на тестовый набор данных, по которым уже и происходит непосредственно
классификация
#### Методы классификации:
- логистическая регрессия,
- деревья классификации,
- поддерживающие векторные машины,
- случайные леса,
- k-ближайшие соседи,
- наивный байесовский классификатор.
## Регрессионные деревья
- Это один из двух подтипов деревьев решений, при котором возвращается результат, являющийся вещественным
числом.
- Дерево состоит из «листьев» (значений целевой функции) и «веток» (атрибуты зависимости). Спуск по дереву
происходит по определенному алгоритму. Существует несколько алгоритмов, которые широко применяются в
анализе данных, такие как CART, ID3 и его модификации.
##### Регрессионные деревья (1)
- Все эти алгоритмы работают в одном ключе:
- Данные разделяются на две группы, схожие элементы оказываются в одной из групп.
- Процесс спуска продолжается для каждой группы.
- По мере разделения, в каждом листе остается все меньше и меньше данных, которые постепенно становятся более
однородными.
##### Регрессионные деревья (2)
- Данный метод разбиения носит название рекурсивного деления, и, в общем случае, состоит из 2 шагов:
1. Постановка бинарного вопроса, который наиболее подходит для последующего разделения элементов на однородные
группы;
2. Повторение шага №1 до момента достижения критерия остановки.
- Критерии остановки могут быть различными:
- остановка при превышении «лимита роста» (в случае задания его при постановке задачи);
- остановка, если все данные в листе присвоены одному из классов;
- дальнейшие бинарные вопросы не улучшают однородность данных.
- Так как регрессионные деревья – это деревья решений, они имеют следующие недостатки:
- нестабильность при изменении изначальных данных (добавление новых данных влияет на вид всего дерева –
восприимчивость к переобучению),
- неточность (выбор лучшего бинарного вопроса не всегда приводит к точному прогнозированию).
## Логистическая регрессия
- В данном методе выходной параметр – вероятность события, учитывающая множество входных параметров.
- В случае логистической регрессии возникает следующая проблема:
- выходной параметр должен находится в промежутке от 0 до 1, о чем модель не знает.
- необходимо ввести ограничения на выходную переменную. Для этого используется уравнение регрессии
(_логит_-преобразование).
- При расчете коэффициентов применяются различные градиентные методы, например
- метод сопряженных градиентов,
- методы переменной метрики.
- Основная идея логистической регрессии
- Схожа с задачей линейной регрессии
– разделение исходного пространства линейной границей на две части.
- Данная граница называется линейным дискриминантом.
#### Логистическая регрессия
- В математической статистике логистическая регрессия (или _логит_-регрессия) - статистическая модель,
использующая логистическую функцию для моделирования зависимости выходной переменной от набора входных в
случае,
когда первая является **бинарной**.
- Разновидность множественной регрессии
- входные и выходная переменные непрерывны.
- выходная переменная принимает только два значения.
- многие задачи могут быть решены с помощью бинарной классификации.
- Например, вероятность наступления (или не наступления) некоторого события:
- пациент болен (здоров), заемщик вернул кредит (допустил просрочку) и т.д.
- Благодаря этому логистическую регрессию можно рассматривать как мощный инструмент поддержки принятия
решений.
#### Логистическая регрессия
- Регрессионные модели могут быть записаны в виде формулы:
`$$ y= F(x_1,\,x_2,\,\dots,\,x_n) $$`
- Например, если рассматривается исход по займу, задается переменная `$y$` со значениями 1 и 0, где
- 1 означает, что соответствующий заемщик расплатился по кредиту,
- 0 — что имел место дефолт.
#### Логистическая регрессия
- Проблема: множественная регрессия не «знает», что переменная отклика бинарная по своей природе.
- Это неизбежно приведет к модели с предсказываемыми значениями большими 1 и меньшими 0. Но такие значения
вообще не допустимы для первоначальной задачи.
- Таким образом, множественная регрессия просто игнорирует ограничения на диапазон значений для `$y$`.
#### Логистическая регрессия
- Для решения проблемы задача регрессии может быть сформулирована иначе: вместо предсказания бинарной
переменной
мы предсказываем непрерывную переменную со значениями на отрезке [0,1] при любых значениях независимых
переменных.
- Это достигается применением следующего регрессионного уравнения (логит-преобразование):
`$$ p = \frac{1}{1+\mbox e^{-y}} $$`
где
- `$p$` — вероятность того, что произойдет интересующее событие;
- `$e$` — основание натуральных логарифмов 2,71…;
- `$y$` — стандартное уравнение регрессии.
#### Логистическая регрессия
- Зависимость, связывающая вероятность события и величину `$y$`, показана на графике:
![logistic-regression.svg](./img/logistic-regression.svg)
- Преобразование вида:
`$$ {P}' = \log_e \Bigl(\frac{P}{1-P}\Bigr) $$`
- называют логистическим, или логит-преобразованием.
#### Логистическая регрессия
- Существует несколько способов нахождения коэффициентов логистической регрессии. На практике часто используют
метод максимального правдоподобия. Он применяется в статистике для получения оценок параметров генеральной
совокупности по выборочным данным.
- Логистическая регрессия позволяет оценивать вероятность того, что событие наступит для конкретного объекта
испытания (больной/здоровый, возврат кредита/дефолт и т.д.).
- Логистическая регрессия является традиционным статистическим инструментом для расчета коэффициентов (баллов)
скоринговой карты (пример: https://wiki.loginom.ru/articles/scorecard.html) на основе накопленной кредитной
истории.
- Диагностика заболеваний и оценка кредитоспособности физических лиц (примеры:
https://loginom.ru/blog/logis-medic-scoring).
## Деревья классификации
- Аналогичны регрессионным деревьям, но на выходе возвращают результат, являющийся символьным (принадлежность
к
определенному классу).
- Классификационные деревья имеют те же недостатки:
- нестабильность при изменении изначальных данных (добавление новых данных влияет на вид всего дерева –
восприимчивость к переобучению),
- неточность (выбор лучшего бинарного вопроса не всегда приводит к точному прогнозированию).
- Для того, чтобы обойти эти ограничения при задачах классификации,
- можно пренебречь тем, что следует использовать лучшее разбиение данных.
- Возможно использование нескольких вариантов деревьев для получения более точных и постоянных результатов –
комбинирование прогнозов.
- Метод, использующийся при данной постановке задачи, носит название случайного леса.
## Поддерживающая векторная машина
- В машинном обучении также известен такой метод, как поддерживающая векторная машина (машина опорных векторов
–
SVM). В литературе также можно встретить следующее название: классификатор с максимальным зазором.
- Данный метод позволяет реализовать бинарную классификацию, то есть разделение входных векторов на две
составляющие (да-нет, положительный-отрицательный и другие).
- Также, как и в случае всех алгоритмов классификации, присутствует обучающая и тестовая выборка.
- При обучении находятся значения, лежащие на границе подмножеств, и уже по этим значениям строится граница
классификации. Эти значения называются опорными векторами.
#### Поддерживающая векторная машина
- Поддерживающая векторная машина находит гиперплоскость разделения, которая обеспечивает максимальный зазор
между значениями, находящихся в разных классах.
- Для этого изначальный вектор переносится в пространство большей размерности – при помощи функции ядра.
- В своей основе поддерживающая векторная машина обеспечивает линейную классификацию.
- Для решения задачи нелинейной классификации требуется использовать нелинейные ядра, например:
- однородный полином,
- неоднородный полином,
- гауссовскую функцию радиального базиса.
### Случайный лес
- Заключается в построении некоторого количества деревьев решений, называемого ансамблем.
- Полное определение ансамбля – прогностическая модель, полученная при помощи комбинирования предсказания от
других моделей.
- Модели в этом случае должны быть независимы друг от друга, взаимно не коррелировать.
- Это позволяет обойти те ограничения, которым подвержены деревья решений (регрессионные деревья и деревья
классификации) – нестабильность и неточность.
- Бинарные вопросы в случае случайного леса выбираются для каждого из деревьев случайным образом.
- Для этого используется такое понятие, как бэггинг.
### Случайный лес - бэггинг
- При бэггинге есть возможность построения огромного количества деревьев, которые минимально коррелируют между
собой. При этом ограничивается набор предикторов для каждого дерева – это позволяет минимизировать проблему
переобучения.
- Точность и масштабируемость модели зависит от количества деревьев решений.
- Однако, в отличие от деревьев решений, случайный лес не так легко интерпретируется.
- Например, невозможно показать, что определенное событие состоится в определенное время – известно только,
что
это заключение большинства деревьев, включенных в лес.
- Недостаток ясности не позволяет применять данную модель в таких областях, как, например, медицина.
- Эффективность случайных лесов применима в ситуациях, когда необходима точность, а не интерпретируемость.
### K-ближайшие соседи
- Можно использовать один из простейших методов машинного обучения – k-ближайшие соседи (также известный, как
k-NN).
- При применении данного метода, значения относят к тому из классов, к которому относится большинство из k его
соседних значений.
- Например, если k = 5, значение сравнивается с 5 своими ближайшими объектами-значениями.
#### K-ближайшие соседи
- При обучении метод запоминает признаки (которые являются векторами) и те классы, которым принадлежат
объекты.
- Когда дело доходит до реальных данных (также называемыми наблюдениями) с неизвестными классами, считается
расстояние между вектором наблюдения и уже известными векторами.
- После этих вычислений происходит выборка k ближайших векторов и наблюдение записывается в класс,
принадлежащий
большинству среди них.
- Данный метод также можно использовать и для задач регрессии, в этом случае наблюдениям будет присваиваться
среднее значение ближайших объектов.
#### K-ближайшие соседи
- При использовании данного метода возникают основные проблемы:
- выбор числа соседей, отсев выбросов, сверхбольшие выборки, выбор метрики.
- Главный параметр для данного метода – выбор числа k.
- С одной стороны, чем больше это число, тем информация достовернее, однако, границы между классами становятся
все более размытыми.
- При крайних случаях, когда это число равно 1 или количеству всей выборки, классификация соответственно
неустойчива к шумовым выбросам, либо, наоборот, слишком устойчива и становится константой.
- Хороший результат можно обеспечить при помощи эвристических алгоритмов для выбора числа, к примеру,
перекрестная проверка (cross-validation).
#### K-ближайшие соседи
Среди объектов обучения можно выделить следующие:
- эталоны – очевидные объекты для какого-либо из классов;
- периферийные – окруженные объектами класса, к которому они относятся: удаление их из выборки не отражается
на
качестве классификации;
- шумовые выбросы – неверно классифицированные объекты: удаление их из выборки повышает качество
классификации.
#### K-ближайшие соседи
Также, удаление периферийных объектов и шумовых выбросов естественно сокращает объем изначальной выборки, что
позволяет уменьшить время для обработки данных. Для выбора же эталонов возможно использование такого
алгоритма,
как STOLP.
- В случае сверхбольших выборок (для данного метода более 1000)
- выборка либо прореживается путем удаления неинформативных данных, как описано выше,
- либо возможно применение специальных структур данных и индексов, при которых возможен ускоренный поиск
соседей
- пример: kd-деревья.
#### K-ближайшие соседи
- Самой сложной задачей является проблема выбора метрики (функции близости). При применении метода ближайших
соседей редко бывает изначально известна функция расстояния.
- Например, для числовых данных чаще всего используется Евклидово расстояние.
- В основном, проблема решается выбором наиболее информативных признаков, которое создает множество разных
наборов, для каждого строится своя функция близости и потом методом голосования выбирается одна.
## Наивный байесовский классификатор
- Наивный байесовский классификатор является одним из наиболее простых классификаторов, использующихся в
интеллектуальном анализе данных.
- Основан на теореме Байеса, в которой присутствуют строгие (наивные) предположения независимости.
- Примеры (Google Colab):
- https://colab.research.google.com/drive/1E32AFd-lp5m-SLDahjnz9P8I7fD7ma3N
- https://colab.research.google.com/drive/1hwCRmoiAcNg-Re5yuGh-Eco2DsVRamV1
#### Наивный байесовский классификатор
- В целом, основной задачей при классификации является восстановление плотностей (функций правдоподобия для
каждого класса).
- Существует несколько подходов:
- параметрическое восстановление (предполагается, что плотности – гауссовские),
- непараметрическое восстановление, разделение
- смеси распределений.
#### Наивный байесовский классификатор
- Подход в случае наивного классификатора основывается на том, что плотности распределения для классов уже
известны.
- Алгоритм считается оптимальным из-за минимальной вероятности ошибок.
- Для наивного классификатора существует дополнительное предположение:
- объекты описаны комплексом независимых признаков.
- Независимость признаков ведет к упрощению задачи – оценка нескольких n одномерных плотностей проще, чем
оценка
одной n-мерной.
- Представление классификатора может быть как параметрическим, так и не параметрическим – все зависит от
метода
восстановления одномерных плотностей.
# Неконтролируемое обучение
## Неконтролируемое обучение
- В неконтролируемом обучении главной задачей является нахождение закономерностей (выводов) в исходных данных.
- Для этого используется такой широкий спектр методов, как кластерный анализ.
- Используя кластеризацию, возможно нахождение взаимосвязи между переменными (наблюдениями). При всем этом
выходных параметров, которые являются гипотетическими, при анализе нет.
- Именно поэтому задача кластеризации отличается от задач классификации – она пытается создать несколько групп
данных по только имеющимся входным переменным.
- Объекты каждой из групп должны быть однородными по какому-либо из признаков и отличаться от других групп
(кластеров).
## Неконтролируемое обучение
- Существует несколько типов кластеризации, широко применяемых в машинном обучении и интеллектуальном анализе
данных:
- иерархическая кластеризация,
- кластеризация методом k-средних,
- анализ основных компонентов.
Также стоит упомянуть о методах кластеризации и ранжирования, используемых в теории графов.
## Иерархическая кластеризация
- Иерархическая кластеризация – комплекс алгоритмов кластеризации, которые создают иерархию вложений
(разбиений)
исходного набора данных.
- Также в литературе можно встретить такое название иерархических алгоритмов, как алгоритмы таксономии.
- При визуализации кластерного разбиения данных используются дендрограммы – древовидные структуры, строящиеся
по
матрицам мер близости между кластерами.
- В каждом узле дерева расположены подмножества начальной выборки, на каждом из уровней количество объектов
также равно количеству объектов в изначальном наборе.
## Иерархическая кластеризация
- В общем случае алгоритм иерархической кластеризации описывается так:
- в отличие от деревьев решений, дерево кластеризации строится, начиная с листьев и заканчивая корнем.
- Изначально каждый элемент – это отдельный кластер.
- По мере работы алгоритма на каждой итерации происходит объединение двух кластеров, находящихся ближе всего
друг к другу.
- Процесс продолжается, пока не будет получено определенное количество кластеров.
#### Иерархическая кластеризация
- Для объединения кластеров необходимо вычислять расстояние между ними. На начальном этапе кластеризации
используется выбранная мера расстояния. Возможны следующие меры:
- евклидово расстояние – геометрическое расстояние в пространстве, общий тип для большинства задач;
- квадрат евклидова расстояния – используется для возможности установить больший вес наиболее отдаленным
объектам;
- расстояние городских кварталов (манхэттэнское расстояние) – средняя разность по координатам, результаты
схожи
с евклидовым расстоянием, но более устойчиво к выбросам;
- расстояние Чебышева – используется для кластеризации объектов, отличающихся по только одной из характеристик
(координате);
- степенное расстояние – используется для изменения веса, который относится к отличающейся характеристике
объекта;
- процент несогласия – используется в случае категориальных данных.
#### Иерархическая кластеризация
- На следующих же шагах уже требуются правила объединения кластеров с несколькими объектами.
- метод одиночной связи (метод ближайшего соседа) – рассматривается каждое значение кластера и ищется
ближайшее
значение из другого кластера;
- метод полной связи (метод дальнего соседа)
- противоположность метода ближайшего соседа
- берется максимальное расстояние между значениями двух кластеров;
- метод средней связи – берется среднее расстояние между значениями;
- центроидный метод – расстояние равно расстоянию между центрами кластеров;
- метод Уорда – рассматривается каждая пара кластеров и вычисляется дисперсия при их объединении, минимальная
дисперсия является расстоянием.
### Кластеризация методом k-средних
- Самым известным неиерархическим алгоритмом кластеризации является метод k-средних.
- При его использовании пространство данных разбивается на определяемое заранее количество k кластеров.
### Кластеризация методом k-средних
- Алгоритм в общем виде описывается следующим образом:
1. Определяется число k – количество кластеров;
2. В исходном наборе данных выбирается количество объектов, равное k. Данные объекты являются изначальными
центрами кластеров.
3. Для каждого из объектов выбирается наиболее близкий центр. Особенностью метода является постоянная мера
расстояния – евклидово расстояние. Образуются начальные кластеры.
4. Вычисляются центры тяжести для каждого кластеров, также называемые центроидами.
- Центроид представляет собой вектор средних значений признаков для всех объектов в кластере.
5. Центр смещается в центроид и становится новым центром кластера.
6. Шаги №3 и №4 повторяются до момента остановки.
### Кластеризация методом k-средних
- Итеративный процесс используется для изменения границ кластеров и смещения центров. Расстояние между
кластерами увеличивается, а расстояние между элементами внутри кластера постепенно уменьшается.
- Момент остановки:
- когда в каждом кластере остаются одни и те же объекты.
- также свидетельствует неизменность центроидов и границ кластеров.
- Для практических задач стабилизация кластеров происходит за 10-20 итераций.
- Примеры (Google Colab): [[1]](https://colab.research.google.com/drive/1vrw5WRs6WRKKjzvdTfd4BVmYK0se6c-t) и
[[2]](https://colab.research.google.com/drive/1QKp-Oct7f6iUDsBHGDCY4muqmnPMeVGB)
### Кластеризация методом k-средних
- Главные преимущества метода – скорость работы и простота реализации.
- Главным недостатком же является неопределенность в задании количества кластеров для начала работы алгоритма.
- Также возможны ситуации, когда объект находится посередине 2 центров, что может привести к постоянному
перемещению объекта из одного кластера в другой, так как кластеры должны быть цельными и объект не может быть
включен в несколько кластеров одновременно.
- Одним из способов определения оптимального числа k может быть использование графика осыпи (графика Кеттела).
- Он показывает прямую зависимость внутрикластерного разнообразия от числа k.
- Острый изгиб, называемый изломом, предлагает оптимальное количество кластеров.
## Анализ основных компонентов
- Анализ основных компонентов (также можно встретить название метод главных компонент - PCA) – метод
нахождения
главных переменных (основных компонентов), которые разделяют исходную выборку определенным оптимальным
способом.
- Эти переменные предполагают наибольший разброс для данных. Обычно переменные для разделения представлены в
различных единицах. Для получения комбинаций необходимо провести их стандартизацию.
- Стандартизация – процесс представления каждой переменной в процентилях, которые, в свою очередь,
конвертируют
переменные в общую (единую) шкалу. Весь этот процесс позволяет проводить вместо анализа, например, по четырем
различным переменным, анализ по меньшему количеству скомбинированных высококоррелирующих переменных. В связи с
этим, анализ основных компонентов относится к методам уменьшения размерности.
## Анализ основных компонентов
- Выбор количества компонент производится схожим образом, как и в кластеризации методом k-средних. Количество
определяется графиком осыпи, оптимальное число соответствует положению излома.
- Метод главных компонент, несмотря на свою простоту в анализе данных с несколькими переменными, имеет
некоторые
ограничения. Одно из них – максимизация распределения. Метод допускает, что наиболее полезными являются
измерения, дающие больший разброс, что при постановке разных задач не всегда так. Известным примером,
показывающим это ограничение, является подсчет блинов в стопке. Если стопка невысокая, метод ошибочно
предположит, что главным компонентом будет диаметр блина из-за нахождения в этом измерении большего разброса.
Основная трудность метода – интерпретация компонентов. Необходимы предварительные знания о категориях
переменных. Это помогает объяснить, почему именно эти переменные скомбинированы.
## Кластеризация и ранжирование графов
- Также для кластеризации возможно использование теории графов. Например, для социальной сети из нескольких
пользователей можно построить графовое представление, состоящее из узлов (собственно пользователей сети) и
ребер
(отношений пользователей). Ребра могут иметь свой определенный вес, который показывает силу отношений. Кроме
пользователей, графы могут использоваться и для построения схем между другими сущностями, если они связаны
каким-либо образом между собой.
- Для визуализации таких графов отношений используется силовой алгоритм – узлы, которые не связаны друг с
другом, отталкиваются друг от друга, а связанные – притягиваются, учитывая силу связи (степень близости).
- Получившийся граф можно прокластеризовать различными методами.
- Наиболее известным является _лувенский_ метод. Данный метод позволяет подобрать разные конфигурации
кластеров
для решения следующих задач:
- максимизация количества и силы связей между узлами для одного кластера;
- минимизация связей между узлами разных кластеров.
- Степень удовлетворения вышеупомянутым условиям называется _модулярностью_. Чем выше _модулярность_, тем
больше
вероятность того, что кластеры построены наиболее оптимально.
- Для получения оптимальной конфигурации метод следует следующему алгоритму:
1. Каждый узел рассматривается как отдельный кластер. На этом этапе количество узлов равно количеству
кластеров.
2. Меняется кластерное членство узла, если это улучшает модулярность. В противном случае узел остается в этом
же
кластере. Процесс повторяется для каждого из узлов, пока изменения не закончатся.
3. Строится грубая версия, в ней кластеры, полученные на 2 шаге, представляются отдельными узлами. Также
происходит объединение предыдущих межкластерных отношений в утолщенные ребра, соответствуя их весу.
4. Повторений шагов 2 и 3 до окончания изменений членства и размера связей.
- Результатом является выделение наиболее значимых кластеров.
- Преимущества
- Простота реализации и эффективностью
- Ограничения:
- В ходе слияния значимые, но небольшие по размеру кластеры могут быть поглощены.
- Для решения этой проблемы возможно использование промежуточной проверки идентифицированных кластеров.
- Также процесс принятия решения, какая конфигурация является оптимальной, может быть достаточно трудоемким.
- Если существует несколько решений с одинаково высокой модулярностью, необходима дополнительная информация.
## Ранжирование
- Помимо кластеризации для анализа графов используется ранжирование – нахождение ведущих узлов, вокруг которых
соответственно формируются кластеры.
- Одним из алгоритмов, который используется для данных задач, является алгоритм PageRank. PageRank изначально
использовался для ранжирования веб-сайтов и значения для каждого из них определялось тремя факторами: число,
сила и источник ссылок.
- Алгоритм достаточно прост в своем использовании, но главным недостатком является необъективность в отношении
старых узлов. В связи с этим, необходимо постоянное обновление по мере добавления новых ссылок.
## Метрики моделей
Метрики необходимы для оценки модели и сравнения её с другими
### Бинарная классификация
В бинарной классификации данные поделены на два класса. Их метки принято обозначать как «+» и «-». Возможны
следующие исходы:
- истинно положительные (TP, True Positive),
- истинно отрицательные (TN, True Negative),
- ложно положительные (FP, False Positive)
- ложно отрицательные (FN, False Negative).
### Метрики - Бинарная классификация - Accuracy
Показывает количество правильно проставленных меток класса (истинно положительных и истинно отрицательных) от
общего количества данных
`$ Accuracy = \frac { TP+TN } { TP+TN+FP+FN }\ $`
Не учитывает соотношение ложных срабатываний модели
### Метрики - Бинарная классификация - Precision (sensitivity; рус."точность")
Показывает количество истинно положительных исходов из всего набора положительных меток
`$ Precision = \frac { TP } { TP+FP }\ $`
### Метрики - Бинарная классификация - Recall
(hit rate, sensitivity, true positive rate; рус."полнота" или "чувствительность")
Показывает, насколько хорошо классификатор распознает положительные примеры
`$ Recall = \frac { TP } { TP+FN }\ $`
### Метрики - F1 scrore
Гармоническое среднее precision и recall
`$ Recall = 2\frac { precision \times recall } { precision+recall }\ $`
### Метрики - мульти-классификация
Один из возможных методов - вычисление средней метрики по всем классам