Изменение использования ИИ с помощью новейших программных и аппаратных технологий

Введение

Одним из самых захватывающих проектов, над которым мне посчастливилось работать в Intel, было руководство группой инженеров, которой было поручено разработать, внедрить и развернуть программную платформу, позволяющую проводить крупномасштабное обучение на базе процессоров Habana Gaudi® для MLPerf. Я многое узнал о том, как масштабировать обучение ИИ на большом аппаратном кластере, а также о сложностях построения просто центра обработки данных. Одна вещь, которая выделялась, — это огромное количество оборудования, ручного труда и энергии, необходимых для выполнения таких ресурсоемких вычислений.

Современные решения AI/ML показали, что при наличии большого количества вычислительных ресурсов мы можем создавать удивительные решения сложных проблем. Приложения, использующие такие решения, как DALL·E и GPT-3, для создания изображений или создания исследовательских работ, похожих на человека, поистине умопомрачительны.

Пока я был в отпуске (см. рисунок выше), я провел некоторое время, размышляя о взрывном росте размера параметров модели за последние несколько лет и о том, как ускорители вычислений спешат не отставать. Я нашел этот пост Модели больших языков: новый закон Мура? от людей из HuggingFace, который показался мне интересным, особенно потому, что они понимают модели глубокого обучения намного лучше, чем я когда-либо.

Я нашел их сравнение с законом Мура, предположение, что количество транзисторов и, следовательно, вычислительная мощность удваиваются каждые два года, особенно уместно. Еще одна похожая аналогия, которая пришла на ум, заключалась в том, как в конце 1990-х и начале 2000-х годов происходила гонка за масштабированием частоты процессора. В обоих случаях вычислительное оборудование росло быстро (даже экспоненциально), но в конце концов начало упираться в пресловутую стену.

В статье HuggingFace описывается, как уменьшить объем вычислений, необходимых для запуска модели в производство. Это очень важные методы, но я думаю, что не менее важным является поиск альтернативных методологий, которые более эффективно решают те же проблемы. Точно так же, как когда частота ЦП достигла предела, компьютерная индустрия переключилась на параллелизм/инструкции за цикл (IPC)/и т.д. Работа AI/ML за последнее десятилетие показала нам несколько примеров того, что возможно, теперь вопрос в том, можем ли мы предоставить те же решения, используя другие, более оптимизированные методы.

Несколько забавных соперников

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

Поиск сходства

Поиск по сходству — это приближенный алгоритм ближайшего соседа (ANN), который можно использовать для идентификации групп данных, принимающих в качестве входных данных большой вектор. Он берет этот вектор и существующую базу данных похожих векторов и пытается определить, какие векторы в базе данных больше всего похожи на входной вектор. Самое интересное в этом то, что векторы могут быть любыми, поэтому применение поиска подобия может быть широким. Например, его можно использовать для определения того, похожи ли некоторые оцифрованные активы (изображения/звуки/и т. д.) на другие активы.

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



Мультимодальный когнитивный ИИ

Как следует из названия, мультимодальный когнитивный ИИ — это область, которая пытается найти решения, существующие в различных пространствах, и логически объединить их друг с другом, чтобы обеспечить контекст. Это открывает возможность объединения множества хорошо обученных моделей для предоставления лучших решений. Я также задавался этим вопросом, открывает ли это дверь для некоторых меньших, менее точных и менее ресурсоемких моделей, которые можно использовать в решениях, где раньше они могли не иметь достаточной точности без контекста. Честно говоря, я не уверен, и хотел бы услышать от других экспертов в области, имеет ли эта идея какой-либо смысл или нет…



Интересно, что когда я собирался опубликовать это, VL-InterpreT от Intel получил награду за лучшую демонстрацию на Международной конференции IEEE/CVF по компьютерному зрению и распознаванию образов (CVPR) 2022! Инструмент помогает нам понять, как ведут себя трансформеры Vision-Languange.



Нейроморфные вычисления

Нейроморфные вычисления, вероятно, являются моим любимым из всех трех подходов, может быть, потому, что они имеют аппаратный компонент, или, может быть, потому, что, на мой взгляд, это своего рода еще один этап в моделировании AI/ML.

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

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

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

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

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





Заключение

Есть много интересных областей исследований в области AI/ML, которые, похоже, позволяют создавать более эффективные решения, требующие меньшей вычислительной мощности. Всегда будет место для ресурсоемких ИИ/МО, и большая часть этой работы информирует о возможностях результатов, которые может дать это пространство.

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

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

Want to Connect?If you want to see what random tech news I’m reading, you can follow me on Twitter.
Tony is a Software Architect and Technical Evangelist at Intel. He has worked on several software developer tools and most recently led the software engineering team that built the data center platform which enabled Habana’s scalable MLPerf solution.
Intel, the Intel logo and other Intel marks are trademarks of Intel Corporation or its subsidiaries. Other names and brands may be claimed as the property of others.