antony_w (antony_w) wrote,
antony_w
antony_w

Categories:

Как Uber применяет в бизнесе машинное обучение



Инженер-технолог Джамал Робинсон рассказал, как Uber удалось внедрить технологию машинного обучения и как компания применяет ее сейчас в бизнесе.

Uber Eats


Uber Eats – платформа для заказа и доставки еды, запущенная в 2014 году. Сервис использует модели машинного обучения для составления сотен прогнозов, чтобы оптимизировать обслуживание клиентов. Он делает это каждый раз, когда открывается приложение. Модели предлагают рестораны, блюда и примерное время доставки.



Прогнозирование

Вот какие прогнозы делает Uber:

* Пронозирование рынка. Прогнозирует спрос и предложение, чтобы направлять водителей в районы с высоким спросом еще до того, как он появится, таким образом увеличивая прибыль и число поездок.

* Планирование производительности оборудования. Прогнозирует требования аппаратной емкости для избежания сбоев в обслуживании.

* Маркетинг. Оценивает маргинальную эффективность разных каналов и следит за трендами, сезонностью и другими динамиками (например, конкуренцией или ценой).

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



Фото: Medium

Служба поддержки

Команда поддержки в Uber отвечает на тысячи тикетов (например, «забыл кошелек/телефон в машине»), ведь каждый день сервис осуществляет 15 миллионов поездок. Она использует модели машинного обучения для ускорения обработки и разрешения запросов.

Приблизительное время прибытия

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



Беспилотные автомобили

Системы беспилотных автомобилей Uber используют машинное обучение для определения объектов и планирования маршрута.

Цифровая трансформация бизнеса

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

Чтобы правильно внедрить машинное обучение, Uber учла критические факторы успеха в трех областях: использование технологии, процессы для управления цифровой трансформацией и организационная структура.

Знакомьтесь, Michelangelo

Успешно внедрить машинное обучение в бизнес Uber удалось при помощи своей продвинутой МО-платформы Michelangelo.

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

b>Рабочий процесс Michelangelo</b>

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

Стандартный рабочий процесс Michelangelo состоит из шести шагов:

* Управление данными.

* Обучение моделей.

* Оценка моделей.

* Деплой моделей.

* Прогнозирование.

* Отслеживание прогнозов.

Машинное обучение как разработка ПО

Команда Michelangelo придерживается принципа думать о машинном обучении как о разработке – то есть управлять платформой при помощи тех же итеративных, строгих, проверенных и методологических процессов, которые используются в разработке программного обеспечения. Чтобы удостовериться в том, что ПО работает правильно, важно провести всесторонние тесты перед деплоем и проверить софт в продакшене. Uber придерживается такого подхода и с МО.

Скорость разработки моделей



Фото: Medium

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

Ключевыми пунктами в рабочем процессе проекта машинного обучения Uber являются (1) определение проблемы, (2) создание прототипа решения, (3) реализация решения и (4) оценка эффекта решения. Вот несколько принципов, которые способствовали быстрой и эффективной работе команд:

* Решение проблем с данными (доступ, интеграция и так далее), чтобы аналитики не тратили на это свое время.

* Автоматизация или создание инструментов для ускорения текущих рабочих процессов.

* Ускорение процессов деплоя.

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

Структуризация организации для успешного принятия МО

Команды МО


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

Поэтому Uber пришлось серьезно обдумать распределение ограниченных экспертных ресурсов. Рассмотрим ключевые команды и то, как они работают над проектированием, разработкой и деплоем новых систем МО.

Команды, отвечающие за продукт

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

Группы специалистов

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



Фото: Medium

Команды, отвечающие за платформу машинного обучения

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

Исследования

В Uber есть команда исследователей, которые проводят исследования в области ИИ/МО и продвигают инновации в организации.

Процессы для повышения эффективности инструментов МО

Запуск


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

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

Планирование

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

Сообщество



Фото: Uber Engineering Blog

Чтобы масштабировать МО в большой компании, нужна сильная и сплоченная организационная структура. Поэтому Uber проводит каждый год конференцию UberML, на которой в последний раз представили свои доклады 500 сотрудников из 50 разных команд. Компания также проводит и другие внутренние мероприятия. Помимо этого, она активно взаимодействует и с внешним сообществом МО посредством конференций, докладов, проектов с открытым исходным кодом и исследований.

Образование

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

Заключение

Ключевые уроки, которые извлекла для себя Uber за последние три года:

* Нужно позволять разработчикам использовать инструменты, которые им нравятся.

* Данные – самая важная часть машинного обучения.

* Чтобы компоненты с открытым исходным кодом хорошо работали в широких масштабах, нужно приложить серьезные усилия.

* Нужно разрабатывать итеративно, опираясь на фидбек пользователей.

* Важно правильно структурировать команды.

* Необходимо с умом подходить к вопросу о всех областях, которые необходимы для принятия технологии МО в компании.

Напоследок: масштабировать машинное обучение очень сложно. Поэтому не будьте строги к себе, если у вас не получится все с первого раза.

Tags: технологии
Subscribe

Posts from This Journal “технологии” Tag

promo antony_w august 17, 2014 11:48 18
Buy for 10 tokens
Есть блог, в котором написано много постов про роботов: ссылка И там есть несколько статей о замене рабочих мест человека роботами: Уже к 2018 году роботы отберут у человека часть профессий Рабский труд без зарплаты Армия роботов: зачем она нужна обильной людьми Поднебесной и кому может…
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 0 comments