company_banner

Как мы обучали приложение Яндекс.Такси предсказывать пункт назначения

    Представьте: вы открываете приложение, чтобы в очередной раз заказать такси в часто посещаемое вами место, и, конечно, в 2017 году вы ожидаете, что все, что нужно сделать – сказать приложению «Вызывай», и такси за вами тут же выедет. А куда вы хотели ехать, через сколько минут и на какой машине — все это приложение узнает благодаря истории заказов и машинному обучению. В общем-то все, как в шутках про идеальный интерфейс с единственной кнопкой «сделать хорошо», лучше которого только экран с надписью «все уже хорошо». Звучит здорово, но как же приблизить эту реальность?



    На днях мы выпустили новое приложение Яндекс.Такси для iOS. В обновленном интерфейсе один из акцентов сделан на выборе конечной точки маршрута («точки Б»). Но новая версия – это не просто новый UI. К запуску обновления мы существенно переработали технологию прогнозирования пункта назначения, заменив старые эвристики на обученный на исторических данных классификатор.

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

    Задача


    При выборе пункта назначения, в поле «куда» у нас есть возможность предложить пользователю буквально 2-3 варианта на главном экране и еще несколько – если он перейдет в меню выбора точки Б:



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

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

    «Старые» эвристики и обученный классификатор могут давать разные прогнозы: на этом рисунке размер круга показывает, насколько высоко данная точка находится в списке рекомендаций в конкретный день и конкретное время. Обратите внимание, что обученный алгоритм в данном примере предложил несколько дополнительных локаций (зеленые круги).

    Наша задача состояла в том, чтобы поверх «старой» стратегии использовать переранжирование наиболее вероятных «точек Б» с помощью машинного обучения. Общий подход такой: сначала начисляем баллы, как и раньше, затем берём топ n по этим баллам (где n заведомо больше, чем нужно в итоге порекомендовать), а далее переранжируем его и пользователю в итоге показываем только три наиболее вероятные точки Б. Точное число кандидатов в списке, конечно, определяется в ходе оптимизации, чтобы и качество кандидатов и качество переранжирования были как можно выше. В нашем случае оптимальное число кандидатов оказалось равным 20.

    Об оценке качества и результатах


    Во-первых, качество нужно разделить на две части: качество кандидатов и качество ранжирования. Качество кандидатов — это то, насколько отобранные кандидаты в принципе возможно правильно переранжировать. А качество ранжирования — это насколько мы правильно предсказываем точку назначения при условии того, что она вообще есть среди кандидатов.

    Начнём с первой метрики, то есть качества кандидатов. Стоит отметить, что только примерно в 72 процентах заказов выбранная точка Б (или очень близкая к ней географически) присутствовала ранее в истории. Это означает, что максимальное качество кандидатов ограничено этим числом, так как мы пока не можем рекомендовать точки, куда человек еще ни разу не ездил. Мы подобрали эвристики с назначением баллов так, что при отборе топ-20 кандидатов по этим баллам правильный ответ в них содержался в 71% случаев. При максимуме в 72% это весьма неплохой результат. Это качество кандидатов нас полностью устраивало, поэтому эту часть модели мы дальше не трогали, хотя, в принципе, могли бы. Например, вместо эвристик можно было обучить отдельную модель. Но так как механизм поиска кандидатов, основанный на эвристиках, уже был технически реализован, мы смогли сэкономить на разработке, лишь подобрав нужные коэффициенты.

    Снова вернемся к качеству переранжирования. Так как на главном экране заказа поездки показывать мы можем одну, две, ну максимум три точки, то нас интересует доля случаев, когда правильный ответ оказался в топ-1, топ-2 и топ-3 списка ранжирования соответственно. В машинном обучении долю правильных ответов в топ k списка ранжирования (от всех правильных ответов) называют recall@k. В нашем случае нас интересуют recall@1, recall@2 и recall@3. При этом «правильный ответ» в нашей задаче только один (с точностью до близко расположенных точек), а значит, эта метрика как раз будет показывать долю случаев, когда настоящая «точка Б» попадает в топ 1, топ 2 и топ 3 нашего алгоритма.

    В качестве базового алгоритма ранжирования мы взяли сортировку по количеству баллов и получили следующие результаты (в процентах): recall@1 = 63,7; recall@2 = 78,5 и recall@3 = 84,6. Заметим, что проценты здесь – это доля от тех случаев, где правильный ответ в кандидатах вообще присутствовал. В какой-то момент возник логичный вопрос: возможно, простая сортировка по популярности уже даёт хорошее качество, а все идеи сортировки по баллам и использование машинного обучения излишни? Но нет, такой алгоритм показал самое плохое качество: recall@1 = 41,2; recall@2 = 64,6; recall@3 = 74,7.

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


    Доля случаев, когда фактический пункт назначения попадал в число первых k рекомендаций

    Какая модель строилась


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

    Теперь перейдём к модели для переранжирования. Так как мы хотим максимизировать recall@k, в первом приближении мы хотим прогнозировать вероятность поездки пользователя в определенное место и ранжировать места по вероятности. «В первом приближении» потому, что эти рассуждения верны только при очень точной оценке вероятностей, а когда в них появляются погрешности, recall@k может лучше оптимизироваться и другим решением. Простая аналогия: в машинном обучении, если мы точно знаем все распределения вероятностей, самый лучший классификатор — байесовский, но поскольку на практике распределения восстанавливаются по данным приближенно, часто другие классификаторы работают лучше.

    Задача классификации ставилась следующим образом: объектами были пары (история предыдущих поездок пользователя; кандидат в рекомендации), где положительные примеры (класс 1) — пары, в которых пользователь все-таки поехал в эту точку Б, отрицательные примеры (класс 0) — пары, в которых пользователь в итоге поехал в другое место.

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

    Классификатор мы обучали на минимизацию log loss, а в качестве модели использовали активно применяемый в Яндексе Матрикснет (градиентный бустинг над решающими деревьями). И если с Матрикснетом всё понятно, то почему всё-таки оптимизировался log loss?

    Ну, во-первых, оптимизация этой метрики приводит к правильным оценкам вероятности. Причина, по которой так происходит, своими корнями уходит в математическую статистику, в метод максимального правдоподобия. Пусть вероятность единичного класса у i-го объекта равна $p_i$, а истинный класс равен $y_i$. Тогда, если считать исходы независимыми, правдоподобие выборки (грубо говоря, вероятность получить именно такой исход, который был получен) равно следующему произведению:

    $\prod_{i}p_i^{y_i}(1-p_i)^{(1-y_i)}$

    В идеале нам хотелось бы иметь такие $p_i$, чтобы получить максимум этого выражения (ведь мы хотим, чтобы полученные нами результаты были максимально правдоподобны, правда?). Но если прологарифмировать это выражение (так как логарифм — монотонная функция, то можно его максимизировать вместо исходного выражения), то мы получим $\sum_i y_i ln (p_i) + (1-y_i)ln(1-p_i)$. А это уже известный нам log loss, если заменить $p_i$ на их предсказания и умножить все выражение на минус-единицу.

    Во-вторых, мы, конечно, доверяем теории, но на всякий случай попробовали оптимизировать разные функции потерь, и log loss показал самый большой recall@k, так что все в итоге сошлось.

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

    И, наконец, о результатах: после переранжирования с помощью построенной нами модели мы получили следующие данные (опять же в процентах): recall@1 = 72,1 (+8,4); recall@2 = 82,6 (+4,1); recall@3 = 88 (+3,4). Совсем неплохо, но в будущем возможны улучшения за счет включения в признаки дополнительной информации.

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

    Дальнейшие планы


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

    Кроме того, как уже было сказано в начале поста – было бы здорово, если бы приложение само понимало, когда, куда и на какой машине нам нужно поехать. Сейчас сложно сказать, насколько по историческим данным возможно точно угадывать параметры заказа и настройки приложения, подходящие пользователю, но мы работаем в этом направлении, будем делать наше приложение все более «умным» и способным подстраиваться под вас.
    Яндекс 546,66
    Как мы делаем Яндекс
    Поделиться публикацией
    Похожие публикации
    Комментарии 73
    • +3

      Вот бы его обучить хотя бы время подачи правильно считать.
      2 минуты заявленных против 20-ти минут реальных — ни в какие ворота.

      • +2
        Здесь два момента:
        1. Уточнение времени подачи с помощью ML тоже получается делать, как выкатим — возможно расскажем и про эту задачу.
        2. Стоит помнить, что никакой один дикий пример, к сожалению, ничего не говорит о качестве прогноза в среднем, когда ежедневно делаются миллионы прогнозов. Однако пример может быть очень кстати, чтобы отладить алгоритм, поэтому мы такие случаи сейчас мониторим и разбираемся с ними, чтобы учесть все при уточнении времени подачи.
        • 0
          Для Красной Поляны этот пример скорее типичен сейчас: машина после получения заказа уехала в одну сторону, причем почти до меня доехала. Далее, водитель увидел клиента по дороге (мое предположение) и отвез его в другую сторону, довольно далеко. Затем вернулся.

          Когда я спросил его, почему так долго, он рассказал, что на всю Красную Поляну, Эсто-Садок, Розу Хутор и в общем на весь этот район, работают около 50-ти автомобилей — что очень мало.

          В данном случае неважно, говорит он правду или нет. Важно, что система вводит в заблуждение клиента. Разница на нолик весьма существенна.
        • +2
          А ещё водителей научить приезжать в тому выходу, куда надо, а не «куда все» или «куда удобней». Из недавнего: я не пойду через весь ТЦ с громоздкими покупками даже с тележкой. Или они рассчитывают за ожидание/время заказа так побольше содрать? Приходится отменять.
          • +1
            Как раз для того, чтобы водителям и пользователям было проще встречаться возле больших зданий с кучей выходов (ТЦ, аэропорты, вокзалы), недавно внедрили подсказки про наиболее удобные точки посадки. Как это работает писали здесь — yandex.ru/blog/company/popast-v-tochku, думаю, скоро расскажем на Хабре про то, как мы делали такую опцию. Попробуйте, если еще не. Если и в таких случаях возникают проблемы – это повод для нас разобраться. Буду благодарен за детали для наших саппортов.
            • 0
              Не работает на сайте. И, честно говоря, вообще не видел ничего подобного не далее как неделю назад (на iOS).
              • 0
                окей, это надо будет как-нить посмотреть, когда до андроида донесете.
                но несколько моментов:

                1) какой радиус подачи считается приемлимым? тоже сталкивался с проблемами как у aingis, но в моем случае выход вообще один был. в итоге оказалось проще взять бомбилу, чем объяснить этому дебилу что никто с полста кило покупок за ним бегать не будет.

                2) почему последние несколько месяцев навигатор у водителей через раз ведет не к подьездной части дома, а к фасадной куда-нить во двор.

                3) можно ли добавить опцию (противоположность первому пункту, да) «подъедь куда-то сюда, откуда сподручней будет в точку Б ехать» — кмк вполне актуально для разных ТПУ и развязок у метро будет.
              • 0
                Никуда не годится такое, расскажете подробнее, что за водитель так аргументировал подачу машины? Жду ваше письмо на blogs@taxi.yandex.ru вместе с номером телефона, который привязан к приложению. Спасибо!
                • 0
                  Понятия не имею почему, я же отменил. Это было год назад.
                  • +1
                    Т.е. за год пользования сервисом вам попался одни «нехороший человек» и вы это теперь еще лет пять будете припоминать?)
                    Тогда я тоже могу добавить, но уже регулярные случаи касающиеся основных сервисов такси, а не конкретно яндекса:
                    Например почему надо по 1-3 часа ждать такси, а потом искать в другой службе по одной причине, в частности если ты с ребенком. Аргументация — нет кресла нет заказа. Разве таксист который выезжает на обслуживание клиентов не должен позаботится о кресле, а том чтобы багажник был пустой?
                    По мнению таксистов видимо все мамочки имеют свое авто или любят топать пешком по пол часа до общественного транспорта.
                    А как они еще плачутся что люди наличкой перестали расплачивается, и только по карточкам… Доходит до того, что приезжают, разворачиваются и уезжают, еще и просят чтобы заказчик сам заказ отменил — это вообще улыбает.
                    • 0

                      А есть какие-то законодательные или нормативные требования, что в такси должно быть детское кресло?

                      • +1
                        А нужны?
                        Такси это прежде всего услуга по перевозки пассажиров и их ручной клади. А значит, такси обязано иметь необходимое для этого оборудование и возможности.
                        Может вам еще законодательные и нормативные акты нужны для услуг парикмахера?
                        Вы приходите в парикмахерскую, парикмахер достает секатор или опасную бритву и говорит: «ой у меня только такой инструмент, но потерпите… и оплата только наличкой — я карточки не принимаю.»
                        Сомневаюсь, что вы посчитаете это нормальным. Так почему Вы считаете нормальным такси без детского кресла и полным багажником и требуете каких то нормативов? Водитель такси выезжает на работу, выполнять определенные услуги, а сейчас это зачастую выглядит как будто таксисты делают великое одолжение тем, что хотя бы приезжают вовремя и куда надо.
                        Я считаю это не нормальным, и здоровая конкуренция и друге методы, такие как рейтинг запрещающий оказывать подобные услуги должны исключать подобное.
                        • –2

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

                          • 0
                            А почему решать должен таксист?
                            Я звоню фирму, а не какому то дяде ване. Фирма вроде как подразумевает наличие услуги определенного качества, но вот по факту это решает не фирма, а тот самый дядя ваня, и именно дядя ваня решает что фирме выгодно, а что нет. Почему так?

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

                            Но такси это не общественный транспорт, это бизнес, а бизнес таких ошибок не прощает.
                            • 0
                              Если фирма купила всем водителям кресла — то да, они должны их ставить. А если не купила — то это уже личный выбор водителей. И им, очевидно, проще работать по другим заказам, где кресла не нужны, и не заморачиваться. А если их «гнать в шею» — они просто уйдут к конкурентам.
                              • 0
                                Ну так можете добавить тогда, что фирма еще и машину должна купить, только это уже таксопарк называется, и в таксопарке да, фирма должна оборудовать свою машину.
                                Но, вот когда водитель со своей машиной т.е. своим «инструментом» приходит в сервис предоставляющий ему клиентов. Он обязан иметь исправный и подходящий инструмент. Если у него не подходящий инструмент, это должна быть проблема водителя, а не заказчика услуги. Разве не так?
                                Я понять не могу, почему для вас это не очевидно.
                                • –1

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

                                  • +1
                                    Для обычных людей существует общественный транспорт — трамваи, троллейбусы, метров, автобусы, маршрутные такси. А вот для всего что вы перечислили, как раз и используется в основном такси. Точнее должно было бы использоваться, если бы с общественным транспортом было не все так плачевно (во всяком случае у нас проще пешком ходить до 6-7 км и это будет быстрей и комфортней)
                                    • 0
                                      Эм, простите. А что теперь дети уже не люди? Загляните ради интереса на сайт рутакси в раздел «дополнительные параметры»:
                                      — машина с детским удерживающим устройством
                                      — с пассажиром будет животное
                                      — встреча с табличкой
                                      — некурящий перевозчик
                                      — пасажир не говорит по-русски
                                      — будет багаж
                                      — нужна сдача

                                      Вот появится у вас ребенок, сломается машина и я бы хотел посмотреть на вас, как бы вы перемещались до поликлиники и обратно.

                                      Собственно для этих целей и придуманы галочки, чтобы отсеивать неадекватов, которые идут в такси не деньги зарабатывать, а гонор свой показывать.
                                      • 0

                                        Ну об этом я, собственно, и говорил в своём первом комментарии выше. Вы ветку читаете вообще, прежде чем писать?)
                                        Галочка — отличное решение. Если клиент сразу указал, что ему нужно, и компания готова это сделать — классно же.)
                                        Но требовать такого от любого такси по умолчанию на данный момент мне кажется странным. Лично для меня такси — это просто способ быстро и удобно доехать, и ничего более.

                                        • 0
                                          Я внимательно эту ветку читал с самого начала. И сообщение про галочку тоже видел. Но на фоне ваших изречений это предложение мягко говоря теряется.

                                          Лично для меня такси — это просто способ быстро и удобно доехать, и ничего более.

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

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

                                          Вот в этом вся и проблема. Вам это кажется странным. А другим это не кажется странным. Т.к. другие такси предлагают фильтрацию, а тут если ее нет — значит любая из вызываемых машин априори должна быть оборудована детским сиденьем/быть с пустым багажником/если хочется закурить, то как минимум спросить об этом у пассажира/при оплате наличкой на берегу спрашивать есть ли сдача/etc.
                                          • 0

                                            Мне эта логика непонятна.
                                            Вот, к примеру, многие торговые точки принимают оплату картой. Для меня это удобно.
                                            С другой стороны, есть и такие торговые точки, которые карты не принимают. Меня это порой бесит, но я чётко понимаю, что на мои хотелки хозяевам точки глубоко наплевать. Как максимум можно высказать такое предложение, написать отзыв — и всё.
                                            То же самое и здесь.
                                            У покупателя всегда есть право проголосовать рублём за нужный уровень сервиса. С другой стороны, у продавца есть право предоставлять такой уровень сервиса, который он считает нужным (разумеется, не нарушая при этом закон и условия договора).
                                            А взаимные хотелки — не более чем хотелки.

                                      • 0
                                        Вспомнил интересный случай:
                                        Садимся с супругой в такси у торгового центра. Я на переднее сиденье сжаусь, она на заднее. Ну и ставит пакеты со шмотками рядом с собой. К ней поворачивается водитель и заявляет:
                                        — А почему не пишите в комментариях, что с багажом? Да и вообще, почему вы пакеты ставите на чистое сиденье. Выходите, я вас не повезу.

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

                                        Хотите еще?
                                        Сажусь в машину. Выезжаем из квартала, а водитель на ходу начинает что-то переключать в навигаторе. На первом светофоре авария (отъехали метров 200). И это чудо заказ исполнить уже не может, но еще требует 50%, т.к. он видите-ли бензин потратил, чтобы до меня доехать. Т.е. половину заказа выполнил.
                                        • 0
                                          Будет здорово, если пришлёте нам этот комментарий на blogs@taxi.yandex.ru вместе с номером телефона из приложения и датами поездок, с каждым случаем разберёмся.
                          • 0
                            Не понял претензию. Есть же опция «с креслом». Вы в каком городе? В Москве вообще, кажется, сложно найти без кресла, даже если забыть указать. А вообще по новым правилам с 7 лет можно без кресла, достаточно пристегнуть на заднем сидении.
                            • 0
                              Город Ростов-на-Дону, не такой маленький. С 7 лет не спорю. У меня ребенку 1.5 года, и жена катается то в поликлинику, то справки делать, то прописку.
                              Претензия в том, что у нас большинство водителей без кресла, и зачастую даже собранную коляску в багажник не положишь. В итоге последнее время просто не указываем что нужно кресло, так как ждать час два времени нет.Просто везем ребенка на руках, и то если водитель не уехал при виде ребенка отменив заказ.
                              Кстати опция с ребенком или детское кресло есть не везде, в том же гете такой опции нет, а комментарии читают далеко не все водители.
                            • 0
                              В общем-то ваши хотелки понятны. Представим себе, что все такси, в соответствии с вашими хотелками, оборудованы одним детским креслом (часто перевозят по 2-е и больше детей). А вы с друзьями (вас 4-ре человека, двое-трое из которых весят далеко за 120+) собрались на пикник (к друзьям) и тащите с собой кучу багажа, который весь в багажник явно не поместится и вы планируете кое-что взять себе на руки в салон, вызываете такси. Что делать водителю такси в таком случае? Кресло себе на руки взять? Или для одного пакса вызвать еще одну машину? Если в заявке еще когда-никогда указывают наличие детей, то уж количество пассажиров, а уж тем более их вес, никто нигде никогда не указывает. А между прочим предельные нагрузки на автомобиль установлены заводом изготовителем и редко превышают 400 кг. И по логике за перегруз предусмотрены штрафы, т.к. это влияет на безопасность. Вы думаете кто-то переплачивает за перегруз?
                              • 0
                                Представьте себе в таком случае, что для начала, кресло не обязательно возить в салоне, оно может лежать в багажнике. А еще представьте себе что в большинстве случае на заднем сиденье только два ремня безопасности, и перевозка третьего пассажира уже в принципе нарушает правила.
                                А еще… представлять можете что угодно, если количество человек больше чем может перевозить такси — заказывается два такси, в данном случае это проблема не таксиста, а не очень адекватных заказчиков. Есть такое словосочетание — «необходимая достаточность» подумайте о его смысле.

                                Кстати про пикники, а как далеко ваш пикник? у нас например далеко не все таксисты берут заказы если ехать 20-30 км от города.
                                • 0
                                  интересно, как те таксисты это обосновывают?

                                  • 0
                                    Никак, просто не берут заказ, так же как и заказы с детьми. Таксист сейчас перебирает заказы, а не берет что дают если он близко. т.е. хочет берет, хочет не берет — никаких обязательств у них вообще нет. Пообщайтесь с таксистами, много интересного узнаете) Я не виню что они так делают, они так делают потому что могут и им это выгодней лично, а значит все логично. Об этом должны думать фирмы в которые звонят клиенты, а не лично таксисты.
                                    • 0
                                      весело там у вас. у нас подобное видел разок, но там реально заказ непонятно как именно этому водиле назначили — он нас вез и точка старта там была минутах в 15-20 в другую сторону
                                  • 0
                                    Если кресло будет лежать в багажнике, то туда невозможно будет положить багаж, что «отсеит» значительную часть клиентов, более выгодных, чем перевозка ребенка.
                                    На заднем сиденье, как правило, предусмотрено три ремня безопасности, даже в Российских «лушпайках». Если Вы их не видите — это не значит, что их нет.
                                    Если Вас так уж беспокоит перевозка собственного ребенка, то выхода два: либо покупаете собственное кресло, либо пользуетесь специализированными службами такси. Есть еще вариант — находите водителя, у которого есть кресло, и пользуетесь его услугами, по личной договоренности.
                                    В любом случае за дополнительную услугу надо быть готовым платить. Пока же в нашем обществе наблюдается обратная тенденция, никто ни за что не хочет платить, при этом хотят, чтоб платили им. А раз так, то у водителя остается право выбора — брать менее выгодный заказ или подождать более выгодного заказа. Подумайте об этом, когда долго ожидаете машину.
                                  • 0
                                    для реализации его хотелок нужно всего лишь модифицировать водительское приложение, чтоб водитель видел все требования до окончательного принятия заказа. причем про три самых сложных пункта можно выяснять при выходе на линию — наличие детских кресел, перевозку животных в салоне и наличие места для инвалидной коляски в багажнике.

                                    касаемо веса, вы описываете ситуацию, требующую если не микроавтобуса, то бизнес- или премиальную тачку типа мерса. А например W212, которые я точно в такси видел, имеют почти 700кг г/п по паспорту.

                                    да, судя по быстрогуглу, за перегруз легковушки не штрафуют (хотя и зря — привет картофеле-арбузовозам). но вполне может случиться штраф за лишнего пассажира в салоне, если там только три ремня.
                                    • 0
                                      вы описываете ситуацию
                                      Я описываю ситуацию достаточно часто встречающуюся в моей практике. Может быть и не в таких катастрофических масштабах, как я описал, но всё же машина частенько садится на задние упоры. И попробуй заикнись, что ты заберешь не всех или отменяешь заказ… могут и придушить))))
                                      • 0
                                        ну пока что единственный раз, когда я видел таксо на упорах, был когда водила-абрек разгружал из нее дыни на торговый лоток (нет, правда!). еще и номера желтые были.
                        • –3
                          Нейронную сеть не пробывали?
                          Если пробывали то интересно сравнение с котиком.
                          • 0

                            Из последнего:


                            1 У водителя нет возможности позвонить пока не подедет близко.
                            2 Нельзя указать точку на карте, где хотел бы видеть машину. Точнее ещё хуже. Указать можно, но водитель этого не увидит, а увидит автоматически определенный адрес.
                            3 Часто бывает такое, что после заказа, получаю сообщение, что машина подана, например Hyundai, жму кнопку "скоро выйду", выхожу, а машины нет. Смотрю в приложение, а там nissan едет в 10 минутах. И следов hiyndai никаких. Как так?


                            Водитель едет совсем не туда, куда указал. В итоге терпение кончается, вызываю gett, там все лучше.


                            Ну и навигация тоже оставляет желать лучшего. Косяк на косяке на карте. Уже с десяток отправил, многие по два, три раза.


                            Исправить эти косяки по-моему важнее, чем подсказывать мне куда я поеду.

                            • 0
                              Здравствуйте! Спасибо за фидбэк.

                              1. Всё так, это сокращает количество ситуаций, когда водители просят отменить заказ. Если в связи с этим возникла проблема, наша поддержка поможет.
                              2. Точку указать можно и водители её видят. Да, она привязывается к адресу, но и отметка на карте сохраняется.
                              3. Здесь нужно проверять, почему водитель отменил заказ. Это тоже решаемо через нашу поддержку или я могу сам проверить, если напишете на blogs@taxi.yandex.ru.
                              • +1
                                2. Точку указать можно и водители её видят. Да, она привязывается к адресу, но и отметка на карте сохраняется.
                                Может быть водители пользуются каким-то другим софтом? Мне водитель показал как выглядит мой заказ для него, там только адрес, без всякой карты, ещё написан способ оплаты и при подъезде ближе 500 метров появляется телефон. Есть кнопки начать заказ и отменить заказ. Жаль не снял этот интерфейс.

                                А вы видите трек, как водитель подъезжает к клиенту? Можете посмотреть, как он блуждал, не зная, как подъехать ко мне, пока я ему не позвонил.

                                Переслал вам детали вчерашней поездки на почту.
                                • 0
                                  1. Всё так, это сокращает количество ситуаций, когда водители просят отменить заказ. Если в связи с этим возникла проблема, наша поддержка поможет.

                                  3. Здесь нужно проверять, почему водитель отменил заказ. Это тоже решаемо через нашу поддержку или я могу сам проверить, если напишете на blogs@taxi.yandex.ru.


                                  Мне кажется оба этих случая вы можете проверять и без обращения клиента. Вы же видите, что водитель отменил заказ. Что мешает проверить?

                                  Можно и не показывать телефон клиента, организовать связь через вашу АТС, писать все звонки. При тех ценах, что есть у вас сейчас, вполне реально добавить ещё 10-20 рублей на заказ, чтобы окупить работу такой службы.
                                  • 0
                                    Мне кажется, вы не поняли — 1 пункт призван запретить водителям звонить клиенту и сообщать им, что они не поедут по заказу. Сам лично сталкивался с такой ситуацией, звоню таксисту — а там лицо не русской принадлежности сообщает мне, что оно, дескать, не хочет ехать в такую даль. И главное, заказ не отменяет, чтобы типа рейтинг не потерять, наивный.
                                    • 0

                                      Я то понял, но что мешает наказать такого водителя?


                                      Мне водитель вчера сказал, что у них сейчас все равно нет прямого номера телефона клиента. Он может позвонить только через АТС Яндекса. Но почему то только после того, как подъедет близко к точке.

                                  • +1
                                    Мне уже два водителя за два дня пожаловались на одинаковую ситуацию:

                                    1) Самолет сел в аэропорту, человек прямо с трапа вызывает такси.
                                    2) Таксист подъезжает и не может связаться с пассажиром, т.к. тот уже переместился в зал ожидания, а приложение этого не понимает и считает расстояние от такси до трапа.
                                    3) Заказ отменяется, все несчастны (кроме разработчиков, у которых своя логика).
                                  • 0
                                    А еще водитель не видит рейтинг пакса, не видит точку, если указана всего-лишь улица, не видит стоимости заказа и т.п. А еще яндекс навигатор частенько ошибается и заводит туда, где нет проезда, или ведет совершенно в другую сторону и приходится переходить на альтернативные навигаторы, а еще во время движения прилетают заказы, а ты в этот момент совершаешь маневр и пропускаешь этот заказ и у тебя падает рейтинг, по приезду на точку вдруг снимается заказ, а ты в эту точку протискивался между машинами во дворе вдоль всего дома и на точке видишь, что развернуться невозможно и выход один — выезжать задним ходом с сантиметровым зазором м/у машинами… и много чего еще… Ты думаешь это кого-то волнует? Их волнует только одно — как больше депингнуть цены чтоб еще больше нариков и бомжей засадить в машины…
                                    • 0
                                      А еще яндекс навигатор частенько ошибается и заводит туда, где нет проезда, или ведет совершенно в другую сторону

                                      Сам сталкивался с этим, как пассажир. А потом додумался внести несколько исправлений на «народной карте». Это заняло минут 20, а навигатор в районе моего дома с тех пор строит дорогу правильно.
                                  • +2
                                    Вот бы еще научить Яндекс Такси не лажать при поиске адреса по его названию. Сравните два скриншота, Яндекс Такси слева, Максим справа. Пользователь в этот момент находится в Иркутске. Яндекс, ну зачем ему адреса в Архангельске, Бурятии и Украине? Приложение Максим нашло адрес с первой же попытки. И такая история — практически с каждым поиском.

                                    image
                                    • 0
                                      Здравствуйте! Здесь не поспоришь, не всегда адекватно приложение предлагает адреса. Об этом мы знаем, обязательно будем исправлять.
                                      • 0
                                        Это скорее ко всему поиску на картах должно применяться, а не только к такси.

                                        Вот мне понравилось, что при попытке найти «где поесть» в два часа ночи в Сочи, google вывел только те места, где реально было открыто, да ещё написал, что скоро закрывается. А вот Яндекс пока так не умеет, выводит всё подряд.

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

                                        С одной стороны это не к вам, но с другой стороны, в будущем, в приложениях такси этот функционал должен быть.
                                      • 0
                                        Да, это просто беда. Прежде чем искать, приложение требует включить GPS. Координаты известны, город понятен. ЗАЧЕМ??? показывать в начале списка адреса из Мухосранска.
                                        А когда у тебя проспект Ленина, который есть В КАЖДОМ городе, задолбаешься листать до своего города.
                                      • 0
                                        Раньше Я.Такси не пользовался в МСК, ночью в день вылета на отдых попробовал вызвать — предложили три аэропорта. Это ML или эвристика? :)
                                        • 0
                                          Дайте угадаю — у вас почта yandex.ru :)? У меня почта в gmail, так в день вылета при просмотре роликов youtube у меня целый день показывало рекламу такси)))
                                          • 0
                                            Вот некоторые мои знакомые не верят, что личные сообщения в вк тоже парсятся и анализируются, и потом на основе этого анализа показывается таргетированная реклама (хотя сам уже несколько раз в этом убеждался). Зря не верят, вот ещё один аргумент в мою пользу :)
                                            • 0
                                              У меня несколько почтовых аккаунтов… Конечно, среди них есть gmail, но в Ютубе такси замечено не было)
                                            • +1
                                              это эвристика, наверняка самые популярные пункты over all. Их и предлагают новичкам
                                            • 0
                                              Когда уже добавят возможность смены способа оплаты?

                                              Один из ярких примеров: сам я стараюсь кататься на такси оплачивая поездки картой. Уже насколько привык к этому, что даже бывает выхожу из дома без кошелька. Недавно у знакомого села зарядка на телефоне и пришлось вызвать ему такси с оплатой налом. На следующий день по привычке вызываю себе такси и сажусь в него без кошелька. Приезжая до адреса назначения выясняется, что оплата наличкой:-) Было, мягко говоря, не очень комфортно оправдываться. Благо, таксист адекватный и я просто пополнил ему баланс телефона.
                                              • –1
                                                А почему Вы за знакомого платили не картой, на карте просто не было денег, или там есть правило, что клиент может платить только своей картой, а за него другие платить не могут?
                                                • 0
                                                  — Если вы не уловили разницу между друг/знакомый, то чтобы ее уловить, спрошу прямо — вы за всех знакомых оплачиваете проезд?

                                                  — Если это тонкий троллинг на тему отсутствия денег на карте, то тогда как бы я на следующий день пополнил баланс телефона? (надеюсь не будете дальше развивать тему, что баланс карты пополнился ночью)

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

                                                  По сабжу, смена возможности оплаты находясь в поездке это такой же полезный функционал, как и смена пункта назначения.
                                                  • 0
                                                    Да чего вы сразу так агрессивно-то. Я и не думал Вас троллить.
                                                    И ни на что не намекал.
                                                    Просто логика странная — значит, вы готовы заплатить за него наличными, но не готовы заплатить с карты, хотя технически никто не запрещает. Почему так? Всё равно ему потом Вам деньги возвращать так или иначе, и скорее всего, наличкой.
                                                    Хотя в целом с Вами согласен.
                                                  • 0
                                                    deleted.
                                                  • +1
                                                    Сменить способ оплаты до поездки точно можно, а вот после я ещё не проверил.

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

                                                    Вызвал ещё раз, указав карту и, не сворачивая приложение, смотрел как выбралась машина и тут выскочило окошко:
                                                    Способ оплаты был изменён на наличные. Повторить оплату картой вы сможете по завершении поездки.
                                                    Потом мне удалось сменить способ оплаты назад на карту.

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

                                                    И ещё выяснилось, что теперь есть повышающие коэффициенты, но в отличии от конкурентов, их не афишируют. Просто повышается цена поездки, а во сколько раз, не известно и нигде это не написано.
                                                    Сверху пишется мелким шрифтом поверх карты «Повышенный спрос», но это оповещение у меня появлялось только после выбора конечной точки. Пока Дмитрий не обратил моё внимание, я не видел этой надписи.
                                                    Цена видимо может расти в 2 и более раз, но тоже нигде не написано во сколько и по какому алгоритму. Я в одну сторону ехал за 370, а обратно по тому же маршруту на gett за 128.

                                                    Интересно сделано в uber, можно создать оповещение, о снижении цены, в некоторых случаях это может быть удобно.

                                                    И ещё момент — Яндекс единственный, кто принимает виртуальные карты. Остальные пишут, что карта недействительна и требуют реальный пластик.
                                                    • 0
                                                      Сверху пишется мелким шрифтом поверх карты «Повышенный спрос»

                                                      Прочитав ваш комментарий, поймал себя на мысли, что я все лето прокатался только на яндекс-такси и ни разу не видел заоблачных цен. С сентября же «повышенный спрос» каждый день: утром, в обед и вечером. И я все чаще начинаю пользоваться другими такси с которыми ездил раньше.
                                                  • +1
                                                    Было бы классно дать возможность добавлять машины в избранные и черные списки. Недавно ехал с одним упырем, так он посреди дороги остановился, что б по телефону поговорить. Не хотелось бы с ним больше встречаться. Были и очень приятные водители, их я готов подольше подождать даже
                                                    • +1
                                                      Для этого существуют оценки. Если поставить от 1 до 3 звезд, то появится сообщение «этот водитель к вам больше не приедет». При этом хорошим водителям не только 5 звезд можно ставить, но и дополнительно отблагодарить чаевыми (опять таки, если оплата картой).
                                                    • 0
                                                      Голосом вводить пункт назначения не проще ли?
                                                      • +2
                                                        • 0
                                                          Те же гугл-сервисы вполне прилично распознают голос.
                                                      • +1
                                                        Подскажите, почему приложение может догадаться, куда мне нужно ехать, но не может запомнить какой у меня подъезд?
                                                        • 0

                                                          Мне одному показалась дикой эта слежка за пользователем? Делайте эту фичу отключаемой + открытый пользователю доступ к собранной о нем информации, даже Гугл показывает и позволяет стереть/заблокировать историю перемещений. И не говорите про "обезличенность", все привязано к конкретному человеку, конкретной кредитке, конкретному MSISDN, и еще бог знает чему, что там собирается из телефона без ведома пользователя.

                                                          • 0
                                                            Даже добавление этой галочки ничего не решит. Где гарантия, что данные действительно удаляются, а не перемещаются в архив к которому нет доступа у пользователя?
                                                            • 0
                                                              Ну хотя бы это спасет от того случая, когда телефон попал не в те руки, и по этим логам-подсказкам можно вычислить точки перемещения его владельца.
                                                              А так — очень удобно для определенных целей, да. Человек сам помогает за собой шпионить.
                                                          • +1
                                                            Научите приложение вызывать водителей с детским креслом.
                                                            • 0
                                                              Надо ещё при прогнозировании поездки в календарик подглядывать и учитывать недавние телефонные звонки и смски. Если, конечно пользователь даст к ним доступ.
                                                              • 0
                                                                Достаточно неудобно, что точки места назначения предлагаются в Москве и дальнем Подмосковье одни и те же. Там, где приложение по идее должно бы мне предложить доехать до ж/д вокзала в райцентре, предлагается доехать сразу до дома в Москве и наоборот. Надеюсь, скоро как-нибудь разделите.

                                                                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                Самое читаемое