Сегодня такие термины, как искусственный интеллект и машинное обучение, используются так же небрежно, как и вездесущий зонтичный термин «Интернет». Технологии искусственного интеллекта существуют уже несколько десятилетий, а в 2019 году они интегрированы во все аспекты цифровой жизни. Например, искусственные нейронные сети (ИНС) существуют уже 60 лет.

Но хотя ИНС не новы, сегодня происходит ренессанс. Ускорение началось примерно десять лет назад, когда исследователи поняли, что не качество модели, а размер обучающей выборки сделал ИНС лучше. Такие компании, как Google и Microsoft, чьи бизнес-модели зависят от категоризации огромных объемов информации, оказались в выгодном положении для монетизации ИИ и финансирования необходимых исследований и разработок.

Вот как это работает:

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

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

И самый дорогой шаг в создании глубокого обучения — это этап обучения.

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

Стандартом де-факто для операций с плавающей запятой является IEEE-754. Он доступен во всех процессорах, продаваемых Intel, AMD, IBM и NVIDIA. Но по мере расцвета глубокого обучения исследователи быстро поняли, что IEEE-754 с плавающей запятой будет основным ограничением, ограничивающим прогресс, которого они могли бы добиться. Формат был разработан 30 лет назад, когда обработка была дорогой, а доступ к памяти — дешевым. Текущий стек технологий обратный: доступ к памяти стоит дорого, а обработка дешева.

А глубокое обучение связано с доступом к памяти.

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

Этого просто не может обеспечить IEEE-754. Google разработал первую версию своего ускорителя глубокого обучения в 2014 году, который обеспечивал на два порядка более высокую производительность по сравнению с процессорами NVIDIA, использовавшимися ранее, просто за счет отказа от IEEE-754. Последующие версии включали новый формат с плавающей запятой, называемый Brain Floating Point Format, или bfloat16 для краткости, оптимизированный для глубокого обучения, чтобы укрепить свое лидерство.

Теперь даже Intel отказывается от IEEE-754 с плавающей запятой в пользу глубокого обучения. Его процессор Cooper Lake Xeon, например, предлагает формат Google bfloat16 для ускорения глубокого обучения. Таким образом, неудивительно, что все участники гонки ИИ следуют их примеру и заменяют IEEE-754 с плавающей запятой своими собственными системами счисления. И исследователи демонстрируют, что другие системы счисления, такие как posit и DeepFloat от Facebook, могут даже улучшить bfloat от Google16.

Поставщики облачных услуг ищут более эффективные решения, чем IEEE-754 с плавающей запятой.

Крупномасштабные приложения Cloud Native привлекли внимание к неэффективности формата IEEE с плавающей запятой. Amazon, Google и Microsoft имеют огромные и невероятно успешные предприятия облачных услуг, которые полагаются на бесконечную оптимизацию, чтобы постоянно улучшать свои высококонкурентные услуги. Чтобы получить более высокую производительность по сравнению со своими конкурентами, эти поставщики облачных услуг отказались от плавающей запятой IEEE в пользу чего-то более эффективного и действенного на ватт, для ключевых категорий приложений, определяющих их современные бизнес-услуги, такие как глубокое обучение, обработка мультимедиа, безопасность, большие данные, и аналитическая обработка.

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

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

Переход на 5G со значительно более высокими требованиями к вычислительным ресурсам, чем у предыдущих поколений, и новые методы оптимизации на основе ИИ для улучшения сотовой связи, такие как Cognitive Radio, ускорят внедрение более качественных и эффективных представлений реальных чисел в телекоммуникационном пространстве.

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

Суперкомпьютеры спешат на помощь.

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

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

Одна система счисления, которая была предложена сообществом для замены IEEE-754 с плавающей запятой, называется posit. Позиции — это суженный формат с плавающей запятой, предназначенный для обеспечения более надежной вычислительной арифметики для действительных чисел. Позиции на данный момент являются единственной системой счисления, одинаково подходящей как для глубокого обучения, так и для вычислительной науки и бизнес-аналитики.

Например:

Исследователи из Рочестерского технологического института и Сингапурского национального университета продемонстрировали, что небольшие posis обеспечивают более высокую скорость обучения, чем bfloat от Google16. Между тем, в Ливерморской национальной лаборатории им. Лоуренса исследователи работают над количественной оценкой преимуществ различных систем счисления в приложении Computational Fluid Dynamics. Они обнаружили, что IEEE с плавающей запятой и родственные типы работают довольно плохо по сравнению с posit и другими числовыми типами с конусной точностью, что наиболее очевидно в сложных вычислительных задачах, где 64-битные posis превосходят 64-битную двойную точность IEEE почти на три порядка. .

Вот почему такие организации, как группа по физике атмосферы, океана и планет Оксфордского университета и Европейский центр среднесрочного прогнозирования погоды, применяют постулаты для моделирования климата и прогнозирования погоды. И сопротивление, подходы к вычислительной инженерии следующего поколения, которые сочетают искусственный интеллект и научные вычисления для автоматического проектирования и оптимизации сложных структур для достижения максимальной прочности или минимального веса, известные в литературе как изогеометрические. Анализ (IGA) показал, что математика даже не работает с плавающей запятой IEEE, а требует новых подходов, таких как posit, чтобы воспользоваться преимуществами новой методологии.

Здесь, в Stillwater Supercomputing, мы видим огромную ценность в предоставлении разработчикам готовой арифметической библиотеки для включения этой новой системы счисления в приложения. Мы создали библиотеку с открытым исходным кодом, доступную на Github. В настоящее время мы работаем с различными исследовательскими группами по всему миру, в том числе с Вашингтонским университетом, разрабатывая TVM/VTA, комплексный стек глубокого обучения, и недавно перешли в проект Apache Incubator Project. А в Делфтском технологическом университете пакет изогеометрического анализа под названием G+SMO был дополнен положениями, чтобы продемонстрировать преимущества элементов очень высокого порядка для повышения эффективности вычислений. Целью G+SMO является реализация бесшовной интеграции анализа конечных элементов (FEA) и автоматизированного проектирования (CAD) с открытым исходным кодом от сообщества изогеометрического анализа и для него.

Переход к облачным вычислениям открыл множество возможностей для инноваций.

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

Центральное место в этих инновациях займет система счисления, и posis загребают всеобщее признание.