Помимо того, что ИИ и глубокое обучение являются модным словом или технологическим прорывом, они стали важным фактором устойчивого роста планеты, который часто называют «ИИ для устойчивого развития». Но в этой статье я сосредоточусь на другой стороне медали и попытаюсь раскрыть вопрос, насколько устойчиво глубокое обучение? то есть «Устойчивость ИИ».

Устойчивость! Что это за суета?

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

Цели устанавливают ключевые параметры того, насколько люди, организации, технологии, страны и т. д. несут ответственность за планету. Рисунок 1 взят с сайта ООН.

«ИИ для устойчивого развития» в различных отраслях промышленности

Как показано на рис. 2, ИИ оказывает огромное влияние на каждую отрасль. Например, недавно, в 2016 году, в известной статье Deep Mind упоминалось, что Google сократил расходы на охлаждение своего центра обработки данных на 40 % благодаря использованию ИИ. Оптимизация маршрутов на основе ИИ в сфере транспорта и логистики позволила снизить расход топлива в таких компаниях, как Amazon. А обнаружение отходов объектов на основе CNN использовалось в управлении отходами и их сортировке.

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

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

Теперь давайте посмотрим на другую сторону истории…

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

  • Согласно форуму OpenAI.com: объем вычислений, необходимых для самых масштабных обучающих запусков ИИ, с 2012 года увеличился в 300 000 раз, как показано на рис. 3. Легко заметить, что потребности в вычислительной мощности для таких моделей, как AlexNet, в 2012 году были диапазона однозначных Terra-flops по сравнению с AlphaGo Zero текущего возраста находится в диапазоне 3000 петафлопсов. Мы говорим, что за последние шесть лет модель стала в 300 000 раз более энергоемкой, а также способствует большому выбросу углерода как во время обучения, так и при выводе.

  • Давайте теперь посмотрим на языковые модели и очень известную серию моделей GPT. Модель GPT-3 была обучена на в 100 раз больше параметров
    (175 миллиардов), чем ее предшественница GPT-2 (1,5 миллиарда параметров), и для хранения этих многих параметров требовались пропорционально более высокие вычислительные мощности и ресурсы больших данных. Было предсказано, что GPT-4 будет иметь 100 триллионов параметров, что в 500 раз больше, чем у самой большой модели на Земле. Ссылка: документ https://arxiv.org/abs/2005.14165

В Известной статье Струбле и Ганеша подчеркивается, что обучение модели перевода НЛП на основе поиска нейронной архитектуры трансформатора (NAS) приводит к выбросу CO2, который эквивалентен выбросу углерода за весь срок службы 5 автомобилей вместе взятых.

Как мир реагирует?

Стоимость, которую мы платим за получение преимуществ ИИ, нельзя игнорировать. Это привело к мотивации «устойчивости ИИ», которую часто называют «зеленым ИИ».

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

Вопросы, поднятые зеленым ИИ

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

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

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

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

Теперь посмотрите все это в действии!

Реализация мечты о Зеленом ИИ — это многоэтапный процесс, но не обязательно последовательный. На рисунке ниже показаны различные меры, которые нам необходимо предпринять, чтобы получить значок «Зеленый ИИ» для нашей отрасли.

Мы, как ответственные ученые и разработчики ИИ, можем избежать распространенных ошибок, которые приводят к увеличению углеродного следа. Было проведено много исследований по предоставлению лучших практик, и благодаря открытым сообществам, таким как Paper with Code, весь исследовательский код также демократизирован для легкого доступа. Каждый разработчик/ученый может прочитать огромное количество исследований, проведенных в этой области, и воспользоваться ими, чтобы избежать ошибок и повысить эффективность.

Знаете ли вы, сколько инженерных часов можно сэкономить, внедрив стратегию MLOps? Мы делаем. Узнай больше сегодня.

Инструменты и методы для более экологичного ИИ

Лучшим инструментом на данный момент является Code Carbon, легкая библиотека Python с открытым исходным кодом. Эта библиотека помогает отслеживать энергопотребление в зависимости от местоположения вашего кода машинного обучения. Эта библиотека с открытым исходным кодом также обеспечивает хорошую визуализацию для анализа кода для лучшей оптимизации.

Перенос обучения

Трансферное обучение — интересная область, которая продвигает повторное использование и следует принципу СУХОЙ. Трансферное обучение — это метод, при котором модель глубокого обучения, обученная на большом наборе данных, в основном крупными организациями, такими как Google/Facebook и т. д., используется для выполнения аналогичных задач на другом наборе данных.

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

Методы оптимизации

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

Квантование — это математический метод представления чисел с плавающей запятой (32–64 бита) в квантованные целые числа (8–16 бит). Это значительно улучшает производительность обучения модели (время) за счет уменьшения объема пространства, необходимого нейронной сети для хранения весов, смещений, входных и выходных векторов.

Ниже приведены некоторые результаты тестов, опубликованные TensorFlow, по квантованию, точности и размеру модели. Вы заметите, что квантованная модель составляет 1/4 размера с приличной точностью по сравнению с неквантованными моделями.

Объединение узлов и горизонтальное слияние

Чтобы лучше использовать аппаратное обеспечение и сократить время обучения, используются горизонтальные объединенные обучающие массивы для объединения нескольких операций в сгруппированные операции. Концепция HFTA взята из очень популярной исследовательской работы Zheng et al. На рис. 14 показано, что слияние операторов из семейства (де)свертки (например, Conv2d или ConvTranspose1d) эквивалентно их сгруппированным (де)сверточным аналогам путем конкатенации (1) входных данных по измерению канала и (2) весов ( фильтры) и смещения по размерности выходного канала.

Быстрые свертки

OpenVINO — это подход к уменьшению перекрывающихся операций свертки MAC-фильтров в CNN. Алгоритм WinoGuard — это популярный способ оптимизации свертки и сокращения операций почти в 1,5 раза по сравнению с базовой CNN. Многие библиотеки, такие как Intel OpenVino, предоставляют такие оптимизированные алгоритмы для повышения скорости обучения CNN и, следовательно, производят меньше выбросов углерода.

Оптимизация оборудования — аппаратное обеспечение домена

Типичный TPU содержит ALU (арифметико-логическое устройство), которое отвечает за выполнение операций MAC (умножение и накопление). Он имеет массив элементов обработки PE, который объединяет файлы ALU и Reg Files в массивы для параллелизма.

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

Доступ к DRAM в 200 раз медленнее, чем доступ к Reg File, и в 100 раз медленнее, чем обмен данными в PE-массивах. Поэтому, если вы оптимизируете модель с помощью вышеуказанных подходов, вы можете уменьшить объем доступа к данным.

Стационарные веса и стационарная архитектура строк

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

Архитектура Айерисс

Это пространственный массив PE, в котором каждый PE имеет отдельный файл регистрации и позволяет обмениваться данными между PE.

Ключевыми особенностями Eyeriss являются (отрывок из MIT 2017.01 JSSC Eyeriss Design):

  1. Пространственная архитектура, использующая массив из 168 процессорных элементов (PE), который создает четырехуровневую иерархию памяти. Перемещение данных может использовать низкозатратные уровни, такие как блокноты PE (spads) и обмен данными между PE, чтобы свести к минимуму доступ к данным на высокозатратных уровнях, включая большой встроенный глобальный буфер (GLB) и внечиповая DRAM.
  2. Поток данных CNN, называемый Row Stationary (RS), который реконфигурирует пространственную архитектуру для сопоставления вычислений заданной формы CNN и оптимизации для наилучшей энергоэффективности.
  3. Архитектура «сеть на кристалле» (NoC), которая использует как многоадресную, так и двухточечную доставку данных за один цикл для поддержки потока данных RS.
  4. Сжатие длин серий (RLC) и стробирование данных PE, которые используют статистику нулевых данных в CNN для дальнейшего повышения энергоэффективности.

Краткое содержание

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

Рекомендации

  1. https://sdgs.un.org/goals
  2. https://deepmind.com/blog/article/AlphaFold-Using-AI-for-scientific-discovery
  3. https://arxiv.org/abs/1907.10597
  4. https://montrealethics.ai/secure-a-social-and-environmental-certificate-for-ai-systems-2/
  5. https://www.tensorflow.org/lite/performance/model_optimization
  6. https://arxiv.org/pdf/2102.023
  7. https://www.youtube.com/watch?v=WbLQqPw_n88
  8. https://www.youtube.com/watch?v=KgL-36Uod8s

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

Независимая от редакции, Heartbeat спонсируется и публикуется Comet, платформой MLOps, которая позволяет специалистам по данным и командам машинного обучения отслеживать, сравнивать, объяснять и оптимизировать свои эксперименты. Мы платим нашим авторам и не продаем рекламу.

Если вы хотите внести свой вклад, перейдите к нашему призыву к участию. Вы также можете подписаться на получение наших еженедельных информационных бюллетеней (Еженедельник глубокого обучения и Информационный бюллетень Comet), присоединиться к нам в Slack и следить за Comet в Twitter и LinkedIn, чтобы получать ресурсы, события и многое другое, что поможет вам быстрее создавать лучшие модели машинного обучения.