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

Машинное обучение очень быстро развивалось в последние годы, и его использование стало широко популярным. Иногда ее считают волшебной формулой, решающей все проблемы, связанные с большими объемами данных. Эффективность моделей машинного обучения больше не демонстрируется, но часто забывают, что их эффективность зависит от детального понимания проблемы, которую необходимо решить.

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

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

[et_bloom_locked optin_id = ”optin_1 ″]

Это методы, которые мы часто используем в Qucit для решения некоторых проблем городской мобильности наших клиентов. Это очень часто сложные проблемы, когда объем обрабатываемых данных очень значителен. Тогда методы машинного обучения могут показаться интересными решениями. Однако это часто проблемы, на которые мы не знаем ответа, и поэтому нам необходимо провести реальную работу по моделированию проблемы.

Пример использования

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

Любой, кто привык к прокату велосипедов, наверняка уже сталкивался с трудностями при поиске велосипеда или места в часы пик. Утром нет места рядом с вашим местом работы, а вечером нет велосипеда, чтобы ехать домой. Новые свободно плавающие велосипеды частично решают эту проблему, поскольку пользователь больше не ищет места. Однако на свободное плавание по-прежнему влияет то же явление концентрации велосипедов в некоторых областях и, как следствие, отсутствие велосипедов в других, что может нанести ущерб надежности этого режима транспортировка без каких-либо действий со стороны системных операторов.

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

Рис. 1: операции по ребалансировке соответствуют точке разрыва (отмечены красным для некоторых из них), занятию двух станций в Бордо в течение целой недели

Таким образом, проблема заключается в следующем: какие операции должны выполняться на станциях и как они могут быть выполнены, чтобы обеспечить максимальную доступность станций в следующие несколько часов при минимизации логистических затрат, вызванных этими операциями?

Стратегия Qucit

В Qucit мы несколько лет работаем над вопросами системы проката велосипедов. Мы постоянно собираем данные о загруженности станций, и наши клиенты предоставляют нам данные о поездках, совершенных пользователями. Сегодня в нашей базе данных хранится более 2 ТБ данных по более чем 400 городам за несколько месяцев. Но у нас нет операций, которые были бы необходимы, чтобы гарантировать доступность станций. Кроме того, это количество невозможно оценить, потому что изменение количества велосипедов на станции также меняет видимый спрос. Когда станция пуста, может существовать скрытый спрос на велосипеды со стороны пользователей, который невозможно наблюдать. Добавление байков - единственный способ увидеть это. Поэтому очень сложно и нецелесообразно разработать модель машинного обучения, которая может предсказать идеальное количество велосипедов.

Так что мы выбрали совершенно другой подход. Вместо того, чтобы пытаться напрямую предсказать идеальное количество велосипедов на станции, мы выбираем t прогнозировать вероятность того, что станция будет заполнена или пуста в следующие несколько часов. Это оценивает вероятность того, что спрос на велосипеды будет таким, что он полностью заполнит или опустошит станцию. Оценка вероятности, а не количества велосипедов, тем более актуальна, поскольку эволюция занятости станции представляет собой временной ряд с большой долей случайности, которую можно объяснить только с помощью вероятностного подхода. Кроме того, мы не пытаемся определить, будет ли на станции 12 или 13 велосипедов в час, а будет ли станция пустой или полной через час. Этот риск количественно определяется вероятностью того, что станция столкнется с проблемой доступности.

Затем идет этап постобработки, который позволяет нам отвечать на вопросы наших клиентов. Исходя из этих вероятностей, легко определить:

  • Минимальный предел количества велосипедов, гарантирующий, что он не опустеет с определенной вероятностью;
  • Верхняя граница количества велосипедов, чтобы гарантировать, что он не будет заполнен с определенной вероятностью.

Рис. 2: Если смотреть в будущее, мы получаем более узкий допустимый интервал. Допустимый интервал велосипедов для гарантии доступности - желтый: верхняя граница / синий: минимальная граница

Затем у нас есть интервал количества подходящих велосипедов, который гарантирует доступность станции с определенной вероятностью. Это еще более актуальный ответ, поскольку в целом идеальное количество велосипедов не имеет оснований быть уникальным.

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

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

Заключение

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

В обсуждаемом примере мы решили использовать модель машинного обучения для решения более общей и «низкоуровневой» проблемы, чем у одного из наших клиентов. Для этих моделей, которые мы создали, требуется всего несколько шагов постобработки, чтобы решить проблему.

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

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