Аннотация: VEGA — это набор алгоритмов AutoML с полным процессом, разработанный лабораторией Huawei Noah’s Ark Lab. Он предоставляет базовые возможности для полной автоматизации машинного обучения, такие как поиск архитектуры, оптимизация гиперпараметров, улучшение данных и сжатие моделей.
Эта статья опубликована в сообществе HUAWEI CLOUD.«ВЕГА: Введение в коллекцию высокопроизводительных алгоритмов с открытым исходным кодом AutoML от Noah», Автор: kourei.
VEGA — это набор полнопроцессных алгоритмов AutoML, разработанных лабораторией Huawei Noah’s Ark Lab. Он предоставляет базовые возможности для полномасштабной автоматизации машинного обучения, такие как поиск архитектуры, оптимизация гиперпараметров, улучшение данных и сжатие моделей. В настоящее время большая часть интегрированных алгоритмов включена в полностековое решение искусственного интеллекта Huawei DaVinci CANN+ MindSpore.Некоторые простые тесты показывают, что оно имеет значительные преимущества по сравнению с графическими процессорами.Ожидается, что следующая версия Vega будет поддерживать DaVinci .
Как инструмент автоматического машинного обучения, предназначенный для исследователей и инженеров по алгоритмам, VEGA была выпущена в Huawei в декабре 2019 года и поддерживает автоматизацию нескольких команд в Noah (вычислительное видение, поиск рекомендаций и базовые исследования ИИ). Более 20 алгоритмов на соответствующих саммитах по ИИ (CVPR/ICCV/ECCV/AAAI/ICLR/NIPS). Ниже приводится введение в репрезентативный алгоритм AutoML этого открытого исходного кода:
Автоматизированный поиск сетевой архитектуры (NAS)
Эффективная схема поиска сети классификации (CARS) на основе аппаратных ограничений
В разных сценариях приложений ограничения вычислительных ресурсов различны, поэтому естественно существуют разные требования к результатам поиска. Кроме того, хотя метод NAS, основанный на эволюционном алгоритме, достиг хорошей производительности, каждое поколение выборок нуждается в переобучении для оценки, что сильно влияет на эффективность поиска. Учитывая недостатки существующих методов, в этой статье предлагается многокритериальный эффективный метод поиска структуры нейронной сети (CARS), основанный на непрерывной эволюции. CARS поддерживает оптимальный набор модельных решений и использует модели в наборе решений для обновления параметров в гиперсети. В процессе генерации популяции следующего поколения каждым эволюционным алгоритмом параметры сети могут быть напрямую унаследованы от суперсети, что эффективно повышает эффективность эволюции. CARS может получить серию моделей разных размеров и точности за один поиск, чтобы пользователи могли выбрать соответствующую модель в соответствии с ограничениями ресурсов в практических приложениях. Связанная работа, опубликованная в CVPR2020:АР Вест V.org/ABS/1909.04….
Облегченный поиск структуры сети со сверхвысоким разрешением (ESR-EA)
Ной предложил облегченный алгоритм поиска структуры сети со сверхвысоким разрешением, который создает эффективные базовые модули сети со сверхвысоким разрешением с точки зрения канала, свертки и масштаба признаков. Алгоритм основан на высокоэффективных модулях, нацеленных на количество параметров, количество вычислений и точность модели модели, и использует эволюционный алгоритм многокритериальной оптимизации для поиска облегченной структуры сети с супероценкой. Алгоритм может всесторонне сжать избыточность сети высшего подразделения с трех точек зрения: канала, свертки и масштаба признаков. Эксперименты показывают, что при том же количестве параметров или вычислений облегченная сеть с супероценкой (ESRN), найденная с помощью алгоритма, лучше, чем созданная вручную структура сети на стандартном тестовом наборе (Set5, Set14, B100, Urban100). (CARN и др.) лучшие результаты. Кроме того, алгоритм также может уменьшить объем вычислений при условии обеспечения точности алгоритма и соответствия ограничениям по задержке и энергопотреблению мобильных устройств. Связанные статьи, опубликованные на AAAI 2020:Woohoo.AA Love.org/papers/AA AI….
Схема поиска сетевой архитектуры сквозного обнаружения (SM-NAS)
Существующие модели обнаружения объектов можно разделить на несколько основных частей: магистраль, сеть слияния функций (шея), RPN и головка RCNN. Каждая часть может иметь разные модули и структурные конструкции, и важным вопросом является то, как сбалансировать вычислительные затраты и точность различных комбинаций. Существующие методы NAS для обнаружения объектов (NAS-FPN, DetNas и т. д.) сосредоточены только на поиске лучших конструкций отдельных модулей, таких как магистральные сети или сети слияния функций, игнорируя при этом общее рассмотрение системы. Чтобы решить эту проблему, в этой статье мы предлагаем двухэтапную стратегию поиска структурно-модульной нейронной сети, названную структурно-модульной NAS (SM-NAS). В частности, этап структурирования выполняет грубый поиск архитектуры модели, чтобы определить оптимальную архитектуру модели для текущей задачи (например, использование одноэтапного детектора или двухэтапного детектора, какой тип магистрали использовать и т. д.), и соответствие Введите размер изображения; на этапе модульного поиска магистральный модуль точно настраивается для дальнейшего повышения производительности модели. . В стратегии поиска мы приняли эволюционный алгоритм и одновременно рассмотрели двойную оптимальность эффективности модели и производительности модели и использовали сортировку без доминирования для построения фронта Парето, чтобы получить ряд сетевых структур, которые одновременно достигают оптимального мульти -цель. Кроме того, мы изучаем эффективную стратегию обучения, которая позволяет сети достигать более быстрой сходимости без предварительной подготовки imagenet, чем с предварительной подготовкой, что позволяет быстрее и точнее оценивать производительность любой магистрали. На наборе данных COCO искомая модель значительно опережала традиционную архитектуру обнаружения целей по скорости и точности, например, наша модель E2 удвоила скорость Faster-RCNN, а mAP достигла 40% (увеличение на 1%). ); Наша модель E5 аналогична по скорости MaskRCNN, достигая mAP 46% (улучшение на 6%). Связанная работа, опубликованная в AAAI2020:АР Вест V.org/ABS/1911.09….
Схема поиска архитектуры магистральной сети эффективной сети обнаружения (SP-NAS)
Мы используем методы поиска структуры нейронной сети (NAS) для автоматического проектирования магистральных сетей для конкретных задач, чтобы преодолеть разрыв между задачами классификации и обнаружения. Обычные детекторы объектов глубокого обучения обычно используют магистральную сеть, разработанную и обученную для задачи классификации ImageNet. Существующий алгоритм DetNAS превращает проблему поиска и обнаружения магистральной сети в предварительное обучение суперсети с разделением веса для выбора наилучшей структуры подсети. Однако эта предварительно определенная суперсеть не отражает фактический уровень производительности выбранных подструктур, и пространство поиска невелико. Мы надеемся разработать гибкую и ориентированную на задачи основу обнаружения с помощью алгоритма NAS: мы предлагаем двухэтапный алгоритм поиска (последовательный-параллельный поиск) под названием SP-NAS. В частности, этап последовательного поиска направлен на эффективный поиск последовательной последовательности с лучшим соотношением восприимчивых полей и выходных каналов в иерархии признаков с помощью алгоритма поиска «поменять местами, расширить, сфокусировать огонь»; затем этап параллельного поиска автоматически выполняет поиск и сборку нескольких подструктуры, а также созданную ранее магистральную сеть в магистральную сеть более мощной параллельной структуры. Мы проверили влияние SP-NAS на несколько наборов данных обнаружения, и искомая архитектура может достичь результатов SOTA, то есть максимальной производительности (LAMR: 0,042) в общедоступной таблице лидеров обнаружения пешеходов EuroCityPersons; она превосходит DetNAS и AutoFPN по точности и скорость. Связанная работа, опубликованная в CVPR2020:открытый доступ Tianhe City VF.com/content_CV P….
Автопоезд
Помимо метода регуляризации обучения Google (Disout)
Чтобы извлечь важные функции из заданного набора данных, глубокие нейронные сети обычно содержат большое количество обучаемых параметров. С одной стороны, большое количество обучаемых параметров повышает производительность глубоких сетей. С другой стороны, они приносят проблему переобучения. С этой целью методы на основе Dropout отключают определенные элементы в выходной карте признаков на этапе обучения, чтобы уменьшить совместную адаптацию между нейронами. Хотя эти методы могут повысить способность результирующей модели к обобщению, отсев, основанный на том, следует ли отбрасывать элементы, не является оптимальным решением. Поэтому мы изучаем эмпирическую сложность Радемахера, связанную с промежуточными слоями глубоких нейронных сетей, и предлагаем метод возмущения признаков (Disout) для решения вышеуказанных проблем. Во время обучения случайно выбранные элементы в карте признаков заменяются конкретными значениями путем исследования верхней границы ошибки обобщения. Эксперименты показывают, что предлагаемый нами метод возмущения карты объектов имеет более высокую точность тестирования на нескольких наборах данных изображений. Связанные работы, опубликованные на AAAI 2020:АР Вест V.org/ABS/2002.11….
Использование дистилляции знаний для подавления шума при автоматическом дополнении данных (KD+AA)
Идея этого алгоритма состоит в том, чтобы решить некоторые недостатки самого метода автоматического увеличения данных (AA). АА заключается в поиске наилучшей стратегии улучшения данных для всего набора данных.Хотя АА может сделать данные более дифференцированными и улучшить производительность окончательной модели с глобальной точки зрения, но АА является относительно грубым, а не единичным.Изображение оптимизировано, поэтому будет определенная линия обороны относительно. Когда сила улучшения данных относительно велика, легко внести семантическую путаницу в некоторые изображения (то есть семантика изображения изменяется из-за чрезмерного устранения дискриминационной информации. Это то, что мы называем семантической путаницей. Очевидно, в процессе обучения модели В настоящее время нам нецелесообразно использовать предыдущие метки лисы в качестве руководства по ограничению.Чтобы решить эту проблему, мы используем метод дистилляции знаний (KD) для создания мягких меток с помощью предварительно обученной модели, которая может направлять AA Какой должна быть лучшая метка для изображения изображения. Этот алгоритм прост и эффективен, и после объединения с большой моделью он достиг текущей производительности 85,8% на ImageNet. Соответствующий документ был опубликовано в ECCV 2020:АР Вест V.org/ABS/2003.11….
Автоматическая генерация данных (AutoData)
Недорогая схема сбора данных для улучшения изображения на основе генеративных моделей (CylceSR).
В конкретной задаче улучшения изображения (в качестве примера возьмем супер-оценку), поскольку получить парные данные в реальных сценах сложно, большинство академических кругов используют синтетические парные данные для исследования алгоритмов.Алгоритмические модели часто плохо работают в реальных сценах. Чтобы решить вышеуказанные проблемы, мы предлагаем новый алгоритм: этот алгоритм использует синтетические изображения низкого качества в качестве моста и дополняет домен синтетического изображения до домена изображения реальной сцены посредством неконтролируемого преобразования изображения, в то время как преобразованные изображения используется для наблюдения за обучением сети увеличения изображения. Алгоритм достаточно гибок, чтобы интегрировать любую неконтролируемую модель преобразования и модель изображения. Этот метод обеспечивает лучшее обучение с деградацией и высокую производительность за счет совместного обучения сети перевода изображений и контролируемой сети в сотрудничестве друг с другом. Предлагаемый метод обеспечивает хорошую производительность в наборах данных NTIRE 2017 и NTIRE 2018 и даже сравним с контролируемыми методами; метод был принят командой AITA-Noah в соревновании NTIRE2020 Real-World Super-Resolution и в треке 1. Занял первое место в IPIPS и второй в MOS. Связанные документы, опубликованные на семинаре CVPR 2020 по NTIRE:открытый доступ Tianhe City VF.com/content_CV P….
Автоматическое сжатие сети (AutoCompress)
Автоматическое сжатие нейронной сети на основе стратегии эволюции
Эта технология предназначена для автоматического сжатия нейронных сетей.Начиная с точности распознавания, объема вычислений, объема памяти, скорости работы и других показателей модели сжатия, для сжатия нейронной сети гибридным битом используется эволюционный алгоритм многокритериальной оптимизации. квантование и разреженная обрезка.Выполняется поиск оптимальных гиперпараметров сжатия каждого слоя и получается набор недоминируемых решений, содержащий несколько моделей сжатия с отличной производительностью, которые могут удовлетворить разные потребности пользователей по разным показателям. Эта технология подходит для высокопроизводительных облачных серверов и мобильных устройств со слабой вычислительной производительностью.Для высокопроизводительных облачных серверов она может предоставить модели с высокой точностью алгоритма и в определенном диапазоне вычислений и потребления памяти.Для мобильных устройств она может быть гарантировано на основе точности алгоритма Сократите потребление вычислительных ресурсов и памяти, чтобы соответствовать ограничениям по задержке и энергопотреблению мобильных устройств. Связанные статьи, опубликованные в KDD 2018:woohoo. см. org/see2018/ACC….
Первоначальная стабильная версия этого выпуска с открытым исходным кодом будет по-прежнему включать самые передовые алгоритмы в будущем, добавляя поддержку новых алгоритмов и DaVinci. Адрес в открытом доступе:GitHub.com/Huawei-Ноа…, попробуйте и дайте отзыв.
Вега имеет следующие преимущества:
-
Зоопарк высокопроизводительных моделей:Предустановлено большое количество ведущих моделей глубокого обучения Noah, обеспечивающих наилучшие модели производительности для таких наборов данных, как ImageNet/MSCOCO/NuScenes/NITRE. Эти модели представляют собой последние исследования Ноя в области исследований AutoML и могут использоваться напрямую:GitHub.com/Huawei-Ноа….
-
** Оптимизация модели аппаратного сходства: ** Для достижения аппаратного сходства Vege определяет модуль Evaluator, который можно напрямую развернуть на устройстве для логического вывода и который поддерживает одновременную работу нескольких устройств, таких как мобильные телефоны и чипы Davinci.
-
**Эталонное воспроизведение:** предоставляет инструменты для эталонного тестирования, которые помогут вам воспроизвести алгоритм, предоставленный Vega.
-
** Поддерживает несколько ссылок в жизненном цикле глубокого обучения и выполняет гибкие вызовы на основе организации конвейера: ** Встроенные компоненты, такие как поиск архитектуры, оптимизация гиперпараметров, проектирование функции потерь, расширение данных и полное обучение, каждый компонент называется шаг, вы можете соединить несколько шагов последовательно, чтобы сформировать комплексное решение, которое удобно для всех, чтобы экспериментировать с различными идеями, улучшать диапазон поиска и находить лучшие модели.
Наконец, VEGA предоставляет большое количество примеров документов, которые помогут разработчикам быстро приступить к работе. Полные документы на китайском и английском языках см. по адресу:GitHub.com/Huawei-Ноа….
Нажмите «Подписаться», чтобы впервые узнать о новых технологиях HUAWEI CLOUD~