⭐️ Смотрите Часть-1 здесь ⭐️

Случайные леса

Случайные леса — это ансамблевые методы обучения, которые объединяют несколько деревьев решений для прогнозирования. Они уменьшают переоснащение и повышают точность по сравнению с отдельными деревьями решений.

Математические формулы:

Случайные леса строятся на деревьях решений и не требуют дополнительных математических формул.

Предположения:

То же, что деревья решений.

Бэггинг (объединение Bootstrap):

Бэгинг – это метод, используемый в ансамблевом обучении, при котором несколько моделей обучаются на разных подмножествах обучающих данных и объединяются для получения прогнозов. Основная идея создания пакетов состоит в том, чтобы ввести в модели случайность и разнообразие, тем самым уменьшив переобучение и улучшив эффективность обобщения. Это способствует стабильности и надежности, вводя случайность и разнообразие в процесс обучения моделей. Вот этапы процесса упаковки:

1. Начальная выборка: бэггинг начинается с создания нескольких бутстраповых выборок из исходных обучающих данных. Начальная выборка получается путем случайного выбора точек данных и признаков из обучающего набора с заменой.

2. Обучение модели: для каждого образца начальной загрузки отдельная модель (например, дерево решений) обучается на выбранном подмножестве данных. Каждая модель обучается независимо, без знания других моделей или полного обучающего набора.

3. Агрегация: после обучения всех моделей их прогнозы объединяются для получения окончательного прогноза. В задачах классификации это можно сделать путем мажоритарного голосования, где в качестве окончательного прогноза выбирается класс с наибольшим количеством голосов от моделей. В задачах регрессии прогнозы можно усреднить по моделям.

Повышение:

Повышение – это еще один метод ансамблевого обучения, который объединяет несколько слабых учеников (моделей со скромной прогностической силой) для создания сильного ученика. Ключевая идея бустинга заключается в последовательном построении серии моделей, где каждая последующая модель фокусируется на исправлении ошибок, допущенных предыдущими моделями. Несколько алгоритмов повышения (AdaBoost, Gradient Boosting, XGBoost и CatBoost). Вот этапы процесса повышения:

1. Инициализация веса: каждому обучающему примеру в наборе данных присваивается начальный вес. Изначально все веса установлены равными, что указывает на то, что каждый пример одинаково важен.

2. Обучение модели и обновление веса: слабый ученик (например, дерево решений) обучается на обучающем наборе, придавая больший вес неправильно классифицированным примерам из предыдущих моделей. Это подчеркивает важность неправильно классифицированных примеров и помогает последующим моделям сосредоточиться на этих случаях.

3. Регулировка веса: после обучения каждой модели веса обучающих примеров корректируются в зависимости от производительности модели. Неправильно классифицированным примерам присваивается более высокий вес, тогда как правильно классифицированным примерам присваивается более низкий вес. Это адаптивное взвешивание уделяет больше внимания сложным примерам, что делает их более важными в последующих моделях.

4. Комбинация моделей. Окончательный прогноз получается путем объединения прогнозов всех моделей, как правило, посредством взвешенного голосования, когда модели с более высокой производительностью получают больший вес в ансамбле.

Вопросы и ответы на основе интервью

Q1. В чем основное преимущество использования случайных лесов по сравнению с отдельными деревьями решений?

Ответ: Случайные леса уменьшают переобучение и повышают точность прогнозов за счет объединения нескольких деревьев решений и введения случайности за счет выбора признаков и выборки.

Вопрос 2. Как случайный выбор признаков помогает в случайных лесах?

Ответ: Случайный выбор признаков гарантирует, что каждое дерево в случайном лесу использует только подмножество признаков, что способствует разнообразию деревьев и снижает корреляцию между ними.

Q3. Могут ли случайные леса обрабатывать пропущенные значения и категориальные переменные?

Ответ: Да, случайные леса могут обрабатывать пропущенные значения, подставляя их, и могут обрабатывать категориальные переменные, используя однократное кодирование или аналогичные методы.

Вопрос 4. Как случайные леса справляются с переоснащением?

Ответ: Случайные леса уменьшают переоснащение за счет усреднения прогнозов из нескольких деревьев и использования таких методов, как пакетирование признаков и случайный выбор признаков.

Вопрос 5. Как определить важность функции в случайном лесу?

Ответ: Важность признака в случайном лесу можно определить путем измерения среднего уменьшения примеси (например, примеси Джини) по всем деревьям, когда конкретный признак используется для разделения.

Методы опорных векторов (SVM)

SVM — это мощный алгоритм обучения с учителем, используемый для задач классификации и регрессии. Он находит оптимальную гиперплоскость, которая максимально разделяет разные классы, или предсказывает значения на основе опорных векторов.

Математические формулы:

Функция гипотезы: h (x) = знак (θᵀx + θ₀)

Функция стоимости: J (θ) = C * Σ (max (0, 1 — yᵢ (hθ (xᵢ))))) + 0,5 * λ * Σ (θⱼ²)

SVM использует регуляризацию L2, потому что в SVM желательна устойчивость к выбросам, L2 часто предпочтительнее, поскольку он обеспечивает большую устойчивость к отдельным экстремальным значениям. Выбор между регуляризацией L1 и L2 зависит от конкретных требований и соображений проблемы, а также от желаемого компромисса между разреженностью, интерпретируемостью и вычислительной сложностью.

Предположения:

Линейная разделимость:SVM предполагает, что данные линейно разделимы, или с соответствующими функциями ядра он может обрабатывать нелинейно разделимые данные.

Вопросы и ответы на основе интервью

Q1. Какова роль функции ядра в SVM?

Ответ: Функция ядра в SVM используется для преобразования входных признаков в многомерное пространство, что позволяет разделить нелинейно разделяемые точки данных.

Вопрос 2. Каково значение опорных векторов в SVM?

Ответ: Опорные векторы — это точки данных, расположенные ближе всего к границе решения и оказывающие наибольшее влияние на определение местоположения гиперплоскости. Они используются для определения границы решения.

Вопрос 3. Каково назначение параметра регуляризации © в SVM?

Ответ: Параметр регуляризации © контролирует компромисс между максимизацией маржи и минимизацией неправильной классификации обучающих выборок. Более высокое значение C допускает меньше ошибочных классификаций, но может привести к переоснащению.

Q4. Может ли SVM обрабатывать проблемы классификации нескольких классов?

Ответ: Да, SVM может обрабатывать проблемы с несколькими классами, используя такие методы, как «один против одного» или «один против всех», когда несколько бинарных классификаторов SVM обучаются отличать каждый класс от остальных.

В5. Как SVM обрабатывает выбросы?

Ответ: SVM менее чувствителен к выбросам, потому что его цель состоит в том, чтобы максимизировать запас, который фокусируется на выборках вблизи границы решения. Выбросы мало влияют на размещение границы решения.

PCA (анализ основных компонентов):

PCA — это алгоритм обучения без учителя, используемый для уменьшения размерности путем преобразования исходных признаков в новый набор некоррелированных переменных, называемых главными компонентами. Он фиксирует максимальную дисперсию данных.

Математические формулы:

Ковариационная матрица: Σ = (1/м) * XᵀX

Разложение по собственным значениям: Σ = WΛWᵀ

Проекция точек данных на новое пространство признаков: X’ = XW

Предположения:

  1. Линейность: PCA предполагает, что связь между исходными функциями и основными компонентами является линейной.

Вопросы и ответы на основе интервью

Q1. Какова цель PCA?

Ответ: Цель PCA — уменьшить размерность данных при сохранении как можно большего количества информации (дисперсии).

Вопрос 2. Как вы интерпретируете собственные значения в PCA?

Ответ: Собственные значения представляют собой величину дисперсии, объясняемую каждым основным компонентом. Большие собственные значения указывают на то, что соответствующие главные компоненты получают больше информации из данных.

Вопрос 3. Как вы выбираете количество основных компонентов для сохранения в PCA?

Ответ: Количество основных компонентов, которые необходимо сохранить, определяется с учетом совокупной объясненной дисперсии, где установлен порог (например, 95%), чтобы сохранить достаточно информации.

Q4. Какова связь между PCA и выбором функций?

Ответ: PCA — это метод уменьшения размерности, который создает новые функции (основные компоненты). Напротив, отбор признаков направлен на выбор наиболее информативных исходных признаков без создания новых.

В5. Можно ли использовать PCA для данных с категориальными признаками?

Ответ: Нет, PCA обычно применяется к непрерывным числовым данным. Он может не подходить для данных с категориальными признаками, если не применяются соответствующие методы предварительной обработки.

Однако важно отметить, что каждый алгоритм охватывает более широкий спектр концепций, методов и математических основ, которые выходят за рамки этого блога.

Машинное обучение — это обширная область, и более глубокое изучение каждого алгоритма откроет дополнительные математические основы, методы оптимизации, методы регуляризации и передовые концепции, которые способствуют их эффективности и производительности.

Подпишитесь на мою страницу, чтобы узнать больше о ML & DL. Далее мы познакомимся с основами и концепциями НЛП. Подписывайтесь и 👏🏻 :)

LinkedIn: https://www.linkedin.com/in/pavansaish/

Приятного чтения…! 📚