Автор Лин Чонг.

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

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

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

Что делает Alibaba

Команда автономной аналитики Академии DAMO компании Alibaba и Лаборатории машинного интеллекта начала работать в области автономного ИИ в конце 2016 года, начиная с алгоритмов, проектирования, производства и бизнес-реализации технологии. На данный момент команда сделала несколько крупных прорывов вместе с партнерами Alibaba. Что касается алгоритмов, мы предложили разработанный нами метод сжатия модели, новую структуру модели и систему обнаружения целей. С точки зрения инженерии, мы также разработали набор инструментов для обучения квантованию, не зависящих от данных, а также эффективную базу данных логических вычислений для различных аппаратных платформ. Мы также работали с командой разработчиков серверов над абстрагированием решения для программного и аппаратного продукта и развернули это решение в реальных бизнес-сценариях, предоставив разнообразные услуги.

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

Алгоритмы

Низкобитовое квантование на основе метода множителей переменного направления (ADMM)

Низкобитовое квантование является основной проблемой в сжатии моделей и ускорении вывода. Он направлен на количественное определение исходных параметров с плавающей запятой в нейронной сети до 1–8 бит, чтобы уменьшить размер модели и потребление вычислительных ресурсов. Для решения этой проблемы мы предложили решение низкобитового квантования на основе Метода множителей переменного направления (ADMM). В общедоступном наборе данных ImageNet мы провели эксперименты с классическими сетевыми структурами CNN, такими как AlexNet, ResNet-18 и ResNet-50. В результате его точность и скорость превзошли известные алгоритмы. Мы можем добиться сжатия почти без потерь при 3-битном квантовании. В настоящее время этот метод широко используется в различных реальных проектах по обнаружению объектов и распознаванию изображений на терминале. Соответствующие выводы были опубликованы на AAAI 2018.

Единая платформа квантования и обрезки

Технология квантования может ускорить вывод за счет упрощения вычислительного блока, заменив вычислительный блок с плавающей запятой на вычислительный блок с фиксированной запятой. Технология обрезки снижает фактическую вычислительную нагрузку за счет сокращения путей в нейронной сети. Естественно, мы объединяем обе технологии, чтобы получить максимальный теоретический коэффициент ускорения. В процессе обрезки мы применяем прогрессивный метод обучения и объединяем информацию о градиенте, чтобы определить важность пути в сети. В структуре ResNet мы можем добиться сжатия почти без потерь при разреженности 90%.

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

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

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

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

  • Что касается совместной разработки аппаратного и программного обеспечения, мы предлагаем гетерогенную структуру с несколькими ветвями для физических характеристик оборудования, чтобы максимизировать параллельную эффективность.
  • Что касается алгоритмов, мы используем такие технологии, как квантование, сокращение и дистилляция знаний, чтобы снизить теоретическую вычислительную нагрузку до 18% от исходной модели.
  • Что касается аппаратного обеспечения, мы используем технологию заполнения оператором для решения проблемы пропускной способности, вызванной сокращением вычислений, и используем технологию перетасовки операторов для балансировки нагрузки PE.

В предыдущем решении задержка завершения вывода модели сложности ResNet-18 составляет всего 0,174 мс, что является лучшим показателем в отрасли. Это решение дает значительные преимущества для чувствительных к задержке полей. Соответствующие выводы были продемонстрированы на HotChips 30.

Новая облегченная сеть

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

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

Новая сеть, которую мы предложили, хорошо подходит для работы на обычном оборудовании, поскольку каждая единица интенсивно выполняет вычисления и не требует чрезмерных операций фрагментации. В общедоступном наборе данных ImageNet при вычислительной мощности 40 MFLOPS абсолютная точность на 2% выше, чем у ShuffleNetV2, известной как лучшая структура в отрасли.

Платформа обнаружения объектов на терминале

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

  • Упрощает головку SSD и использует общий уровень прогнозирования для разработки сплава;
  • Интегрирует регрессию ограничивающей рамки (BB) в форму информационного каскада в различных масштабах;
  • Выполняет полную количественную оценку модели обнаружения.

Как показано в предыдущей таблице, при одинаковой магистральной сети предложенный LRSSD может стабильно увеличивать mAP на 3-4% при одновременном снижении вычислительной нагрузки на головку SSD. С другой стороны, наш метод может уменьшить сложность модели примерно на 50% без изменения точности обнаружения. Учитывая бонус к скорости, полученный за счет количественного определения, при той же точности мы можем получить реальное увеличение скорости примерно в 2–3 раза выше, чем исходная модель полной точности.

Резюме

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

  • Количественная оценка: мы можем добиться сжатия почти без потерь при 3-битном квантовании.
  • Сокращение: для традиционных сетевых структур мы можем добиться сжатия почти без потерь при разреженности 90%.
  • Совместное проектирование аппаратного и программного обеспечения: мы работаем с группой разработчиков серверов, чтобы достичь максимальной скорости вывода ResNet-18 0,174 мс на изображение, что в настоящее время является лучшим показателем в отрасли.
  • Облегченная конструкция сети: при вычислительной мощности 40 MFLOPS мы увеличили абсолютную точность набора данных ImageNet на 2 % по сравнению с лучшей структурой в отрасли.
  • Обнаружение объектов на терминале: мы можем увеличить скорость примерно в 2–3 раза без изменения точности.

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

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

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

Инструменты обучения

В реальном процессе продвижения услуг первая проблема заключается в простоте использования:

  • Различные сервисы часто используют диверсифицированные библиотеки глубокого обучения, такие как Caffe, TensorFlow и MXnet.
  • Базовые технологии, используемые разными службами, сильно различаются. Эти базовые технологии включают классификацию и распознавание, обнаружение, сегментацию и речь.
  • Уровни безопасности данных различных сервисов сильно различаются. Некоторые из них могут быть обнародованы, а другие требуют полной физической изоляции.

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

Во-первых, как показано на предыдущем рисунке, наш инструмент поддерживает входные данные в нескольких форматах моделей, таких как TensorFlow, Caffe и MXNet. Во-вторых, мы предоставляем два разных метода квантования модели. Одним из них является метод сжатия данных, который поддерживает различные задачи, такие как классификация, обнаружение и сегментация. Этот метод применим к сервисам, которые менее требовательны к безопасности данных, но требовательны к точности. Другой метод сжатия не зависит от данных. Этот метод применим к сценариям, в которых требования к безопасности данных высоки, но логика службы менее сложна.

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

В настоящее время этот инструмент широко используется в нескольких сценариях автономных услуг в Alibaba Group в качестве инструмента квантования, рекомендованного MNN.

Платформы вывода

Второй проблемой на практике является реальная скорость вывода. В конце концов, одной простоты использования недостаточно. Фактический эффект обслуживания наиболее востребован. Здесь мы используем схемы логического вывода, предоставленные другими командами Alibaba Group:

  • Архитектура ARM: мы используем MNN, разработанную технической командой Taobao, в качестве основы для вывода.
  • Архитектура графического процессора: мы используем библиотеку свертки falcon_conv, разработанную технической командой по машинному интеллекту, в качестве основы для логического вывода.
  • Архитектура FPGA: мы используем структуру логического вывода, разработанную командой разработчиков серверов.

Мобильная нейтральная сеть (MNN)

Мобильная нейтральная сеть (MNN) — это легкий механизм глубокого обучения на стороне мобильных устройств, который фокусируется на запуске и выводе моделей глубокой нейтральной сети. MNN охватывает оптимизацию, преобразование и вывод моделей глубокой нейтральной сети. В настоящее время MNN используется более чем в 20 приложениях, включая Mobile Taobao, Mobile Tmall, Youku, Juhuasuan (聚划算), UC, Fliggy и Qianniu (千牛). В качестве тестовых образцов используются распространенные модели глубоких нейронных сетей, такие как MobileNet V2 и SqueezeNet V1.1. Для системы Android (взяв в качестве примера Xiaomi 6) ЦП и ГП MNN как минимум на 30% опережают аналогичные продукты в отрасли. Для системы iOS (в качестве примера возьмем iPhone 7) процессор и графический процессор MNN как минимум на 15% опережают другие аналогичные продукты в отрасли.

Программируемые пользователем вентильные матрицы (FPGA)

Структура логического вывода по программируемым пользователем вентильным матрицам (FPGA) завершена командой разработчиков сервера. Время вывода ResNet-18 составляет 0,174 мс на изображение, что в настоящее время является лучшим показателем в отрасли. Продукт для граничных вычислений, Alibaba Edge, реализует эффективные операторы на основе аппаратного обеспечения, а его скорость логического вывода в два раза выше, чем у граничного графического процессора. Это решение позже будет представлено в виде формы продукта.

графический процессор

Falcon_conv — это библиотека свертки с низкой точностью, разработанная технической командой машинного интеллекта с использованием CUDA C++ и работающая на графическом процессоре NVIDIA. Он принимает использование двух тензоров низкой точности (int8) в качестве входных данных и выводит результат свертки в виде данных с плавающей запятой или int32. Кроме того, falcon_conv поддерживает слияние некоторых общих операций после свертки, таких как Scale, BatchNorm и ReLU. На одном графическом процессоре Tesla P4 мы сравнили производительность falcon_conv с cuDNN v7.1, официальной вычислительной библиотекой NVIDIA, как показано на рисунке. Почти во всех случаях falcon_conv лучше, чем cuDNN. В некоторых отдельных случаях falcon_conv даже улучшается до пяти раз. Варианты использования выбираются из параметров свертки, которые занимают много времени в ResNet и VGG.

Продуктизация

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

Умная коробка

Первое решение, которое мы предлагаем, — это смарт-бокс. Мы можем просто использовать смарт-бокс в качестве пограничного сервера, подходящего для сценариев малого и среднего масштаба. Сама коробка предоставляет несколько интерфейсов, к которым можно подключать внешние датчики, такие как USB- или IP-камеры и голосовые модули. Коробка поддерживает прямое локальное развертывание и отличается высокой безопасностью данных. Мы предоставляем две версии смарт-боксов (высокую и низкую) в зависимости от характеристик обслуживания. Высококачественная версия использует продукт собственной разработки Alibaba для периферийных вычислений, Alibaba Edge. В дополнение к продуманному аппаратному дизайну и эффективной структуре логического вывода, коробка также содержит полную поддержку компилятора и очень проста в использовании. Младшая версия представляет собой чистую коробку ARM. В следующей таблице перечислены производительность, стоимость и применимые сценарии обоих выпусков коробок.

Здесь мы сосредоточимся на Alibaba Edge, продукте для граничных вычислений, разработанном Alibaba. В дополнение к вычислительной мощности искусственного интеллекта до 3 TGFLOPS, Alibaba Edge имеет значительное преимущество в цене по сравнению с решением для периферийных графических процессоров. Кроме того, Alibaba Edge поддерживает функцию интегрированного развертывания в облаке. Этот основанный на платформе продукт может быть быстро запущен и поддерживает крупномасштабные операции по эксплуатации и техническому обслуживанию.

В следующей таблице мы сравниваем время работы LRSSD300 + MobileNetV2 на разных аппаратных устройствах, чтобы дать вам более интуитивное представление.

Встроенная камера

Еще одно интеграционное решение, которое мы предлагаем, — это встроенная камера. Встроенная камера особенно подходит для режима развертывания «облако + терминал». Он выполняет относительно простые функции обработки на терминалах и выполняет глубокую обработку информации, возвращаемой терминалами в облаке. Это экономит пропускную способность и снижает затраты на облако. Кроме того, встроенная камера удобна в развертывании и имеет явное преимущество в стоимости после массового производства. Сегодня встроенная камера используется в качестве важного носителя в проектах сотрудничества Alibaba Group.

Бизнес-модели

За последние два года мы попробовали разные бизнес-модели. Несколько примеров в различных формах приведены ниже:

Парк будущего Кайняо

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

В процессе сотрудничества по проекту мы обнаружили, что высокая стоимость вычислительных блоков является одной из основных причин, сдерживающих широкое продвижение алгоритмов. Чтобы решить эту проблему, мы работали с командой разработчиков серверов над разработкой индивидуального программного и аппаратного решения. В этом решении используется аппаратная платформа Alibaba Edge, а также специально настроенная эффективная структура модели и собственный алгоритм быстрого обнаружения. В то время как точность обнаружения нового решения практически без потерь, скорость вывода увеличена в 4-5 раз, а стоимость на 50% ниже, чем у граничного решения на GPU.

Ускорение сжатия модели

Мы помогли различным бизнес-подразделениям Alibaba Group выполнить оптимизацию квантования и ускорение существующих моделей алгоритмов. Примеры включают OCR мобильного телефона, обнаружение объектов мобильного телефона, аутентификацию реального человека, вход в систему по лицу и аутентификацию Mobile Taobao, самоподъемный шкаф Cainiao, вход на спортивные мероприятия Alibaba со сканированием лица и облачный альбом распознавания лиц Shenzhouying (神州鹰). .

Заключение и перспективы

После двух лет упорных усилий группа автономной аналитики Alibaba Machine Intelligence Lab активно занимается офлайн-аналитикой. Алгоритмы: мы накопили некоторый опыт в низкобитовом квантовании, сокращении, совместном проектировании аппаратного и программного обеспечения, облегченном дизайне сети и обнаружении объектов на терминале. Многие показатели оказались лучшими в отрасли. Инжиниринг: мы разработали набор обучающих инструментов, отличающихся высокой гибкостью и безопасностью данных. С помощью наших партнеров средства обучения продемонстрировали лучшую в отрасли производительность логического вывода на платформах ARM, FPGA и GPU. Продуктизация: вместе с нашими партнерами мы разработали смарт-боксы и интегрированные решения для камер, которые подходят для различных сценариев обслуживания. Наконец, нам повезло, что мы можем дополнительно совершенствовать наши технологии в различных сценариях обслуживания внутри и за пределами Группы.

Оригинальный источник