Оборудование решает задачи оптимизации высокого порядка

Новости сегодня - Оборудование решает задачи оптимизации высокого порядка

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

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

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

Исследования в этой области проводит Тиниш Бхаттачарья, докторант в лаборатории профессора электротехники и вычислительной техники Дмитрия Струкова в Калифорнийском университете в Санта-Барбаре. Он и несколько отраслевых сотрудников, а также академические коллеги в Европе и промышленный партнер Hewlett Packard Labs разработали специализированное вычислительное оборудование для градиента функций, чтобы ускорить скорость решения сложных задач оптимизации высокого порядка.

Статья, описывающая их работу, «Вычисление высокостепенных полиномиальных градиентов в памяти», опубликована в журнале Nature Communications.

«Целевая функция любой задачи оптимизации, такой как рабочая нагрузка ИИ, представляет собой N-мерный «энергетический ландшафт», где каждая комбинация значений переменных представляет собой уникальную точку в этом ландшафте», — сказал Бхаттачарья, отметив: «Цель состоит в том, чтобы найти набор назначений переменных, который соответствует самой низкой — или, в более общем смысле, как можно ближе к самой низкой — точке в этом ландшафте».

В качестве параллели он предлагает реальный ландшафт.

«Представьте, что вы высоко в горах Сьерра-Невада, и ваша цель — найти самую низкую точку в заданной области как можно быстрее и с наименьшими усилиями. Чтобы достичь этого, очевидно, вы будете следовать по самому крутому склону. Информация о крутизне и направлении, в котором лежит самый крутой склон относительно того места, где вы стоите, дается градиентом функции в этой точке. Вы продолжаете, делая пошаговые шаги и пересчитывая градиент после каждого, чтобы убедиться, что вы все еще находитесь на самом крутом склоне», — объяснил он.

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

«Операция расчета градиента выполняется итеративно, снова и снова, и нам нужно иметь возможность делать это быстро и эффективно», — добавил он.

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

Как они это делают

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

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

Аппаратное обеспечение состоит из памяти с перекрестными стержнями — фактических рельефных поверхностей, литографированных на чипе, — где несколько линий слов (проводов) идут горизонтально, а несколько линий бит — вертикально. Размещение мемристора в каждом месте, где пересекаются линия слов и линия бит — с одним выводом устройства, подключенным к линии слов, а другим — к линии бит — образует массив мемристорных перекрестных стержней.

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

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

Этот «массово параллельный» элемент подхода группы является ключом к их успеху.

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

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

Специализированное оборудование решает задачи оптимизации высокого порядка

Понравилась новость - поделитесь с Друзьями!

Новости партнеров:

Рубрика: IT, Наука, Новости

Вам могло бы понравиться:

Разрабатывают детектор для «цветной рентгенографии» Разрабатывают детектор для «цветной рентгенографии»
Совет по квантовым технологиям возглавил ректор МИФИ Совет по квантовым технологиям возглавил ректор МИФИ
Caviar создал кастомный iPhone для Александра Овечкина Caviar создал кастомный iPhone для Александра Овечкина
Как учат специалистов по электронике Как учат специалистов по электронике

Оставить комментарий

Вы должны Войти, чтобы оставить комментарий.

©2015 - 2025 Актуальные Новости Сегодня. Все права защищены.
При копировании материалов активная гиперссылка на этот сайт ОБЯЗАТЕЛЬНА!