1.1 Что такое ML: задачи, типы обучения, жизненный цикл модели

Урок 1.1. Что такое машинное обучение

После урока вы сможете:

  • объяснить, чем машинное обучение отличается от обычного программирования;
  • различать задачи регрессии, классификации и кластеризации;
  • определять признаки и целевую переменную для бизнес-задачи;
  • описать жизненный цикл ML-модели.

Правила против примеров

В обычной программе человек пишет правила: «если квартира в элитке и с евроремонтом, прибавь 15% к цене». Таких правил для цены квартиры понадобятся сотни, и они всё равно будут неточными.

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

Обычное программирование Машинное обучение
На входе Данные + правила Данные + правильные ответы
На выходе Ответы Правила (модель)
Когда подходит Правила простые и известны Правил много, они сложные или неизвестны

Признаки и целевая переменная

Любая задача обучения с учителем состоит из двух частей:

  • Целевая переменная (target, y) — то, что мы хотим предсказать. Для BishkekDom это цена квартиры price_usd.
  • Признаки (features, X) — информация, по которой делаем прогноз: район, площадь, серия дома, этаж и так далее.

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

Три основных типа задач

Тип задачи Что прогнозируем Пример из Кыргызстана Модуль курса
Регрессия Число Цена квартиры, потребление электроэнергии 1–2
Классификация Категорию (да/нет, A/B/C) Вернёт ли заёмщик кредит, уйдёт ли абонент 3–4
Кластеризация Группы без готовых ответов Сегменты покупателей сети магазинов 5

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

Жизненный цикл ML-модели

  1. Постановка задачи. Какое бизнес-решение улучшит модель? Как измерим успех?
  2. Сбор данных. Откуда берём примеры и правильные ответы?
  3. EDA и подготовка. Изучаем данные, чистим ошибки, готовим признаки.
  4. Обучение. Начинаем с простого baseline, затем пробуем модели сложнее.
  5. Оценка. Проверяем на данных, которые модель не видела.
  6. Внедрение и мониторинг. Модель начинает работать, а мы следим, не падает ли её точность.

Новички обычно думают, что главное — выбрать «умный» алгоритм. На практике 60–80% времени уходит на шаги 1–3. Хорошие данные с простой моделью почти всегда лучше плохих данных со сложной.

Кейс BishkekDom: постановка задачи

  • Бизнес-цель: агенты называют обоснованную цену при приёме объявления.
  • Тип задачи: регрессия, обучение с учителем.
  • Target: price_usd.
  • Features: район, расстояние до центра, серия, год постройки, этаж, этажность, комнаты, площадь, состояние, отопление, парковка.
  • Метрика успеха: средняя ошибка прогноза в долларах (MAE). Модель должна ошибаться заметно меньше, чем простое правило «называй медианную цену».

Практика: первый взгляд на данные

Файлы модуля:

Скачайте и распакуйте архив. Откройте ноутбук module_1_notebook_bishkekdom.ipynb в Google Colab (Файл → Загрузить блокнот), загрузите файл bishkekdom_listings.csv через панель «Файлы» слева и выполните ячейки Части 1.

# Загружаем данные и смотрим на размер таблицы
import pandas as pd

df = pd.read_csv('bishkekdom_listings.csv')
print('Строк и столбцов:', df.shape)

# Типы столбцов и количество непустых значений
df.info()

# Основные статистики по числовым столбцам
df.describe().T

Проверьте себя: найдите в выводе describe() максимальную площадь квартиры. Выглядит ли она правдоподобно? К этому вопросу мы вернёмся в следующем уроке.

Итоги урока

  • ML-модель учится закономерностям на примерах с правильными ответами.
  • Target — что прогнозируем; features — по чему прогнозируем, и они должны быть известны заранее.
  • Регрессия прогнозирует числа, классификация — категории, кластеризация ищет группы.
  • Большая часть работы — это постановка задачи и подготовка данных.