Найти тему
Планетные истории

Исследование низкоточных параметров моделирования

Оглавление

Введение

История вопроса: Современные высокопроизводительные глубокие нейронные сети (ГНН) для приложений компьютерного зрения состоят из нескольких слоев и включают в себя множество параметров.

Эти сети имеют требования к вычислениям O(GigaFLOPS) и генерируют модели, которые являются O(мегабайтами) в хранилище (2016). Кроме того, требования к памяти и вычислениям во время тренировок и выводов весьма различны (2017).

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

Из-за сложности вычислений, памяти и требований к хранению данных, фаза обучения сети выполняется на CPU или GPU кластерах в среде распределенных вычислений.

https://www.shutterstock.com/ru/image-illustration/2d-rendering-cloud-computing-concept-710262001?id=710262001&irgwc=1&utm_medium=Affiliate&utm_campaign=Eezy%2C%20LLC&utm_source=38919&utm_term=photopin
https://www.shutterstock.com/ru/image-illustration/2d-rendering-cloud-computing-concept-710262001?id=710262001&irgwc=1&utm_medium=Affiliate&utm_campaign=Eezy%2C%20LLC&utm_source=38919&utm_term=photopin

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

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

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

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

Сетевая архитектура студенческой сети, как правило, отличается от архитектуры педагогической сети - например, Хинтон и др. (2015) исследуют студенческую сеть, которая содержит меньше нейронов в скрытых слоях по сравнению с педагогической сетью.

Мы называем наш подход "Ученик" и изучаем три схемы, в рамках которых создаются низкоточные сети, использующие методы дистилляции знаний. Каждая из этих трех схем обеспечивает ультрасовременную трехмерную точность и 4-битную точность моделей.

Исследование низкоточных параметров моделирования

Снижение точности параметров модели: Системы вывода с ограниченными ресурсами налагают существенные ограничения на память, вычисления и бюджет энергопотребления.

В отношении хранения, параметры модели (или веса) и карты активации занимают память на этапе вывода DNN. Во время этой фазы память выделяется для карт характеристик входов (IFM) и выходов (OFM), необходимых для одного слоя DNN, и эти динамические распределения памяти повторно используются для других слоев.

Общее распределение памяти во время вывода - это максимум IFM и максимум требуемой памяти OFM для всех уровней плюс сумма всех тензоров веса. Если фаза вывода для DNN выполняется с небольшим размером пакета, занимаемая память весов превышает площадь, указанную на картах активации.

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

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

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

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

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

Недостатком низкоточных моделей, однако, является ухудшение точности.

Запуск службы

Низкоточные сети: Низкоточные ДНН - это активная область исследований. Большинство сетей с низкой точностью признают избыточную параметризацию современных DNN структур и тот факт, что снижение точности нейронов после тренировки часто не влияет на конечную производительность.

Снижение точности взвешивания для эффективного трубопровода выводов было очень хорошо изучено. Такие работы, как бинарное соединение (BC) (2015), сети с большим количеством микросхем (TWN) (Li & Liu, 2016), мелкозернистое квантование (2017) и INQ (2017) направлены на точное снижение веса сети.

На точность почти всегда влияет количественная оценка значений веса, значительно ниже 8 бит точности. Для AlexNet в ImageNet TWN теряет точность на 5% Топ-1.

Работа в XNOR-NET (2016), бинарных нейронных сетях (2016), DoReFa (2016) и обученной троичной квантовании (TTQ) (2016) направлена на обучение.

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

Подход XNOR-NET снижает точность Top-1 на 12% и DoReFa на 8% при количественной оценке веса и активации до 1 бита (для AlexNet в ImageNet).

Работа Гупты и др. (2015) выступает за низкую точность фиксированных показателей для обучения. Они показывают, что 16 бит достаточно для обучения работе с набором данных CIFAR10.

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

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

Бичилуа и др. (2006) показывают, что информацию в ансамбле можно сжать в единую сеть.

В работе Ba & Caurana (2013) этот подход распространяется на изучение поверхностных, но широких, полностью связанных топологий путем имитации глубоких нейронных сетей.

Обрезание приводит к полному удалению нейронов из окончательной тренированной модели, что делает модель редкой структурой.

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

-2