Разбор
Основы машинного обучения: как из задачи получить проверяемую модель
Первое знакомство с машинным обучением на примере интернет-магазина: задача, данные, обучение и проверка на новых случаях. Без обещаний автоматического роста.
Машинное обучение позволяет построить правило предсказания по примерам. Человек задаёт задачу и способ проверки, а алгоритм подбирает зависимости в данных. Полученная модель должна работать на новых случаях, а не просто воспроизводить знакомые строки таблицы.
Начать можно с обычной бизнес-задачи. Предположим, интернет-магазин хочет заранее оценивать срок сборки заказа. Здесь есть измеримый результат, момент принятия решения и сведения, которыми сотрудник располагает до начала сборки.
Опишите решение, ради которого нужен прогноз
В нашем учебном примере прогноз помогает распределять заказы между сборщиками. Значит, его нужно получить до назначения задания. Прогноз после завершения сборки уже не помогает этому решению, даже если он очень точен.
Укажите, что предсказывается: длительность сборки в минутах, превышение допустимого срока или очередь риска. Это три разных постановки. Для первой потребуется числовой ответ, для второй - категория, для третьей важен порядок заказов.
Прежде чем выбирать алгоритм, определите, как сейчас решается задача. Например, сотрудник оценивает время по числу товарных позиций. Это исходный ориентир для сравнения, который стоит сохранить.
Подготовьте примеры с известным результатом
Одна строка учебной таблицы описывает один завершённый заказ. В ней могут быть число позиций, склад и состав заказа, известные до начала работы, а также фактическая длительность сборки. Сведения на входе называют признаками, результат для обучения - целевой переменной.
Проверьте определение фактического времени. Интервал между созданием заказа и отправкой клиенту включает ожидание и доставку, поэтому не равен длительности сборки. Если измеряется другое событие, модель будет учиться решать другую задачу.
Ошибки в исходной таблице также входят в обучение. Возвраты, отмены и паузы требуют явных правил обработки. Модель сама не установит, какие значения считать корректными.
Что происходит при обучении
В библиотеке scikit-learn обучение обычно выполняется методом fit, а получение ответа для новых объектов - методом predict. Конкретный алгоритм определяет, как именно строится зависимость. Для первого проекта полезнее понимать вход, выход и проверку, чем пытаться сразу перебрать все методы.
Часть примеров используется для настройки модели. Другие откладываются для оценки. Если в рабочем процессе предстоит предсказывать будущие заказы, разумно проверить модель на более позднем периоде, сохранив временной порядок.
Данные о завершении заказа, которых ещё нет в момент прогноза, на вход подавать нельзя. Например, итоговый статус сборки способен раскрыть ответ и создать обманчиво хороший результат проверки.
Как понять, что получилось полезное решение
Сравните модель с исходным простым правилом на одинаковых новых заказах. Для прогноза времени можно смотреть абсолютную ошибку в минутах и отдельно разбирать самые крупные промахи. Выбор показателя должен соответствовать тому, как ошибка повлияет на распределение работы.
Проверьте разные типы заказов. Средний результат способен скрыть плохую работу на редких, но сложных заказах. Изменение склада, ассортимента или процесса сборки также может сделать прежние зависимости менее полезными.
Начальный рабочий режим может быть подсказкой сотруднику. Рядом с прогнозом сохраняются фактический результат и замечание о ситуации. После накопления новых примеров можно проверить, сохраняется ли качество. Общие ошибки анализа таблиц разобраны в статье про ИИ в бизнес-аналитике.
Есть вопрос по теме?
Разберу вашу ситуацию и предложу конкретный шаг
Источники
Читайте также
Канал «Лёха Маркетолог»
Практика без воды: кейсы, инсайты, разборы. 1–2 поста в неделю.
Пока без комментариев. Будьте первым.