В КУРСЕ?

Разбираемся в теме

Машинное обучение с нуля: сначала честная проверка, потом сложный алгоритм

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

Определите момент предсказания и доступные признаки

Предположим, нужно оценить длительность доставки в момент оформления заказа. Возможными признаками будут расстояние, выбранный способ доставки и известный временной интервал. Фактическое время прибытия является целевой величиной, а не допустимым входом. Если добавить в признаки сведения, появляющиеся только после завершения доставки, модель получит подсказку из будущего и покажет вводящий в заблуждение результат. Для каждого столбца задайте два вопроса: откуда он берётся и когда становится известным? Название столбца не всегда раскрывает смысл. Например, отметка «доставка завершена с задержкой» уже связана с будущим исходом. Даже если её удобно выгрузить из общей таблицы, при реальном прогнозе она отсутствует. Такая проверка полезна до выбора алгоритма и вычисления любых показателей качества.

Разделите обучение и проверку

На обучающей части алгоритм подбирает закономерности, а отложенные данные служат для оценки работы на новых примерах. Преобразования, которые учатся по данным, тоже должны получать информацию только из соответствующей обучающей части. Например, параметры масштабирования нельзя заранее вычислять по всей таблице, включая итоговый тест. Иначе проверка частично влияет на подготовку модели. Способ разделения зависит от задачи. Если нужно предсказывать будущие доставки, важно учитывать временной порядок. Если несколько строк относятся к одному объекту, их случайное распределение может создать слишком лёгкую проверку. Не существует единственного процента разделения, подходящего всем ситуациям. Сначала определяют, какие новые случаи ожидаются в применении, затем выбирают проверку, которая разумно их имитирует.

Сравните с простым ориентиром и разберите ошибки

Перед сложной моделью создайте понятный базовый вариант. Для времени доставки это может быть постоянное значение, рассчитанное только по обучающей части. Затем сравните ошибки на одинаковых отложенных примерах. Средняя абсолютная ошибка показывает среднюю величину промаха в исходных единицах времени, но не раскрывает все особенности. Две модели с одинаковым средним значением могут по-разному ошибаться на длинных маршрутах. Поэтому посмотрите отдельные случаи и группы: где прогноз особенно неточен, хватает ли данных и нет ли ошибки измерения. Не подбирайте бесконечно варианты по итоговому тесту: постепенно он перестаёт быть независимой проверкой. Для выбора настроек нужен отдельный процесс валидации. Хороший учебный результат — воспроизводимый анализ с ограничениями, а не рекордное число без объяснения происхождения данных.

Попробуйте на практике

Составьте схему учебного проекта прогнозирования доставки на бумаге.

  1. Определите момент прогноза и выпишите пять возможных столбцов. Для каждого укажите, известен ли он в этот момент.
  2. Найдите и исключите хотя бы один признак, содержащий сведения о будущем результате.
  3. Предложите разделение данных, учитывающее будущие заказы, и запишите, какие преобразования должны обучаться только на обучающей части.
  4. Опишите простой базовый прогноз, подходящую метрику ошибки и две группы случаев для отдельной проверки.

Как проверить результат. Схема должна исключать подсказки из будущего, сохранять независимую оценку и включать простой ориентир. Выбор модного алгоритма без этих элементов не считается завершённой постановкой задачи.

Частые вопросы

Почему качество на обучающих данных недостаточно?

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

Если сложная модель хуже простого среднего, проект провален?

Нет. Это полезный результат проверки. Он может указывать на недостаток данных, неудачные признаки или отсутствие преимущества выбранного алгоритма. Базовый вариант помогает увидеть это до практического применения.

Самостоятельный разбор темы. Содержание конкретной обучающей программы здесь не представлено.

Зарегистрируйтесь, чтобы уточнить возможность доступа к этому материалу

Зарегистрироваться
← К списку материалов