Выберите грейды
Выберите модули
В чем отличие между обучением с учителем (supervised learning) и обучением без учителя (unsupervised learning)?
Обучение с учителем (supervised learning) использует размеченные данные, где для каждого входного примера известен правильный выход.
Цель — научить модель предсказывать этот выход для новых данных.
Обучение без учителя (unsupervised learning) работает с неразмеченными данными.
Цель — найти скрытые закономерности или структуры в данных без предварительно заданных ответов.
Обучение с учителем (supervised learning).
В этом подходе модель обучается на наборе данных, который включает как входные признаки, так и соответствующие им целевые переменные (метки). Алгоритм учится сопоставлять входные данные с правильными выходными данными.
Модель получает обратную связь в виде разницы между предсказанным и фактическим значением, что позволяет ей корректировать свои параметры.
Примеры задач:
Обучение без учителя (unsupervised learning):
В отличие от обучения с учителем, здесь модель работает с неразмеченными данными, то есть без заранее известных целевых переменных.
Цель состоит в том, чтобы обнаружить скрытые структуры, закономерности или взаимосвязи в данных.
Примеры задач:
| Тип обучения | Обучение с учителем (Supervised learning) | Обучение без учителя (Unsupervised learning) |
|---|---|---|
| Описание | Модель обучается на размеченных данных — есть входные признаки и известные целевые значения. | Модель обучается на нераспознанных данных, где нет целевых меток. |
| Цель | Научиться сопоставлять вход и выход, минимизируя ошибку между предсказанным и фактическим значением. | Найти скрытые структуры, закономерности и группы в данных. |
| Примеры задач | Классификация (спам / не спам), регрессия (цена дома). | Кластеризация (сегментация клиентов), снижение размерности (PCA). |

Что такое переобучение (overfitting) и недообучение (underfitting)? Как их избежать?
Переобучение (overfitting) происходит, когда модель слишком хорошо запоминает обучающие данные, включая шум, и плохо обобщает новые данные.
Недообучение (underfitting) — это когда модель слишком проста и не улавливает основные закономерности в данных. Избежать переобучения помогают методы регуляризации, кросс-валидация, увеличение объема данных.
Недообучение можно исправить, используя более сложную модель или добавляя больше релевантных признаков.
Переобучение (overfitting) - модель становится слишком сложной и начинает
запоминать шум в обучающих данных, что приводит к плохой производительности на новых, невидимых данных. Это происходит, когда модель имеет слишком много параметров или когда обучающие данные слишком малы и нерепрезентативны.
Как избежать:
Недообучение (underfitting) - модель слишком проста и не может уловить основные закономерности в обучающих данных, что приводит к низкой производительности как на обучающих, так и на тестовых данных. Это может произойти, если модель имеет слишком мало параметров или если важные признаки отсутствуют.
Как избежать:

Случайное содержание вопроса
В чем разница между классификацией и регрессией?
Классификация — задача предсказания дискретной метки класса (например, да/нет).
Регрессия — задача предсказания непрерывного значения (например, цена дома).
Классификация это задача, в которой модель предсказывает принадлежность объекта к одному из заранее определенных классов. Выходные данные являются дискретными. Например, классификация электронных писем на «спам» и «не спам», определение типа опухоли (злокачественная/доброкачественная) или распознавание рукописных цифр.
Алгоритмы, используемые для классификации:
Регрессия это задача, в которой модель предсказывает непрерывное числовое значение. Выходные данные являются непрерывными. Например, предсказание цены дома на основе его характеристик, прогнозирование температуры на завтра или оценка спроса на продукт.
Алгоритмы, используемые для регрессии:
| Тип задачи | Классификация | Регрессия |
|---|---|---|
| Описание | Модель предсказывает, к какому классу принадлежит объект. | Модель предсказывает непрерывное числовое значение. |
| Выходные данные | Дискретные значения (метки классов). | Непрерывные значения (числа). |
| Примеры задач | Спам / не спам, тип опухоли, распознавание рукописных цифр. | Цена дома, прогноз температуры, оценка спроса на продукт. |
| Примеры алгоритмов | Метод опорных векторов (SVM), деревья решений, нейронные сети. | Линейная регрессия, полиномиальная регрессия, деревья решений, нейронные сети. |
Что такое метод k-ближайших соседей (KNN)?
Метод k-ближайших соседей (KNN) — это простой алгоритм, который классифицирует новую точку данных на основе большинства голосов ее k ближайших соседей в обучающей выборке. Он не требует обучения модели в явном виде и является примером ленивого обучения.
Метод k-ближайших соседей (k-Nearest Neighbors, KNN) — это непараметрический алгоритм, используемый для классификации и регрессии. Его основная идея заключается в том, что похожие объекты находятся близко друг к другу. Для классификации новой точки данных алгоритм находит k ближайших к ней точек из обучающей выборки (соседей) и присваивает новой точке тот класс, который является наиболее распространенным среди ее соседей.
Для регрессии предсказанное значение является средним или медианным значением целевой переменной у k ближайших соседей. Расстояние между точками обычно измеряется с помощью евклидовой метрики, но могут использоваться и другие метрики.
Выбор значения k является важным гиперпараметром:

Что такое деревья решений (decision trees)?
Дерево решений — это модель, которая представляет собой древовидную структуру, где каждый внутренний узел представляет собой проверку атрибута, каждая ветвь — результат проверки, а каждый листовой узел — метку класса.
Они интуитивно понятны и легко интерпретируемы.
Дерево решений (decision tree) — это непараметрический алгоритм машинного обучения, который может использоваться как для классификации, так и для регрессии. Модель строится в виде древовидной структуры, где каждый внутренний узел представляет собой «тест» на определенном признаке (например, возраст > 30), каждая ветвь представляет результат теста, а каждый листовой узел (терминальный узел) представляет собой решение (метку класса или непрерывное значение).
Путь от корня до листа представляет собой правило классификации. Деревья решений строятся путем рекурсивного разделения данных на подмножества на основе признаков, которые наилучшим образом разделяют данные. Критерии разделения, такие как прирост информации (Information Gain) или индекс Джини (Gini Impurity), используются для выбора наилучшего признака на каждом шаге.
Деревья решений склонны к переобучению, но эту проблему можно решить с помощью методов обрезки (pruning) или использования ансамблевых методов, таких как случайный лес.
Пример с датасетом Титаника:

Случайное содержание вопроса
Как вы обрабатываете пропущенные значения в данных?
Существует несколько подходов:
Удаление строк (Listwise deletion) — удаление всех наблюдений с хотя бы одним пропущенным значением. Это может привести к потере большого количества данных.
Удаление столбцов (Pairwise deletion) — удаление признаков с большим количеством пропущенных значений.
Заполнение (Imputation):
Выбор метода зависит от количества пропущенных данных, их распределения и типа данных.
Что такое глубокое обучение (Deep Learning)?
Глубокое обучение (Deep Learning) — это подраздел машинного обучения, основанный на искусственных нейронных сетях с множеством слоев (глубоких нейронных сетях). Оно особенно эффективно для задач с большими объемами данных, таких как распознавание изображений и обработка естественного языка.
Глубокое обучение (Deep Learning, DL) — это класс методов машинного обучения, основанных на искусственных нейронных сетях. «Глубина» относится к наличию нескольких скрытых слоев в нейронной сети, что позволяет модели изучать иерархические представления данных.
Начиная с простых признаков на нижних слоях, сеть может строить все более сложные и абстрактные представления на верхних слоях. Это делает глубокое обучение особенно мощным для задач с неструктурированными данными:
Основные архитектуры глубокого обучения включают сверточные нейронные сети (CNN) для компьютерного зрения и рекуррентные нейронные сети (RNN) для последовательных данных, а также трансформеры, которые стали стандартом в NLP.
Случайное содержание вопроса
Случайное содержание вопроса
Что такое выбросы (outliers) и как с ними бороться?
Выбросы (outliers) — это точки данных, которые значительно отличаются от других наблюдений. Их можно обнаружить с помощью визуализации (ящичковые диаграммы) или статистических методов (z-оценка, межквартильный размах).
Бороться с ними можно путем удаления, замены (например, на медиану) или использования моделей, устойчивых к выбросам.
Основные способы обнаружение выбросов:
Визуализация: ящичковые диаграммы (box plots), диаграммы рассеяния (scatter plots).
Статистические методы:
> 3 или < -3 считаются выбросами.[Q1 - 1.5*IQR, Q3 + 1.5*IQR], считаются выбросами.Алгоритмы обнаружения аномалий:
Случайное содержание вопроса
Случайное содержание вопроса
Случайное содержание вопроса
В чем разница между MLE и MAP и когда используется каждый из них?
MLE (Maximum Likelihood Estimation) ищет параметры θ, которые максимизируют правдоподобие данных P(D∣θ).
MAP (Maximum A Posteriori) ищет параметры, которые максимизируют апостериорную вероятность P(θ∣D), используя априорное распределение P(θ). MAP — это Байесовский подход, который включает регуляризацию.
MLE предполагает, что все параметры θ одинаково вероятны (равномерное априорное распределение), и фокусируется только на данных.
MAP включает априорное распределение P(θ), которое отражает наше предварительное знание о параметрах.
MAP основывается на Теореме Байеса:
MAP включает априорное распределение P(θ), которое отражает наше предварительное знание о параметрах. Связь с регуляризацией:
Какая из следующих задач является примером обучения с учителем?
Предсказание цены акции является задачей регрессии, где модель обучается на исторических данных (размеченные данные) для предсказания будущего значения.
Остальные варианты являются примерами обучения без учителя (кластеризация и обнаружение аномалий)
Предсказание цены акции — это задача регрессии, то есть обучения с учителем.
Модель получает на вход размеченные исторические данные — например, цену акций, объём торгов, макроэкономические индикаторы — и обучается предсказывать числовое значение (будущую цену).
В отличие от этого, кластеризация и обнаружение аномалий относятся к обучению без учителя, где модель не имеет целевой переменной и самостоятельно ищет скрытые закономерности или выбросы в данных.
Случайное содержание вопроса
Что такое нормальное распределение и почему оно часто используется в машинном обучении?
Нормальное (Гауссово) распределение — это симметричное распределение в форме колокола, полностью описываемое средним значением (μ) и стандартным отклонением (σ). Оно важно, потому что многие природные явления и, главное, ошибки предсказания в моделях часто распределены нормально (согласно Центральной Предельной Теореме).
Нормальное распределение N(μ,σ2) является краеугольным камнем в статистике и машинном обучении по нескольким причинам:
Какой алгоритм строит множество деревьев решений на случайных подвыборках данных и усредняет их предсказания?
Случайный лес (Random Forest) является ансамблевым методом, который использует бэггинг для создания множества деревьев решений и усреднения их результатов для повышения точности и уменьшения переобучения.
Случайный лес (Random Forest) — это ансамблевый метод, основанный на бэггинге (bootstrap aggregating).
Он строит множество независимых деревьев решений на случайных подвыборках данных и признаков, а затем усредняет их предсказания (для регрессии) или использует голосование (для классификации).
Такой подход повышает устойчивость и точность модели, снижает переобучение и уменьшает дисперсию по сравнению с отдельным деревом решений.
В чем заключается проблема "затухания градиентов" (Vanishing Gradient) и как ее решают?
Затухание градиентов — это проблема, при которой градиенты становятся очень маленькими по мере распространения назад через глубокие слои, что приводит к остановке обучения ранних слоев. Это было вызвано использованием сигмоидных активационных функций.
Решается с помощью ReLU, Batch Normalization и архитектур, таких как ResNet.
Проблема возникает из-за правила цепи. Если мы используем сигмоидную активационную функцию σ(z), ее производная σ′(z) лежит в диапазоне (0,0.25]. При умножении этих малых чисел на каждом слое (в Backpropagation), градиент ∂L/∂W для ранних слоев становится экспоненциально малым, что делает их обновления незначительными.
Пути решения:
Что такое регуляризация (Regularization)?
Регуляризация (regularization) — это техника, используемая для предотвращения переобучения путем добавления штрафа к функции потерь модели. Этот штраф наказывает большие значения весов, делая модель более простой и улучшая ее обобщающую способность.
Регуляризация (regularization) — это набор методов, направленных на уменьшение сложности модели и предотвращение переобучения. Она достигается путем добавления дополнительного члена (штрафа) к функции потерь, который зависит от весов модели.
Наиболее распространенные типы регуляризации:

Что такое метод опорных векторов (SVM)?
Метод опорных векторов (SVM) — это алгоритм классификации, который находит оптимальную гиперплоскость, разделяющую классы в пространстве признаков с максимальным зазором. Это делает модель более устойчивой к новым данным.
Метод опорных векторов (Support Vector Machine, SVM) — мощный алгоритм машинного обучения, используемый для задач классификации и регрессии. Основная идея SVM заключается в построении гиперплоскости (или набора гиперплоскостей) в многомерном пространстве, которая наилучшим образом разделяет точки данных разных классов.
Оптимальная гиперплоскость — это та, которая имеет максимальный зазор (margin) между ближайшими точками каждого класса, называемыми опорными векторами. SVM может эффективно выполнять нелинейную классификацию с помощью так называемого «ядерного трюка» (kernel trick), который неявно отображает входные данные в более высокоразмерное пространство, где они становятся линейно разделимыми.
Популярные ядра включают:

Случайное содержание вопроса
Объясните математическую связь между PCA и SVD и почему SVD предпочтительнее?
PCA основан на разложении ковариационной матрицы на собственные числа и векторы. SVD разлагает саму матрицу данных X на UΣVT. SVD предпочтительнее, потому что он численно более стабилен, работает с неквадратными матрицами и позволяет избежать явного вычисления большой ковариационной матрицы.
PCA и SVD тесно связаны. Если X — центрированная матрица данных, то ковариационная матрица:
PCA находит собственные векторы и числа матрицы C.
SVD разлагает X = UΣVT.
Связь — правые сингулярные векторы V из SVD являются собственными векторами ковариационной матрицы C. Сингулярные числа σi связаны с собственными числами λi как 𝜎i2 = (n−1)λi
К реимуществам SVD относится численная стабильность:
В библиотеках, таких как scikit-learn, PCA реализуется через SVD.
Что такое ROC-кривая и AUC?
ROC-кривая (Receiver Operating Characteristic) — это график, который показывает производительность модели бинарной классификации при различных порогах классификации. Он строит зависимость доли истинно положительных результатов (TPR) от доли ложноположительных результатов (FPR).
AUC (Area Under the Curve) — это площадь под ROC-кривой, которая служит единой метрикой качества модели: чем ближе AUC к 1, тем лучше модель.
ROC-кривая — это график, который иллюстрирует диагностическую способность бинарного классификатора при изменении порога дискриминации. По оси Y откладывается доля истинно положительных результатов (True Positive Rate, TPR), также известная как чувствительность (Recall), а по оси X — доля ложноположительных результатов (False Positive Rate, FPR). Идеальная модель имела бы ROC-кривую, которая проходит через верхний левый угол (TPR=1, FPR=0).
AUC (площадь под кривой) — это числовая метрика, которая измеряет общую производительность модели классификации. AUC представляет собой вероятность того, что случайно выбранный положительный пример будет оценен моделью выше, чем случайно выбранный отрицательный пример.
AUC=0.5 соответствует случайному угадываниюAUC=1.0 — идеальной модели.
Что такое рекуррентные нейронные сети (RNN)?
Рекуррентные нейронные сети (RNN) — это тип нейронных сетей, предназначенный для работы с последовательными данными, такими как временные ряды или текст. Они имеют внутреннюю память, которая позволяет им обрабатывать информацию из предыдущих шагов последовательности.
Рекуррентные нейронные сети (Recurrent Neural Networks, RNN) — это класс нейронных сетей, в которых соединения между узлами образуют направленный граф вдоль временной последовательности. Это позволяет им использовать внутреннее состояние (память) для обработки последовательностей переменной длины.
В отличие от сетей прямого распространения, RNN могут использовать свою внутреннюю память для обработки произвольных последовательностей входов. Однако стандартные RNN страдают от проблемы затухающего и взрывающегося градиента, что затрудняет обучение на длинных последовательностях. Для решения этой проблемы были разработаны более сложные архитектуры, такие как LSTM (Long Short-Term Memory) и GRU (Gated Recurrent Unit), которые используют механизмы шлюзов для управления потоком информации.

Что такое сверточные нейронные сети (CNN)?
Сверточные нейронные сети (CNN) — это тип глубоких нейронных сетей, специально разработанный для обработки данных с сеточной структурой, таких как изображения. Они используют сверточные слои для автоматического и адаптивного изучения пространственных иерархий признаков
Сверточные нейронные сети (Convolutional Neural Networks, CNN) — это класс глубоких нейронных сетей, которые особенно хорошо подходят для анализа визуальных данных.
Ключевые компоненты CNN:
CNN произвели революцию в компьютерном зрении и используются в таких задачах, как:

Случайное содержание вопроса