Понятия, модели и методы машинного обучения

Предиктивный анализ. Процесс создания модели в машинном обучении. Обучение с учителем (регрессия, классификация). Обучение без учителя (кластеризация). Метрика качества моделей. Валидация моделей.

Лыкошин Александр

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 }\ $`
### Метрики - мульти-классификация Один из возможных методов - вычисление средней метрики по всем классам