Telegram Group & Telegram Channel
#ML_in_business

🏷️ Ценообразование: часть 2. Как мы делали dynamic pricing в Яндекс.Такси

🗓️ Во-первых, вспомним про контекст 2017 года, когда в такси появлялся ML в ценообразовании. Был ряд крупных игроков, среди которых Gett, Uber и Яндекс.Такси, которые довольно активно конкурировали. Особенно последние два. Каждый игрок на рынке имел свою тарификацию за километр и за минуту (которые постепенно у всех примерно сошлись), итоговая цена - это стоимость времени плюс стоимость расстояния.

🤔 Можно ли здесь накинуть 20% сверх вашей ценовой политики «просто так» и «потому что купят»? Скорее нет, потому что не купят. Откроют соседнее приложение и закажут там дешевле. А вот когда действительно есть простор для конкуренции, так это когда водители в районе кончились. Если вы можете увезти клиента, а конкурент нет - клиент достанется вам.

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

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

⚖️ Уравнение, которое описывает это состояние динамического равновесия (мы называли его «уравнение баланса»), можно записывать по-разному, дорабатывать и модифицировать. Этим занималась команда эффективности платформы под руководством Саши Аникина (ныне СЕО Яндекс.Go).

Моя же команда делала прогнозные ML-модели, которые были нужны для уравнения. Например, про водителей мы еще понимаем, кто и когда закончит поездку в заданном районе. А вот про пассажиров действительно нужно прогнозировать, с какой вероятностью пин превратиться в заказ (в зависимости от цены). Дальше суммируем вероятности в заданном районе, чтобы получить матожидание заказов, и подбираем такую цену, чтобы нам хватило притока водителей в район эти заказы вывезти.

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

☝️Но идейно простой модели уже достаточно, чтобы решать основную задачу - всегда давать пассажиру уехать. Это когда у вас есть такси по цене х2 вы огорчаетесь. А вот я вас уверяю, если все уехали по х1, а вы просто не уедете - это куда обиднее :) Недавно попадал в такую ситуацию в другой стране, совсем не понравилось.

Задавайте в комментариях вопросы про модели ценообразования, в следующем посте я отвечу на популярные мифы и то, что еще поместится в пост :)

P.S.: скорее всего, сейчас алгоритмы уже совсем поменялись, все-таки прошло много времени и рынок теперь другой, но несколько лет с 2017 все работало как-то так
👍267🔥6🤬3🤩3💩3



tg-me.com/kantor_ai/275
Create:
Last Update:

#ML_in_business

🏷️ Ценообразование: часть 2. Как мы делали dynamic pricing в Яндекс.Такси

🗓️ Во-первых, вспомним про контекст 2017 года, когда в такси появлялся ML в ценообразовании. Был ряд крупных игроков, среди которых Gett, Uber и Яндекс.Такси, которые довольно активно конкурировали. Особенно последние два. Каждый игрок на рынке имел свою тарификацию за километр и за минуту (которые постепенно у всех примерно сошлись), итоговая цена - это стоимость времени плюс стоимость расстояния.

🤔 Можно ли здесь накинуть 20% сверх вашей ценовой политики «просто так» и «потому что купят»? Скорее нет, потому что не купят. Откроют соседнее приложение и закажут там дешевле. А вот когда действительно есть простор для конкуренции, так это когда водители в районе кончились. Если вы можете увезти клиента, а конкурент нет - клиент достанется вам.

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

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

⚖️ Уравнение, которое описывает это состояние динамического равновесия (мы называли его «уравнение баланса»), можно записывать по-разному, дорабатывать и модифицировать. Этим занималась команда эффективности платформы под руководством Саши Аникина (ныне СЕО Яндекс.Go).

Моя же команда делала прогнозные ML-модели, которые были нужны для уравнения. Например, про водителей мы еще понимаем, кто и когда закончит поездку в заданном районе. А вот про пассажиров действительно нужно прогнозировать, с какой вероятностью пин превратиться в заказ (в зависимости от цены). Дальше суммируем вероятности в заданном районе, чтобы получить матожидание заказов, и подбираем такую цену, чтобы нам хватило притока водителей в район эти заказы вывезти.

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

☝️Но идейно простой модели уже достаточно, чтобы решать основную задачу - всегда давать пассажиру уехать. Это когда у вас есть такси по цене х2 вы огорчаетесь. А вот я вас уверяю, если все уехали по х1, а вы просто не уедете - это куда обиднее :) Недавно попадал в такую ситуацию в другой стране, совсем не понравилось.

Задавайте в комментариях вопросы про модели ценообразования, в следующем посте я отвечу на популярные мифы и то, что еще поместится в пост :)

P.S.: скорее всего, сейчас алгоритмы уже совсем поменялись, все-таки прошло много времени и рынок теперь другой, но несколько лет с 2017 все работало как-то так

BY Kantor.AI


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/kantor_ai/275

View MORE
Open in Telegram


Kantor AI Telegram | DID YOU KNOW?

Date: |

Telegram announces Search Filters

With the help of the Search Filters option, users can now filter search results by type. They can do that by using the new tabs: Media, Links, Files and others. Searches can be done based on the particular time period like by typing in the date or even “Yesterday”. If users type in the name of a person, group, channel or bot, an extra filter will be applied to the searches.

Telegram Auto-Delete Messages in Any Chat

Some messages aren’t supposed to last forever. There are some Telegram groups and conversations where it’s best if messages are automatically deleted in a day or a week. Here’s how to auto-delete messages in any Telegram chat. You can enable the auto-delete feature on a per-chat basis. It works for both one-on-one conversations and group chats. Previously, you needed to use the Secret Chat feature to automatically delete messages after a set time. At the time of writing, you can choose to automatically delete messages after a day or a week. Telegram starts the timer once they are sent, not after they are read. This won’t affect the messages that were sent before enabling the feature.

Kantor AI from us


Telegram Kantor.AI
FROM USA