Поиск Написать публикацию. Яндекс Как мы делаем Яндекс. Время на прочтение 6 мин. Представьте, что вам надо вызвать такси.
А как построена разработка?
Вы открываете приложение, видите, что машина приедет минут через семь, нажимаете «Заказать» — и… автомобиль в 15 минутах от вас, если вообще найден. Согласитесь, неприятно. Под катом поговорим о том, как методы машинного обучения помогают Яндекс.- Mar , Яндекс Такси будет стимулировать пассажиров меньше отменять заказы без необходимости, чтобы сдерживать рост цен за счет более оптимального распределения времени водителей
- Новый алгоритм Яндекс Такси учитывает соотношение совершенных и отмененных поездок для каждого пассажира. Чем больше совершенных поездок, тем быстрее подача такси, а в случае слишком частых отмен будет ограничен заказ .
- Одна из главных задач в taksitema.ruак сделать так, чтобы к пользователю быстро приезжала машина, а у водителя сокращалось время «холостого пробега».
Для начала напомним, что пользователь видит в приложении перед заказом: Алгоритмы яндекс такси карте синим отмечены оптимальные точки для посадки в такси.
Красный пин — точка, к которой пользователь вызывает такси. В пине отображается, через какое время прибудет машина. В идеальном мире. Но в реальном мире другие люди неподалеку тоже вызывают себе машину через приложение Яндекс. И мы не знаем, какой автомобиль к кому поедет, ведь они распределяются только после заказа.
Когда вы только открыли приложение
Если машина уже назначена, для прогноза мы воспользуемся роутингом Яндекс.Карт и временем при движении по оптимальному пути. Это время возможно, с небольшим запасом мы и покажем пользователю сразу после заказа. Остается вопрос: алгоритмы яндекс такси как же спрогнозировать ETA до заказа. И здесь появляется машинное обучение. Составим выборку с объектами и правильными ответами и обучим алгоритм угадывать ответ алгоритмы яндекс такси признакам алгоритмы яндекс такси. В нашем случае объекты — это пользовательские сессии, ответы — это время, через которое фактически приехала машина.
Признаками объекта могут быть числовые параметры, известные до заказа: количество водителей и пользователей приложения рядом с пином, расстояние до ближайших автомобилей сервиса и другие потенциально полезные величины. Почему это важно В идеальном мире люди все делают заранее алгоритмы яндекс такси всегда безошибочно планируют свое время.
Mar , На прошлой неделе "Яндекс" объявил, что введет новый рейтинг для пассажиров: клиенты за каждую состоявшуюся поездку будут получать баллы, Mar , Яндекс Такси будет стимулировать пассажиров меньше отменять заказы без необходимости, чтобы сдерживать рост цен за счет более оптимального May , Алгоритмы распределяет заказы между водителями автоматически. На распределение никак не влияют ни диспетчеры таксопарков, ни сотрудники
Но мы живем в реальном мире. Если человек опаздывает на работу или, хуже того, в аэропорт, ему важно понимать, успеет ли он вовремя выехать и добраться до места назначения.Решая, что заказать, будущий пассажир руководствуется в том числе временем ожидания. Оно может сильно отличаться и в разных приложениях для вызова такси, и в разных тарифах одного приложения. Чтобы пользователь не пожалел о выборе, очень важно показывать точное ЕТА. Кажется, все. Придумать побольше признаков, обучить модель, например CatBoost, спрогнозировать время до прибытия машины — и можно закончить алгоритмы яндекс такси.
Но опыт показывает, что лучше не спешить и хорошенько подумать, а потом делать.
Что такое Яндекс Такси?
Разумеется, прогноз должен быть достаточно честным, чтобы пользователь мог планировать время.Но что значит «честным». Ведь любой алгоритм прогнозирования плох или хорош только статистически. Встречаются и удачные, и откровенно плохие результаты, но нужно «в среднем» не сильно отклоняться от правильных ответов. Здесь надо понимать, что «в среднем» бывает разное. Например, среднее — это как минимум три понятия из статистики: матожидание, медиана и мода.
Яндекс Такси будет стимулировать пассажиров меньше отменять заказы без необходимости, чтобы сдерживать рост цен за счет более оптимального распределения времени водителейКартинка из великолепной книги Алгоритмы яндекс такси Хаффа «Как лгать при помощи статистики» прекрасно показывает различие: Мы хотим, чтобы модель в среднем ошибалась мало.
В зависимости от значения «в среднем» возникает два варианта оценки качества прогнозов. Первый вариант — показывать пользователю математическое ожидание времени до приезда такси. В итоге обучится модель, минимизирующая средний алгоритмы яндекс такси ошибки прогноза Mean Squared Error, MSE : Здесь — правильные ответы, — прогнозы модели.
Другой вариант — не алгоритмы яндекс такси с прогнозом ETA преимущественно в одну сторону, в большую или в меньшую. В этом случае мы покажем пользователю медиану распределения времени до приезда такси.
Переосмысление постановки задачи Алгоритмы яндекс такси назначения мы знаем, какая именно машина едет к пользователю, а значит, можем оценить ее время в пути по Яндекс. Это время и показывается в пине после заказа. С одной стороны, теперь у нас больше информации и прогноз будет алгоритмы яндекс такси, но, с другой стороны, это тоже оценка с погрешностью.
Вот в чем оказался подвох в задаче про ЕТА в пине. Пока водитель не назначен, надо прогнозировать именно то время, которое потом покажет роутинг Яндекс. Карт, а алгоритмы яндекс такси фактическое время до подачи машины. Казалось бы, что за алгоритмы яндекс такси вместо точного значения брать в качестве таргета другой прогноз. Но это имеет смысл, и вот.
Как всё начиналось
По пути к вам назначенная машина может задержаться. Водитель попал в опасную ситуацию на дороге, в пробку из-за ДТП или вышел купить воды.Такие задержки сложно предугадать.
Алгоритмы распределяет заказы между водителями автоматически. На распределение никак не влияют ни диспетчеры таксопарков, ни сотрудники сервиса. Система ищет автомобиль, который подходит по тарифу и ближе всех находится к . Таксиэто сложные алгоритмы поиска водителей, продуктовый подход к разработке и высокая нагрузка на сервисы. Мы используем C++, Python и Go. В Такси есть три основных направления разработки, где собрано много различных команд с совершенно разными . Один из новых алгоритмов, запущенных в году, анализирует, насколько сложен каждый маршрут, его протяженность, среднюю допустимую скорость в пути и историю аварийности на каждом отрезке. Это помогает алгоритму подбирать .
Они создают дополнительный шум в целевой переменной, из-за которого и без того непростая задача спрогнозировать ЕТА в пине становится еще сложнее. Как избавиться от шума. Прогнозировать сглаженную целевую переменную — время, которое показывается алгоритмы яндекс такси после назначения машины на основе маршрута к пользователю.- Каждый раз, когда пользователь «taksitema.ru» открывает приложение, сервис запускает алгоритм поиска ближайших к нему водителей.
- May , Алгоритмы распределяет заказы между водителями автоматически. На распределение никак не влияют ни диспетчеры таксопарков, ни сотрудники сервиса. Система ищет автомобиль, который
- С недавнего времени в Яндекс. Такси появилась система, которая снабжает каждого водителя, завершившего поездку, индивидуальным маршрутом, учитывая спрос.
- Максимальный доход при нахождении на линии не менее указанного в калькуляторе количества часов и дней в месяц и после вычета вознаграждения Яндекс Такси.
В этом есть логика и с точки зрения бизнеса: время в дороге по оптимальному пути из Алгоритмы яндекс такси в любом случае не выкинешь, а вот дополнительные задержки можно уменьшать, работая с водителями.
Метрики качества, данные, модель и обучение Мы выяснили, что для ЕТА в пине нужно прогнозировать не фактическое время, а время, которое будет получено после назначения машины по маршруту. Но у MAE есть приятная особенность: модель более устойчива к выбросам outliers среди обучающих примеров. Признаки алгоритмы яндекс такси на группы: — построенные по текущему времени; — гео координаты, расстояние до центра города и значимых объектов на карте ; — пиновые сколько и каких машин рядом, по-разному подсчитанная их плотность ; — статистика по зоне как обычно ошибаемся, сколько предсказываем ; — данные о ближайших водителях алгоритмы яндекс такси какое время доезжают, насколько первый ближе второго и т.
На этих признаках обучали, конечно алгоритмы яндекс такси, CatBoost. Решающим доводом было то, что реализованный в CatBoost градиентный бустинг над сбалансированными деревьями уже давно зарекомендовал себя как очень мощный метод машинного обучения, а способ кодирования категориальных признаков в CatBoost регулярно оправдывает себя на наших задачах. Другая приятная особенность библиотеки — быстрое обучение на GPU.
Теперь пара слов о том, какие модели сравнивались. Исходное ЕТА до уточнения машинным обучением рассчитывалось на основе времени, за которое может приехать ближайшая к пользователю машина.
Последнее обновление 22 мая На распределение никак не влияют ни диспетчеры таксопарков, ни сотрудники сервиса. Система ищет автомобиль, который подходит по тарифу и алгоритмы яндекс такси всех находится к месту подачи, то есть потратит не больше 15 минут на дорогу. Если пассажир указал какие-то дополнительные требования или опции, они тоже учитываются.
Текущая модель используется в приложении сейчас — алгоритмы яндекс такси, что алгоритмы яндекс такси сделать с помощью машинного обучения и чему посвящена эта статья. Кроме того, в продакшн скоро выкатится новая модель.Она использует на порядок больше значимых для решения задачи признаков. В таблице ниже приводятся замеры качества этих моделей на исторических данных.
«Яндекс Такси» работает с партнёрами, которые уполномочены предоставлять транспортные услуги. Чтобы оценить время прибытия транспортного средства и стоимость.К слову, у нас планов алгоритмы яндекс такси много — приходите помогать. Теги: машинное обучение data science такси команда яндекс go. Комментарии Виктор Кантор vkantor. Отправить сообщение. Комментарии Комментарии Лучшие за сутки Похожие. Сайт www. Ваш аккаунт Войти Регистрация.
Почему это важно
Маловероятно, что водители могли предположить и знать, что Яндекс такси посредством микро сервисов этим и занимается, контролируя таким образом работу и защищает себя от сильного фрода системы. Таксист по мнению Яндекса - отсталый от жизни неудачник, который лишь умеет только рулить, однако они ошибаются. Таксист - это может быть и человек с несколькими высшими и профильными образованиями, которого они не взяли на работу к себе в компанию по непонятным причинам отказа и ему пришлось уйти в такси.
Мы здесь для того чтобы, предостеречь вас от крайне негативных последствий в нашей алгоритмы яндекс такси работе и развеять мифы, которые успешно вам преподносят так называемые коллеги по цеху, парой вводящие в заблуждение наивных трудяг. Заранее раскидав карты таро, мы увидели будущее. Чтобы у вас не возникло мнение, что я голословный, вспомните, за какое количество времени мы предупреждали о изменениях, интеграциях Яндекса с другими службами и государством, в то время ни один из коллег по алгоритмы яндекс такси имеющих парки не верил в алгоритмы яндекс такси и говорили всем, что ничего не заработает и нет повода для беспокойства с целью удержать свою аудиторию.
А спустя некоторое время, что мы видим?