Home Технологии Теория игр как двигатель для крупномасштабного анализа данных | DeepTech

Теория игр как двигатель для крупномасштабного анализа данных | DeepTech

0
Теория игр как двигатель для крупномасштабного анализа данных
 | DeepTech

EigenGame предлагает новый подход к решению фундаментальных проблем машинного обучения

Современные системы ИИ подходят к таким задачам, как распознавание объектов на изображениях и предсказание трехмерной структуры белков как прилежный студент готовился бы к экзамену. Тренируясь на многих примерах задач, они со временем минимизируют свои ошибки, пока не добьются успеха. Но это одиночное усилие и только одна из известных форм обучения. Обучение также происходит путем взаимодействия и игры с другими людьми. Редко когда один человек может решить чрезвычайно сложные проблемы в одиночку. Предыдущие усилия DeepMind позволяли решать проблемы приобретать эти игровые качества, обучая агентов ИИ играть Захват флага и достичь Уровень гроссмейстера в Starcraft. Это заставило нас задуматься, может ли такая перспектива, основанная на теории игр, помочь решить другие фундаментальные проблемы машинного обучения.

Сегодня в ICLR 2021 (Международная конференция по обучающим представлениям), мы представили «EigenGame: PCA как равновесие Нэша», который получил награду за выдающуюся работу. Наше исследование исследовало новый подход к старой проблеме: мы переформулировали анализ главных компонентов (PCA), тип проблема собственных значений, как конкурентную игру с несколькими агентами, которую мы называем EigenGame. PCA обычно формулируется как задача оптимизации (или задача с одним агентом); однако мы обнаружили, что многоагентная перспектива позволила нам разработать новые идеи и алгоритмы, которые используют новейшие вычислительные ресурсы. Это позволило нам масштабироваться до массивных наборов данных, которые ранее требовали слишком больших вычислительных ресурсов, и предлагает альтернативный подход для будущих исследований.

PCA как равновесие Нэша

Впервые описан в начале 1900-х гг. СПС — это давний метод для понимания структуры многомерных данных. Этот подход теперь повсеместно используется в качестве первого шага в конвейере обработки данных и упрощает кластеризацию и визуализацию данных. Это также может быть полезным инструментом для изучения низкоразмерных представлений для регрессии и классификации. Спустя более века все еще есть веские причины для изучения АКП.

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

Во-вторых, PCA имеет общее решение со многими важными проблемами машинного обучения и инженерии, а именно: сингулярное разложение (СВД). При правильном подходе к проблеме PCA наши идеи и алгоритмы более широко применяются во всех ветвях дерева машинного обучения.

Рис. 1. Дерево знаний, основанное на SVD, охватывает многие фундаментальные идеи машинного обучения, включая PCA, метод наименьших квадратов, спектральную кластеризацию, функции прото-значений, скрытое семантическое индексирование и сортировку.

Как и в случае с любой настольной игрой, чтобы заново изобрести PCA как игру, нам нужен набор правил и целей, которым должны следовать игроки. Есть много возможных способов разработать такую ​​игру; однако важные идеи исходят из самого PCA: оптимальное решение состоит из собственных векторов, которые отражают важную дисперсию данных и ортогональны друг другу.

Рисунок 2. Каждый игрок хочет ориентироваться в направлении максимальной дисперсии (больший разброс данных), но при этом оставаться перпендикулярным игрокам, находящимся выше в иерархии (всем игрокам с более низким номером).

В EigenGame каждый игрок управляет собственным вектором. Игроки увеличивают свой счет, объясняя различия в данных, но наказываются, если они слишком тесно связаны с другими игроками. Мы также устанавливаем иерархию: Игрок 1 заботится только о максимизации дисперсии, в то время как другие игроки также должны беспокоиться о том, чтобы свести к минимуму их соответствие с игроками, находящимися выше их в иерархии. Эта комбинация наград и штрафов определяет полезность каждого игрока.

Рисунок 3. Суммирование полезности каждого игрока выше.

С правильно оформленным Вар и Выровнять условия, мы можем показать, что:

  • Если все игроки играют оптимально, вместе они достигают равновесие по Нэшу игры, которая является решением PCA.
  • Этого можно достичь, если каждый игрок максимизирует свою полезность независимо и одновременно, используя градиентное восхождение.
Рисунок 4. EigenGame направляет каждого игрока по единичной сфере от пустых кругов к параллельным стрелкам. Синий — игрок 1. Красный — игрок 2. Зеленый — игрок 3.

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

Рисунок 5. Каждый цветной квадрат — это отдельное устройство. (L) Каждый игрок живет и вычисляет обновления на одном устройстве. (R) Каждый проигрыватель копируется на несколько устройств и вычисляет обновления, используя независимые пакеты данных; Затем различные обновления усредняются, чтобы сформировать более надежное направление обновления.

Утилиты, обновления и все, что между ними

Думая о PCA с точки зрения нескольких агентов, мы смогли предложить масштабируемые алгоритмы и новые методы анализа. Мы также обнаружили удивительную связь с Хеббианское обучение — или как нейроны адаптируются при обучении. В EigenGame каждый игрок, максимизирующий свои полезности, приводит к уравнениям обновления, подобным обновить правила получена из хеббовских моделей синаптической пластичности мозга. Известно, что обновления Хебба сходятся к решению PCA, но не получаются как градиент какой-либо функции полезности. Теория игр дает нам новый взгляд на хеббовское обучение, а также предлагает целый ряд подходов к проблемам машинного обучения.

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

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

Рисунок 6. Разрешение использования нескольких утилит ликвидирует разрыв между подходами к оптимизации и динамическими системами.

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

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

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

Подробнее см. в нашей статье EigenGame: PCA как равновесие Нэша и наша дальнейшая работа EigenGame Unloaded: когда лучше играть в игры, чем оптимизировать.

LEAVE A REPLY

Please enter your comment!
Please enter your name here