Мы предлагаем OPML (оптимистическое машинное обучение), который может использовать оптимистические методы для обоснования моделей ИИ и обучения/тонкой настройки систем блокчейна.
По сравнению с ZKML, OPML может предоставлять недорогие и высокоэффективные услуги машинного обучения. Требования к участию в OPML невелики: теперь мы можем запускать OPML с большими языковыми моделями, такими как 7B-LLaMA (размер модели ~26 ГБ), на обычном ПК без графического процессора.
OPML использует игру проверки (аналогичную системам Truebit и Optimistic Rollup), чтобы гарантировать децентрализацию и поддающийся проверке консенсус служб ML.
Запрашивающая сторона сначала запускает сервисную задачу машинного обучения.
Затем сервер выполняет сервисную задачу машинного обучения и отправляет результат в цепочку.
Верификатор проверит результат. Предположим, что есть валидатор, утверждающий, что результат неверен. Он начинает игру с сервером (двустороннее соглашение) и пытается опровергнуть претензию, указав конкретный неверный шаг.
Наконец, на смарт-контракте происходит одноэтапный арбитраж.
Одноэтапная проверочная игра
Однофазный протокол точного определения работает аналогично делегированию вычислений (RDoC), где предполагается, что две или более сторон (по крайней мере, одна честная сторона) выполняют одну и ту же процедуру. Затем обе стороны могут с точностью задавать вопросы друг другу, чтобы определить спорные шаги. Отправьте шаги судье с меньшими вычислительными возможностями (смарт-контракт на блокчейне) для арбитража.
В одноэтапном OPML:
Мы создали виртуальную машину (ВМ) для выполнения вне сети и арбитража в сети. Мы гарантируем эквивалентность виртуальных машин вне сети и виртуальных машин в сети, реализованных на смарт-контрактах.
Чтобы обеспечить эффективность вывода моделей ИИ в виртуальных машинах, мы внедрили облегченную библиотеку DNN, разработанную специально для этой цели, вместо того, чтобы полагаться на популярные фреймворки машинного обучения, такие как Tensorflow или PyTorch. Кроме того, предоставляется скрипт, который преобразует модели Tensorflow и PyTorch в эту облегченную библиотеку.
Используйте технологию кросс-компиляции для компиляции кода рассуждений модели искусственного интеллекта в инструкции программы виртуальной машины.
Образ виртуальной машины управляется с помощью дерева Merkle, и только корень Merkle будет загружен в смарт-контракт в цепочке. (Корень Merkel представляет состояние виртуальной машины)
Двустороннее соглашение поможет найти этап спора, который будет отправлен в арбитражный контракт на блокчейне.
Производительность: мы протестировали базовую модель ИИ (модель DNN по классификации MNIST) на ПК. Мы смогли выполнить вывод DNN за 2 секунды в виртуальной машине, а весь процесс проверки можно было выполнить за 2 минуты в локальной тестовой среде Ethereum.
Игра с многоэтапной проверкой
Ограничения однофазных протоколов определения местоположения
У игры с одноэтапной проверкой есть серьезный недостаток: все расчеты должны выполняться внутри виртуальной машины (ВМ), что не позволяет нам использовать весь потенциал GPU/TPU-ускорения или параллельной обработки. Следовательно, это ограничение серьезно снижает эффективность вывода больших моделей, что также согласуется с ограничением текущего протокола RDoC.
Переход на многофазный протокол
Чтобы устранить ограничения, налагаемые однофазным протоколом, и гарантировать, что OPML сможет достичь уровней производительности, сравнимых с собственными средами, мы предлагаем расширение многофазного протокола. При таком подходе нам нужно только выполнять вычисления в ВМ на финальном этапе, аналогично одноэтапному протоколу. На других этапах у нас есть возможность выполнять вычисления для достижения переходов между состояниями в родной среде, используя мощность ЦП, ГП, ТПУ и даже параллельную обработку. Снижая зависимость от ВМ, мы значительно снижаем накладные расходы и, таким образом, значительно улучшаем производительность выполнения OPML, практически аналогичную нативной среде.
На рисунке ниже показана проверочная игра, состоящая из двух фаз (k = 2). На этапе 1 процесс напоминает одноэтапную проверочную игру, где каждый переход состояния соответствует одной операции VM, которая изменяет состояние виртуальной машины. На этапе 2 переходы между состояниями соответствуют «большим инструкциям», которые содержат несколько мопов, изменяющих вычислительный контекст.
Коммитаторы и верификаторы сначала используют двустороннее соглашение, чтобы начать вторую фазу игры с проверкой, чтобы определить спорные шаги в «большом заказе». Этот шаг отправит на следующую фазу, фазу -1. Первый этап работает как одноэтапная проверочная игра. Двустороннее соглашение на этапе 1 поможет выявить спорные шаги в отношении операций с виртуальными машинами. Этот шаг будет отправлен в арбитражный контракт на блокчейне.
Чтобы обеспечить целостность и безопасность перехода к следующему этапу, мы полагаемся на деревья Меркла. Эта операция состоит в извлечении поддеревьев Меркла из этапов более высокого уровня, что гарантирует непрерывное продолжение процесса проверки.
Многоэтапный OPML
В этой презентации мы предлагаем двухэтапный подход OPML, используемый в модели LLaMA:
Процесс вычислений машинного обучения (ML), особенно глубокой нейронной сети (DNN), может быть выражен в виде графа вычислений, обозначенного как G. Граф состоит из различных вычислительных узлов, способных хранить промежуточные результаты вычислений.
Обоснование модели DNN — это, по сути, процесс вычислений на приведенном выше графике вычислений. Весь граф можно рассматривать как состояние вывода (вычислительный контекст на этапе 2). По мере вычисления каждого узла результат сохраняется в этом узле, тем самым переводя граф вычислений в следующее состояние.
Следовательно, мы можем сначала выполнить проверочную игру на вычислительном графе (в фазе-2). На втором этапе проверочной игры вычисление узла графа может выполняться в локальной среде с использованием многопоточного процессора или графического процессора. Двустороннее соглашение поможет найти спорный узел, расчет которого будет отправлен на следующую фазу (этап-1) двустороннего соглашения.
В первой фазе деления пополам мы преобразуем вычисления одного узла в инструкции виртуальной машины (VM), аналогично тому, что делается в однофазном протоколе.
Стоит отметить, что мы ожидаем введения многоэтапных методов OPML (включающих более двух этапов), когда вычисление одного узла в вычислительном графе все еще является вычислительно сложным. Это расширение еще больше повысит общую эффективность и действенность процесса проверки.
Повышение производительности
Здесь мы приводим краткое обсуждение и анализ предлагаемой нами многоэтапной схемы проверки.
Предполагая, что в графе расчета DNN есть n узлов, каждый узел должен получить m микроинструкций виртуальной машины, чтобы завершить вычисление в виртуальной машине. Предположим, что коэффициент ускорения вычислений для каждого узла, использующего GPU или параллельные вычисления, равен α. Это соотношение представляет собой ускорение, достигаемое GPU или параллельными вычислениями, и может достигать значительных значений, часто в десятки или даже сотни раз быстрее, чем выполнение VM.
На основании этих соображений делаем следующие выводы:
Двухэтапный OPML превосходит одноэтапный OPML и реализует ускорение вычислений в α раз. Использование многоэтапной проверки позволяет нам воспользоваться преимуществами ускоренной вычислительной мощности, обеспечиваемой графическими процессорами или параллельной обработкой, тем самым значительно повышая общую производительность.
Сравнивая размеры деревьев Меркла, мы обнаруживаем, что в двухэтапном OPML размер равен O(m+n), а в одноэтапном OPML размер значительно больше, чем O(mn). Уменьшение размера дерева Меркла еще больше подчеркивает эффективность и масштабируемость многоэтапной схемы.
Таким образом, структура многоэтапной проверки обеспечивает значительное повышение производительности, обеспечивая более эффективные и быстрые вычисления, особенно при использовании возможностей ускорения графических процессоров или параллельной обработки. Кроме того, уменьшенный размер дерева Меркла повышает эффективность и масштабируемость системы, что делает многоэтапный OPML лучшим выбором для различных приложений.
Непротиворечивость и детерминизм
В OPML обеспечение согласованности результатов машинного обучения имеет решающее значение.
Во время собственного выполнения вычислений DNN, особенно на разных аппаратных платформах, из-за характеристик чисел с плавающей запятой могут возникать различия в результатах выполнения. Например, параллельные вычисления с числами с плавающей запятой, такие как (a+b)+c и a+(b+c), часто дают разные результаты из-за ошибок округления. Кроме того, такие факторы, как язык программирования, версия компилятора и операционная система, могут влиять на результаты вычисления чисел с плавающей запятой, что приводит к дальнейшим несоответствиям в результатах машинного обучения.
Чтобы решить эти проблемы и гарантировать согласованность OPML, мы приняли два ключевых подхода:
Использование алгоритма с фиксированной точкой, также известного как технология квантования. Этот метод позволяет нам представлять и выполнять вычисления, используя фиксированную точность, а не числа с плавающей запятой. Делая это, мы смягчаем последствия ошибок округления с плавающей запятой, что приводит к более надежным и согласованным результатам.
Мы используем программные библиотеки операций с плавающей запятой, предназначенные для обеспечения согласованной функциональности на разных платформах. Эти библиотеки обеспечивают межплатформенную согласованность и детерминированность результатов машинного обучения независимо от используемой аппаратной или программной конфигурации.
Объединив арифметику с фиксированной запятой и программные библиотеки операций с плавающей запятой, мы заложили прочную основу для последовательных и надежных результатов машинного обучения в рамках OPML. Эта координация методов позволяет нам преодолеть проблемы, связанные с переменными с плавающей запятой и различиями платформ, что в конечном итоге повышает целостность и надежность вычислений OPML.
OPML против ZKML
*: В текущей структуре OPML наше основное внимание сосредоточено на выводе моделей ML, что обеспечивает эффективное и безопасное вычисление моделей. Однако необходимо подчеркнуть, что наш фреймворк также поддерживает процесс обучения, что делает его универсальным решением для различных задач машинного обучения.
Обратите внимание, что OPML все еще находится в стадии разработки. Если вы заинтересованы в том, чтобы стать частью этой увлекательной программы и внести свой вклад в проект OPML, пожалуйста, свяжитесь с нами.
Посмотреть Оригинал
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
OPML: машинное обучение с системой Optimistic Rollup
Источник: github; Компиляция: MarsBit
TL;DR
Мы предлагаем OPML (оптимистическое машинное обучение), который может использовать оптимистические методы для обоснования моделей ИИ и обучения/тонкой настройки систем блокчейна.
По сравнению с ZKML, OPML может предоставлять недорогие и высокоэффективные услуги машинного обучения. Требования к участию в OPML невелики: теперь мы можем запускать OPML с большими языковыми моделями, такими как 7B-LLaMA (размер модели ~26 ГБ), на обычном ПК без графического процессора.
OPML использует игру проверки (аналогичную системам Truebit и Optimistic Rollup), чтобы гарантировать децентрализацию и поддающийся проверке консенсус служб ML.
Одноэтапная проверочная игра
Однофазный протокол точного определения работает аналогично делегированию вычислений (RDoC), где предполагается, что две или более сторон (по крайней мере, одна честная сторона) выполняют одну и ту же процедуру. Затем обе стороны могут с точностью задавать вопросы друг другу, чтобы определить спорные шаги. Отправьте шаги судье с меньшими вычислительными возможностями (смарт-контракт на блокчейне) для арбитража.
В одноэтапном OPML:
Производительность: мы протестировали базовую модель ИИ (модель DNN по классификации MNIST) на ПК. Мы смогли выполнить вывод DNN за 2 секунды в виртуальной машине, а весь процесс проверки можно было выполнить за 2 минуты в локальной тестовой среде Ethereum.
Игра с многоэтапной проверкой
Ограничения однофазных протоколов определения местоположения
У игры с одноэтапной проверкой есть серьезный недостаток: все расчеты должны выполняться внутри виртуальной машины (ВМ), что не позволяет нам использовать весь потенциал GPU/TPU-ускорения или параллельной обработки. Следовательно, это ограничение серьезно снижает эффективность вывода больших моделей, что также согласуется с ограничением текущего протокола RDoC.
Переход на многофазный протокол
Чтобы устранить ограничения, налагаемые однофазным протоколом, и гарантировать, что OPML сможет достичь уровней производительности, сравнимых с собственными средами, мы предлагаем расширение многофазного протокола. При таком подходе нам нужно только выполнять вычисления в ВМ на финальном этапе, аналогично одноэтапному протоколу. На других этапах у нас есть возможность выполнять вычисления для достижения переходов между состояниями в родной среде, используя мощность ЦП, ГП, ТПУ и даже параллельную обработку. Снижая зависимость от ВМ, мы значительно снижаем накладные расходы и, таким образом, значительно улучшаем производительность выполнения OPML, практически аналогичную нативной среде.
На рисунке ниже показана проверочная игра, состоящая из двух фаз (k = 2). На этапе 1 процесс напоминает одноэтапную проверочную игру, где каждый переход состояния соответствует одной операции VM, которая изменяет состояние виртуальной машины. На этапе 2 переходы между состояниями соответствуют «большим инструкциям», которые содержат несколько мопов, изменяющих вычислительный контекст.
Коммитаторы и верификаторы сначала используют двустороннее соглашение, чтобы начать вторую фазу игры с проверкой, чтобы определить спорные шаги в «большом заказе». Этот шаг отправит на следующую фазу, фазу -1. Первый этап работает как одноэтапная проверочная игра. Двустороннее соглашение на этапе 1 поможет выявить спорные шаги в отношении операций с виртуальными машинами. Этот шаг будет отправлен в арбитражный контракт на блокчейне.
Чтобы обеспечить целостность и безопасность перехода к следующему этапу, мы полагаемся на деревья Меркла. Эта операция состоит в извлечении поддеревьев Меркла из этапов более высокого уровня, что гарантирует непрерывное продолжение процесса проверки.
Многоэтапный OPML
В этой презентации мы предлагаем двухэтапный подход OPML, используемый в модели LLaMA:
Стоит отметить, что мы ожидаем введения многоэтапных методов OPML (включающих более двух этапов), когда вычисление одного узла в вычислительном графе все еще является вычислительно сложным. Это расширение еще больше повысит общую эффективность и действенность процесса проверки.
Повышение производительности
Здесь мы приводим краткое обсуждение и анализ предлагаемой нами многоэтапной схемы проверки.
Предполагая, что в графе расчета DNN есть n узлов, каждый узел должен получить m микроинструкций виртуальной машины, чтобы завершить вычисление в виртуальной машине. Предположим, что коэффициент ускорения вычислений для каждого узла, использующего GPU или параллельные вычисления, равен α. Это соотношение представляет собой ускорение, достигаемое GPU или параллельными вычислениями, и может достигать значительных значений, часто в десятки или даже сотни раз быстрее, чем выполнение VM.
На основании этих соображений делаем следующие выводы:
Двухэтапный OPML превосходит одноэтапный OPML и реализует ускорение вычислений в α раз. Использование многоэтапной проверки позволяет нам воспользоваться преимуществами ускоренной вычислительной мощности, обеспечиваемой графическими процессорами или параллельной обработкой, тем самым значительно повышая общую производительность.
Сравнивая размеры деревьев Меркла, мы обнаруживаем, что в двухэтапном OPML размер равен O(m+n), а в одноэтапном OPML размер значительно больше, чем O(mn). Уменьшение размера дерева Меркла еще больше подчеркивает эффективность и масштабируемость многоэтапной схемы.
Таким образом, структура многоэтапной проверки обеспечивает значительное повышение производительности, обеспечивая более эффективные и быстрые вычисления, особенно при использовании возможностей ускорения графических процессоров или параллельной обработки. Кроме того, уменьшенный размер дерева Меркла повышает эффективность и масштабируемость системы, что делает многоэтапный OPML лучшим выбором для различных приложений.
Непротиворечивость и детерминизм
В OPML обеспечение согласованности результатов машинного обучения имеет решающее значение.
Во время собственного выполнения вычислений DNN, особенно на разных аппаратных платформах, из-за характеристик чисел с плавающей запятой могут возникать различия в результатах выполнения. Например, параллельные вычисления с числами с плавающей запятой, такие как (a+b)+c и a+(b+c), часто дают разные результаты из-за ошибок округления. Кроме того, такие факторы, как язык программирования, версия компилятора и операционная система, могут влиять на результаты вычисления чисел с плавающей запятой, что приводит к дальнейшим несоответствиям в результатах машинного обучения.
Чтобы решить эти проблемы и гарантировать согласованность OPML, мы приняли два ключевых подхода:
Использование алгоритма с фиксированной точкой, также известного как технология квантования. Этот метод позволяет нам представлять и выполнять вычисления, используя фиксированную точность, а не числа с плавающей запятой. Делая это, мы смягчаем последствия ошибок округления с плавающей запятой, что приводит к более надежным и согласованным результатам.
Мы используем программные библиотеки операций с плавающей запятой, предназначенные для обеспечения согласованной функциональности на разных платформах. Эти библиотеки обеспечивают межплатформенную согласованность и детерминированность результатов машинного обучения независимо от используемой аппаратной или программной конфигурации.
Объединив арифметику с фиксированной запятой и программные библиотеки операций с плавающей запятой, мы заложили прочную основу для последовательных и надежных результатов машинного обучения в рамках OPML. Эта координация методов позволяет нам преодолеть проблемы, связанные с переменными с плавающей запятой и различиями платформ, что в конечном итоге повышает целостность и надежность вычислений OPML.
OPML против ZKML
*: В текущей структуре OPML наше основное внимание сосредоточено на выводе моделей ML, что обеспечивает эффективное и безопасное вычисление моделей. Однако необходимо подчеркнуть, что наш фреймворк также поддерживает процесс обучения, что делает его универсальным решением для различных задач машинного обучения.
Обратите внимание, что OPML все еще находится в стадии разработки. Если вы заинтересованы в том, чтобы стать частью этой увлекательной программы и внести свой вклад в проект OPML, пожалуйста, свяжитесь с нами.