Результаты обучения
После изучения урока вы сможете:
- Объяснять, что такое обучение с учителем и зачем обучающим примерам нужны правильные ответы.
- Различать признаки X, целевую переменную y и метку класса.
- Отличать задачи регрессии от задач классификации.
- Описывать путь от обучающего набора до прогноза обученной модели.
- Объяснять назначение обучающей, проверочной и тестовой выборок.
- Называть ограничения разметки, качества данных и переноса модели на новые случаи.
1. Что означает «обучение с учителем»
Обучение с учителем (Supervised Learning) — режим машинного обучения, в котором каждый обучающий пример содержит входные признаки и известный целевой ответ. В англоязычной литературе такие примеры называют labeled examples, а целевые ответы — labels или targets.
Представьте журнал эксплуатации здания. Для каждого дня известны температура наружного воздуха, площадь, режим работы и число людей, а также фактическое энергопотребление. Модель получает признаки и учится прогнозировать значение потребления. Исторические значения нужны не как подсказка для каждого будущего дня, а как примеры закономерностей.
«Учитель» здесь не обязательно человек, который вручную объясняет каждый шаг. Это метафора доступного правильного ответа, с которым можно сравнить прогноз. Ответы могут поступать из измерений, экспертной разметки, документов или истории событий.
2. Признаки, целевая переменная и разметка
Для одного примера обозначим вектор входных признаков через X, а известный ответ — через y. Обучающий набор состоит из множества пар (X, y). Признаки должны быть доступны в момент, когда модель будет использоваться. Целевая переменная описывает то, что мы хотим предсказать.
| Задача | Признаки X | Цель y | Тип ответа |
|---|---|---|---|
| Прогноз энергопотребления | Температура, площадь, режим, загрузка | Потребление за сутки | Число |
| Обнаружение аварийного режима | Вибрация, температура узла, давление | Авария / норма | Класс |
| Классификация обращения | Текст заявки, категория оборудования | Тип обращения | Категория |
Разметка — это не формальность. Если ответы ошибочны, непоследовательны или отражают субъективные решения разметчиков, модель будет учиться воспроизводить эти ошибки. Для редких событий особенно важно проверять, как были получены метки и насколько полно они представлены.
3. Два основных типа задач: регрессия и классификация
Регрессия (Regression)
Регрессия применяется, когда требуется предсказать числовую величину: расход энергии, температуру, длительность, стоимость или нагрузку. Прогноз может принимать значения на непрерывной шкале. Ошибка обычно выражается разницей между прогнозом и фактическим числом.
Классификация (Classification)
Классификация применяется, когда требуется выбрать класс: «норма» или «авария», «тип A» или «тип B», «спам» или «не спам». Модель часто оценивает вероятности классов, а затем правило принятия решения превращает их в итоговую метку.
4. Как проходит обучение модели
- Формулируем задачу. Определяем объект прогноза, момент принятия решения и целевую переменную.
- Готовим данные. Проверяем признаки, разметку, пропуски, единицы измерения и доступность полей.
- Выбираем семейство модели. Это может быть линейная модель, дерево решений, ансамбль или нейронная сеть.
- Обучаем. Алгоритм подбирает параметры, уменьшая ошибку на обучающих примерах.
- Проверяем. Сравниваем результаты на данных, не использованных для подгонки параметров.
- Применяем. Для нового объекта передаём признаки и получаем прогноз.
Во время обучения модель выдаёт прогноз ŷ. Функция потерь (loss function) измеряет, насколько этот прогноз отличается от известного ответа y. Алгоритм оптимизации использует значение потерь, чтобы обновлять параметры. Конкретный способ обновления зависит от выбранного семейства модели и метода обучения.
Здесь θ обозначает параметры модели. Важно различать параметры, которые алгоритм подбирает в процессе обучения, и гиперпараметры, которые задаются до или вокруг обучения. Их подробное изучение будет в следующих уроках.
5. Зачем разделять данные
Если оценивать модель на тех же примерах, на которых она подбирала параметры, результат может оказаться чрезмерно оптимистичным. Поэтому данные обычно разделяют на три части:
- Train (обучающая выборка) — используется для подбора параметров модели.
- Validation (проверочная выборка) — помогает сравнивать варианты модели и настраивать гиперпараметры.
- Test (тестовая выборка) — используется для итоговой независимой оценки после выбора подхода.
Способ разделения зависит от задачи. Для независимых однотипных наблюдений может подойти случайное разделение. Для временного прогноза нельзя обучаться на будущем и проверяться на прошлом. Если записи одного объекта повторяются, нужно учитывать группы, чтобы близкие наблюдения не попали одновременно в train и test.
6. Пример: прогноз энергопотребления здания
Допустим, задача — спрогнозировать потребление энергии на следующий день. В качестве признаков можно использовать прогноз наружной температуры, календарный день, плановый режим работы и сведения о загрузке, известные до начала прогнозируемого периода. Целевой ответ — фактическое потребление за следующий день.
Сначала строим простой baseline — например, прогнозируем значение предыдущего сопоставимого дня или среднее по обучающей выборке. Затем обучаем модель и сравниваем её с baseline на одинаковом тестовом периоде. Если сложная модель не улучшает результат, её сложность пока не оправдана.
Практикум без кода
Выберите задачу: прогноз суточного энергопотребления или классификация аварийных событий. Запишите объект наблюдения, три признака, целевую переменную и момент, когда прогноз должен быть сделан. Для каждого признака ответьте: будет ли он доступен в этот момент?
7. Ограничения и типичные ошибки
- Плохая разметка. Модель получает противоречивые или неверные ответы.
- Смещение выборки. Обучающие примеры не отражают условия реального применения.
- Утечка данных. В признаки попадает информация, недоступная в момент прогноза, либо тестовые данные влияют на обучение.
- Переобучение. Модель слишком точно подстраивается под обучающие примеры и хуже работает на новых.
- Неверная метрика. Выбранный показатель не отражает реальные последствия ошибок.
Supervised learning хорошо подходит, когда есть достаточно качественных размеченных примеров и понятен целевой ответ. Но наличие большого объёма данных не гарантирует качество: важны происхождение, репрезентативность, независимая проверка и корректный сценарий применения.