Автор: Чу Фэн, Тонг Хуэй
Резюме
В двух предыдущих статьях Сяньюй как представитель Alibaba раскрыл секреты «UI2CODE» и «Flutter» на конференции разработчиков Google 2018. В этой статье мы поделимся опытом и опытом Сяньюй в области TensorFlow.
На конференции разработчиков Google, которая завершилась 21 сентября, команда Xianyu приняла участие в конференции в качестве партнера Google, провела не только углубленный обмен мнениями с Google и отечественными разработчиками Flutter, но и с экспертом по развитию технологий Xianyu Чен Юнсинем в качестве партнера. Спикеры этой конференции поделились практикой применения конечных вычислений Xianyu на базе TensorFlow Lite. На стенде Xianyu также была представлена черная технология Xianyu, основанная на TensorFlow: UI2Code, что привлекло непрерывный поток разработчиков, которые пришли посмотреть.
Тренды TensorFlow
С момента своего выпуска в 2015 году TensorFlow стал наиболее широко используемой платформой машинного обучения в мире, предназначенной для широкого круга пользователей и вариантов использования. За этот период TensorFlow продвинулся вперед благодаря быстрому развитию вычислительного оборудования, исследованиям в области машинного обучения и коммерческому развертыванию.
Чтобы отразить эти быстрые изменения, на этой конференции разработчиков Google были представлены некоторые новые функции TensorFlow и lite с упором на простоту использования. Вот новые функции TensorFlow:
1. Стремительное выполнение, механизм динамического графа, позволяет напрямую выполнять графы, что будет более удобно для отладки.
Он также будет включен по умолчанию для будущих версий TensorFlow 2.0. Он лучше сочетает в себе ожидания пользователей от моделей программирования с TensorFlow и упрощает изучение и применение TensorFlow.
2. Поддержка большего количества платформ и языков, а также улучшение совместимости и паритета между этими компонентами за счет стандартизации форматов обмена и согласованности API.
3. Устаревшие API будут удалены, а количество повторений уменьшено, чтобы не путать пользователей.
4. Инструмент преобразования TensorFlow Lite добавляет квантование модели после обучения (квантование после обучения).
Для связанных моделей машинного обучения это может обеспечить 4-кратное сжатие и 3-кратное ускорение выполнения. Кроме того, модель в основном состоит из сверточных слоев, а скорость выполнения на 10-50% выше при снижении требований к памяти и вычислениям, а также ожидается снижение энергопотребления большинства моделей.
5. TensorFlow Lite переместился из каталога вклада в основной каталог и официально присоединился к основному проекту TensorFlow.
Применение TensorFlow Lite на клиенте Xianyu
Как клиент Xianyu использует TensorFlow Lite
Xianyu разработал фреймворк на основе TensorFlow Lite, который в основном настраивает три аспекта: масштабируемость, безопасность и динамичность.
1. Расширение:
Что касается масштабируемости, мы используем пользовательский OP TensorFlow Lite и интегрируем часть предварительной обработки данных, которая нам нужна, в качестве пользовательского OP в ту же модель, чтобы бизнес мог быть моделью, а бизнес можно было сохранить независимым.
2. Безопасность:
Модель шифруется с помощью пользовательского заголовка шифрования и других методов.При запуске модели происходит динамический анализ исходной модели, чтобы данные не попадали на диск, а безопасность данных обеспечивалась в наибольшей степени.
3. Динамический:
За счет динамической доставки моделей и ОП с сервера реализовано онлайн-обновление моделей и алгоритмов, что значительно облегчает требования тестирования оттенков серого и обновления алгоритмов.
Приложение 1: Обложка видео
В случае обложки видео, используя TensorFlow Lite, вы можете использовать модель ИИ в конце, чтобы делать то, что делал оригинальный традиционный алгоритм. В традиционном подходе, основанном на правилах, при выборе обложки для видео студенты-алгоритмы разрабатывают базовый алгоритм, а затем одновременно обрабатывают различные случаи и, наконец, выбирают обложку. В случае упущения и забывания необходимо выпустить алгоритм обновления, а стоимость обслуживания слишком высока. С моделью AI вы можете в любое время использовать оттенки серого и обновлять их, динамически выпуская модели и OP.
Приложение 2: видео отпечаток пальца
В этом случае показано более «альтернативное» использование TensorFlow Lite: использование его в качестве вычислительной среды. TensorFlow Lite сам по себе является фреймворком для вычислительных процессов, поэтому его можно использовать для поддержки характеристик пользовательских ОП, использовать каждое звено нашего алгоритма в качестве настраиваемого ОП, а затем использовать модель для «соединения» этих вычислительных звеньев. Таким образом, весь TensorFlow Lite стал естественной конечной вычислительной средой. Таким образом, может быть обновлена одна ссылка на расчет (пользовательский ОП), а весь процесс расчета может быть скорректирован в любое время (то есть модель скорректирована).
Приложение 3: Умное арендное жилье
Последний случай — это более традиционное использование TensorFlow Lite, в котором используется более популярная модель SSD.В процессе аренды он может автоматически идентифицировать мебель (холодильник, телевизор и т. д.) на картинке, чтобы автоматически маркировать дом публикуется пользователем. , что не только упрощает работу пользователя, но и обогащает информацию о продукте, предоставляя более эффективную информацию для фонового поиска данных и рекомендации.
Применение TensorFlow для повышения эффективности проекта Xianyu
UI2Code
Для ознакомления с UI2Code вы можете обратиться к предыдущей статье.«Какие черные технологии раскроют на конференции разработчиков Google».
В этом проекте показан процесс прямого создания кода пользовательского интерфейса из изображения. Изображение может быть визуальным выводом дизайнера или его можно получить, открыв программу на мобильном телефоне и сделав снимок экрана. Вот некоторые из вопросов, которые вас больше всего беспокоят:
1. В чем разница между «UI2Code» и «Sketch2Code», которые Microsoft только что открыла?
Sketc2Code фокусируется на том, как быстро превратить вдохновение дизайнеров в «примерный» UI-код, который можно понимать как творческий инструмент для дизайнеров, а сгенерированный код не предназначен для непосредственного использования в качестве онлайн-кода.
Наш UI2Code фокусируется на «точном» восстановлении на уровне пикселей 1: 1. Цель состоит в том, чтобы избавить разработчиков от повторяющихся механических работ по визуальному восстановлению и передать нетворческую повторяющуюся работу машине, чтобы разработчики могли уделить внимание более важным логическим задачам. вопрос. Код пользовательского интерфейса, который он генерирует, «близок к» готов к производству, и разработчикам нужно только выполнить некоторые привязки данных или незначительные настройки.
2. Как «UI2Code» использует TensorFlow?
На самом деле проект представляет собой сложный рабочий процесс, и на некоторых узлах процесса мы используем TensorFlow для выполнения задач глубокого обучения. Например, поскольку вход представляет собой чистое изображение без какой-либо другой информации, необходимо использовать глубокое обучение, чтобы «понимать» содержимое изображения, в том числе текст, изображение и т. д.
3. Предоставляете ли вы внешние услуги? Есть ли план с открытым исходным кодом?
В настоящее время этот инструмент используется Xianyu только внутри компании (на самом деле наша команда использует его уже некоторое время и запустила несколько страниц руководства по покупкам), и мы начнем рассматривать планы с открытым исходным кодом во второй половине года. . Поскольку в этом инструменте есть часть нашего собственного бизнеса, и у компании есть строгий процесс проверки и раскрытия открытого исходного кода, это займет некоторое время.Вы можете обратить внимание на наш публичный аккаунт: Xianyu Technology, и дальнейшие новости будут на в это время. Он будет опубликован выше как можно скорее.
Эпилог
На этой конференции Xianyu, как партнер Google, поделился и обменялся опытом Xianyu во Flutter и TensorFlow с большинством разработчиков.Мы надеемся, что вместе с большинством разработчиков мы продолжим исследовать и внедрять инновации на пути Технология движет бизнесом. Конечно, мы также жаждем талантов.Если вы тоже хотите сделать что-то очень "крутое", присоединяйтесь к Xianyu!
Доставка резюме: guicai.gxy@alibaba-inc.com