# Что такое машинное обучение

> Стартовая тема курса: чем машинное обучение отличается от классического программирования, какие бывают парадигмы обучения, зачем данные режут на три части и что такое обобщение — понятие, ради которого всё и затевается.

Раздел: [Основы машинного обучения](https://ml-book.com/s/ml-basics/) · Страница темы: https://ml-book.com/t/intro-ml/ · Обновлено: 2026-07-07 · Источник: ml-book.com, учебник делается сообществом

## Интуиция: правила против данных

Классическая программа — это правила, которые придумал и записал человек. Хочешь фильтровать спам — садишься и пишешь: если в письме есть слово «выигрыш» и незнакомый отправитель — в спам. Такой подход ломается, как только правил нужны тысячи, а спамеры начинают их обходить быстрее, чем ты успеваешь дописывать новые.

Машинное обучение (machine learning, ML) переворачивает схему: мы не пишем правила, а показываем алгоритму данные — тысячи писем с пометками «спам / не спам» — и он сам выводит правила, подбирая параметры модели. Классическое определение Тома Митчелла: программа *учится*, если её качество на задаче T, измеренное метрикой P, улучшается с накоплением опыта E. Опыт — это данные; «становится лучше с опытом» — и есть суть обучения.

`классика: данные + правила → ответы · ML: данные + ответы → правила (модель)`

## Три парадигмы обучения

- **С учителем (supervised learning).** Есть пары «объект → правильный ответ»: письмо → спам или нет, квартира → цена. Модель учится воспроизводить ответы. Сюда относятся классификация и регрессия — например, [линейная регрессия](https://ml-book.com/t/linear-regression/).
- **Без учителя (unsupervised learning).** Ответов нет — только объекты. Модель ищет структуру сама: группирует похожих клиентов (кластеризация), сжимает признаки (снижение размерности), находит аномалии.
- **С подкреплением (reinforcement learning, RL).** Нет ни ответов, ни готового датасета: агент действует в среде, получает награду (reward) и методом проб и ошибок учится действовать так, чтобы награды было больше. Так учат ботов играть в игры, управлять роботами — и дообучают LLM через RLHF.

> **💡 Ключевая мысль**
>
> Во всех трёх парадигмах повторяется один шаблон: модель с параметрами + сигнал качества (лосс или награда) + процедура, которая улучшает параметры по этому сигналу. Меняется только источник сигнала.

> 🎛 Интерактивная визуализация — на странице темы: https://ml-book.com/t/intro-ml/

## Train, validation, test — зачем резать данные

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

- **Обучающая выборка (train)** — на ней модель подбирает параметры.
- **Валидационная (validation)** — на ней выбирают гиперпараметры (сложность модели, learning rate) и ловят момент, когда модель начинает [переобучаться](https://ml-book.com/t/overfitting-regularization/).
- **Тестовая (test)** — неприкосновенный запас. Её трогают один раз, в самом конце, чтобы честно оценить итоговое качество.

Если гонять тест много раз и подстраивать под него решения, он незаметно превращается во вторую валидацию — и финальная оценка становится оптимистично завышенной. На собеседовании это называют утечкой (leakage) выбора модели.

## Обобщение и типы задач

Обобщение (generalization) — способность модели работать на данных, которых она не видела при обучении. Это и есть цель: нам не нужен прогноз цены квартир из обучающей таблицы — их цены и так известны. Разрыв между качеством на train и на новых данных — главный диагностический сигнал (подробнее — в теме про переобучение).

По типу ответа задачи делят на: **регрессию** (предсказать число: цену, спрос, время доставки), **классификацию** (выбрать класс: спам или нет, кошка или собака), **кластеризацию** (сгруппировать объекты без готовых меток) и **генерацию** (создать новый объект: текст, изображение, код — именно это делают LLM, предсказывая следующий токен). Первые две — обучение с учителем, кластеризация — без учителя, а генерация в современных LLM собирается из всех трёх парадигм: претрейнинг с учителем на текстах и RL-дообучение.

> **⚠️ Подводный камень**
>
> Высокая точность на обучающей выборке сама по себе ничего не доказывает: достаточно большая модель способна просто запомнить весь train. Единственное честное свидетельство качества — метрики на отложенных данных, которые модель не видела и под которые ты не подстраивал решения.

> **🎤 На собеседовании**
>
> - «Чем ML отличается от классического программирования?» — правила не пишутся вручную, а выводятся из данных через оптимизацию параметров.
> - «Приведи примеры задач для каждой парадигмы» — supervised: спам-фильтр, прогноз цены; unsupervised: сегментация клиентов, поиск аномалий; RL: игры, робототехника, RLHF.
> - «Зачем отдельные validation и test?» — по валидации подбирают гиперпараметры, значит она «затёрта» этим подбором; тест нужен нетронутым для финальной оценки.
> - «Классификация или регрессия?» — смотри на тип ответа: дискретный класс или непрерывное число. Вопрос-ловушка: предсказание вероятности клика — регрессия по форме, но решает задачу классификации.

## Связанные темы

- [Типы обучения: с учителем, без и с подкреплением](https://ml-book.com/t/learning-paradigms/)
- [Линейная регрессия](https://ml-book.com/t/linear-regression/)
- [Градиентный спуск](https://ml-book.com/t/gradient-descent/)
- [kNN и кластеризация](https://ml-book.com/t/clustering-knn/)

---

Интерактив, тест из 12 вопросов и карточки терминов — на странице темы: https://ml-book.com/t/intro-ml/
Весь учебник в markdown: https://ml-book.com/llms-full.txt · Оглавление для агентов: https://ml-book.com/llms.txt
