Окружающие нас гаджеты постоянно изучают нашу жизнь. Умные часы улавливают наши жизненные показатели, чтобы отслеживать наше здоровье. Домашние динамики слушают наши разговоры, чтобы распознавать наши голоса. Смартфоны играют в грамматику, наблюдая за тем, что мы пишем, чтобы исправить наши опечатки. Мы ценим эти удобства, но информация, которой мы делимся с нашими гаджетами, не всегда остается между нами и нашими электронными помощниками. Для машинного обучения может потребоваться мощное оборудование, поэтому «пограничные» устройства, такие как телефоны, часто отправляют необработанные данные на центральные серверы, которые затем возвращают обученные алгоритмы. Некоторые люди хотели бы, чтобы это обучение происходило на месте. Новый метод ИИ расширяет возможности обучения небольших устройств, потенциально помогая сохранить конфиденциальность.
Самые мощные системы машинного обучения используют нейронные сети, сложные функции, наполненные настраиваемыми параметрами. Во время обучения сеть получает входные данные (например, набор пикселей), генерирует выходные данные (например, метку «кошка»), сравнивает свои выходные данные с правильным ответом и корректирует свои параметры, чтобы в следующий раз добиться большего успеха. Чтобы знать, как настраивать, сеть должна помнить действие каждого варианта, но их количество регулярно исчисляется миллионами или даже миллиардами. Это требует много памяти.
Для обучения нейронной сети может потребоваться в сотни раз больше памяти, чем при простом использовании (это также называется «выводом»). В последнем случае памяти разрешается забыть, что делал каждый слой сети, как только она передает информацию следующему слою.
Чтобы уменьшить потребность в памяти на этапе обучения, исследователи применили несколько трюков. В одном, называемом пейджингом или разгрузкой, машина перемещает эти активации из кратковременной памяти в более медленный, но более емкий тип памяти, такой как флэш-память или SD-карта, а затем возвращает ее при необходимости. В другом, называемом повторной материализацией, машина удаляет активации, а затем вычисляет их снова. До сих пор системы сокращения памяти использовали один из этих двух приемов или, как говорит Шишир Патил , ученый-компьютерщик из Калифорнийского университета в Беркли., и ведущий автор статьи, описывающей инновацию, они были объединены с помощью «эвристики», которая является «субоптимальной» и часто требует много энергии. Инновация, о которой сообщил Патил и его сотрудники, формализует комбинацию пейджинга и рематериализации.
«Взять эти два метода, удачно скомбинировать их в этой задаче оптимизации, а затем решить ее — это действительно здорово», — говорит Джиаси Чен , ученый-компьютерщик из Калифорнийского университета в Риверсайде , который занимается граничными вычислениями.
В июле Патил представил свою систему под названием POET (частная оптимальная энергетическая тренировка) на Международной конференции по машинному обучению в Балтиморе. Сначала он сообщает POET технические детали устройства и информацию об архитектуре нейронной сети, которую он хочет обучить. Он определяет бюджет памяти и бюджет времени. Затем он просит создать тренировочный процесс, минимизирующий потребление энергии. Процесс может принять решение о выгрузке определенных активаций, которые было бы неэффективно пересчитывать, но рематериализовать другие, которые легко повторить, но для хранения которых требуется много памяти.
Одним из ключей к прорыву было определение проблемы как головоломки смешанного целочисленного линейного программирования (MILP), набора ограничений и взаимосвязей между переменными. Для каждого устройства и сетевой архитектуры POET вводит свои переменные в созданную Патилом вручную программу MILP, а затем находит оптимальное решение. «Основная задача состоит в том, чтобы сформулировать задачу так, чтобы ее можно было ввести в решатель», — говорит Чен. «Итак, вы фиксируете всю реалистичную системную динамику, такую как энергия, задержка и память».
Команда протестировала POET на четырех разных устройствах, включая тот, который вы можете найти в фитнес-трекере, и несколько виджетов, которые вы можете найти в модном смартфоне. На каждом из них они обучили три разные архитектуры нейронных сетей: два типа, популярные в распознавании изображений (VGG16 и ResNet-18), а также популярную сеть обработки языка (BERT). Во многих тестах система смогла сократить использование памяти примерно на 80 процентов без значительного увеличения энергопотребления. Сопоставимые методы не могут делать и то, и другое одновременно. По словам Патила, исследование показало, что теперь BERT можно обучать на самых маленьких устройствах, что раньше было невозможно.
Будьте в курсе в удобном формате, присоединяйтесь: TG-канал и ВК
Бесплатная служба распространения новостей для научных организаций и стартапов
hello@technovery.com