Урок 3. Классификация методов машинного обучения

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

Иерархия ИИ, МО и Глубокого обучения

В современной практике понятия «Искусственный интеллект» (AI), «Машинное обучение» (ML) и «Нейронные сети» (Deep Learning) часто используют как синонимы. Однако они вложены друг в друга как матрёшка:

  1. Искусственный интеллект (ИИ / AI): Область науки, посвященная автоматизации интеллектуального труда. Сюда входят как системы машинного обучения, так и статические правила (включая регулярные выражения чат-ботов первого поколения вроде ELIZA или экспертные системы).
  2. Машинное обучение (МО / ML): Класс ИИ-методов, работающих по индуктивному принципу (обучение по прецедентам). В отличие от дедуктивного подхода (когда эксперт формулирует правила и закладывает их в базу), машинное обучение самостоятельно выявляет эмпирические закономерности напрямую из исторических данных.
  3. Глубокое обучение (Deep Learning / DL): Подмножество машинного обучения, решающее задачи за счет использования многослойных (глубоких) нейросетевых архитектур.

Бизнес-правило: Не усложняйте без необходимости

Из-за текущего информационного хайпа вокруг нейросетей и больших языковых моделей (LLM) разработчики часто пытаются применить глубокое обучение (Deep Learning) ко всем задачам без разбора.

«Аудируя проекты на крупных хакатонах по ИИ, я регулярно сталкиваюсь с одной и той же ошибкой: команды тратят ресурсы на построение сложных нейросетей там, где классические “неглубокие” методы (например, градиентный бустинг или линейные модели) показывают лучший результат за секунды. Нейросети — мощный инструмент, но применять их нужно осознанно и только там, где классический ML не справляется».
Леонид Лукин, к.т.н.

Три фундаментальные парадигмы машинного обучения

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

1. Обучение с учителем (Supervised Learning)

Тип обучения, основанный на использовании размеченных данных. У модели есть вектор входных характеристик (признаков) и точная целевая метка (ответ).

  • Регрессия: Прогнозирование числовых непрерывных значений. Пример: На основе базы данных из 10 000 проданных подержанных автомобилей (год, пробег, объем двигателя, марка) модель учится прогнозировать точную рыночную стоимость новой машины.
  • Классификация: Распределение объектов по дискретным классам. Пример: Спам-фильтр, анализирующий текст входящего письма, его размер, отправителя и выносящий бинарный вердикт: «спам» или «не спам».

2. Обучение без учителя (Unsupervised Learning)

Работа с неразмеченными данными, когда у объектов отсутствуют целевые метки-ответы. Задача алгоритма — самостоятельно структурировать информацию.

  • Кластеризация: Сегментация объектов по группам схожести. Пример: Модель группирует 10 000 автомобилей по внутренним признакам на 3 кластера, а аналитик затем содержательно описывает эти кластеры (бюджетные городские машины, кроссоверы, спорткары).
  • Генеративные подходы: Обучение на огромных массивах неструктурированного текста (например, в LLM), в процессе которого модель самостоятельно улавливает семантическую структуру языка.
  • Полуконтролируемое обучение (Semi-supervised Learning): Комбинированный подход, когда модель обучается на терабайтах неразмеченных данных (unsupervised), но калибруется на небольшой размеченной выборке (supervised).

3. Обучение с подкреплением (Reinforcement Learning)

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

  • Как это работает: Мы не даем модели готовые примеры «правильных» решений. Вместо этого мы описываем математическое правило вознаграждения (например, «если доехал без аварий и быстро — плюс 100 очков, если совершил опасный маневр — минус 50»).
  • Применение: Обучение автопилотов (как правило, в симулируемых виртуальных средах, чтобы избежать реальных аварий в процессе обучения), робототехника и алгоритмические торговые системы (где вознаграждение — это полученная прибыль).

Методология организации данных: Валидация и переобучение

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

Чтобы модель работала эффективно в реальных условиях (показывала хорошую обобщающую способность), датасет необходимо правильно распределить.

Разделение выборки

  • Обучающая выборка (Train): Основной массив данных (60-70%), на котором модель настраивает свои внутренние параметры (веса).
  • Валидационная выборка (Validation): Набор данных (около 20%), используемый для оценки качества промежуточных результатов и подбора гиперпараметров.
  • Тестовая выборка (Test): Финальный контрольный набор (20-30%), на котором проверяется работа уже полностью готовой модели.

Борьба с переобучением (Overfitting)

  • Недообучение (Underfitting): Возникает при использовании избыточно простых моделей. Алгоритм не может выявить закономерности даже на обучающей выборке.
  • Переобучение (Overfitting): Происходит, когда модель слишком сложна. Она идеально подстраивается («зазубривает») под обучающие данные, включая случайные шумы, но полностью теряет точность при работе с новыми тестовыми данными.
  • Метод ранней остановки (Early Stopping): Решение, основанное на анализе графиков ошибок на обучающей и валидационной выборках. Обучение останавливается в точке локального минимума валидационной ошибки, не позволяя модели уйти в переобучение.

Подготовка к практике

На следующем занятии мы переходим к реализации нашего первого практического алгоритма — линейной регрессии.

Для комфортной работы вам потребуется:

  1. Скачать файлы практических работ с предоставленной папки на Google Диске или скопировать их к себе на диск.
  2. Использовать для запуска облачный интерактивный блокнот Google Colab.

Преимущество использования Google Colab: Платформа предоставляет бесплатный доступ к графическим процессорам (GPU), что позволит проводить матричные вычисления и обучение моделей на порядок быстрее, чем на ресурсах локального центрального процессора (CPU).

План занятия

Иерархия ИИ, классификация методов машинного обучения и организация данных

  1. Разграничение ключевых понятий (ИИ vs ML vs DL):
    • Искусственный интеллект (ИИ / AI): Широкое понятие, объединяющее любые системы автоматизации интеллектуального труда (включая простейшие правила, регулярные выражения и экспертные системы).
    • Машинное обучение (МО / ML): Подмножество ИИ, основанное на поиске эмпирических закономерностей в данных.
      • Индуктивное обучение (по прецедентам): Движение от частных данных к общим правилам (основной подход ML).
      • Дедуктивное обучение: Перенос готовых экспертных знаний в базу правил компьютера (экспертные системы).
    • Глубокое обучение (Deep Learning / DL): Подмножество машинного обучения, использующее архитектуру многослойных нейронных сетей.
    • Проблема нерационального использования нейросетей: Разбор опыта хакатонов — почему не стоит пытаться применять глубокие нейросети к задачам, которые быстрее и эффективнее решаются классическими, неглубокими методами.
  2. Три фундаментальных направления машинного обучения:
    • Обучение с учителем (Supervised Learning): Обучение на размеченных данных, где для каждого объекта известна целевая метка.
      • Задача регрессии: Прогнозирование числовых непрерывных значений (например, рыночной цены автомобиля на основе года выпуска, пробега и объема двигателя).
      • Задача классификации: Определение категориальной принадлежности объекта (например, спам-фильтрация входящих писем или медицинская маршрутизация пациентов).
    • Обучение без учителя (Unsupervised Learning): Работа с неразмеченными массивами данных с целью поиска скрытых зависимостей.
      • Задача кластеризации: Самостоятельное объединение объектов в группы схожести (например, сегментация базы автомобилей без цен на бюджетные, спортивные и представительские категории).
      • Генеративные алгоритмы и LLM: Обучение на больших неструктурированных текстах для выявления семантических связей.
      • Полуконтролируемое / частичное обучение (Semi-supervised Learning): Комбинированный подход с использованием небольшого объема размеченных данных для калибровки большой неразмеченной выборки.
    • Обучение с подкреплением (Reinforcement Learning): Обучение агента (модели) оптимальному поведению в процессе взаимодействия со средой.
      • Концепция вознаграждения (реворда): Обучение через обратную связь от среды вместо явного программирования правил.
      • Области применения: Автопилоты (моделирование и тренировка агентов в виртуальных симуляторах), робототехника, игры, финансовые инвестиционные модели.
  3. Основы организации данных в машинном обучении (по слайдам):
    • Данные как векторы: Табличное представление, где строки представляют отдельные объекты (примеры), а столбцы — признаки (features) объектов. Обязательность приведения любых данных (текст, аудио, изображения) к числовому формату.
    • Структура датасета: Разделение данных на три выборки:
      • Обучающая (Train): Для настройки весов и обучения модели.
      • Валидационная (Validation): Для подбора гиперпараметров и оценки текущего качества.
      • Тестовая (Test): Финальный аудит обобщающей способности модели.
      • Пропорции деления: 70/30 (для исследований) и 60/20/20 (для внедрения в продакшен).
    • Качество обобщения модели:
      • Недообучение (Underfitting): Ситуация, когда избыточно простая модель не способна уловить базовую структуру данных.
      • Переобучение (Overfitting / переподгонка): Модель избыточно сложна, отлично запоминает обучающую выборку («зазубривает» шум), но показывает высокую ошибку на новых данных.
      • Ранняя остановка (Early Stopping): Метод выбора модели по графику сложности. Обучение прерывается в момент, когда ошибка на валидационном наборе начинает расти, несмотря на продолжение снижения ошибки на обучении.
  4. Подготовка к практической работе на Python:
    • Проверка доступа к учебным ноутбукам на Google Диск.
    • Особенности запуска кода в облачной среде Google Colab (использование ресурсов GPU для ускорения вычислений).

Не уходите просто так – не упустите возможность только здесь и сейчас получить скиду!

Индивидуальная консультация по Яндекс Директу или Google Ads со скидкой

25%

"*"обозначает обязательные поля

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