Машина Больцмана (также называемая моделью Шеррингтона–Киркпатрика с внешним полем или стохастической моделью Изинга ), названная в честь Людвига Больцмана, представляет собой модель спинового стекла с внешним полем, т. е. модель Шеррингтона–Киркпатрика , [1] которая является стохастической моделью Изинга . Это статистический физический метод, применяемый в контексте когнитивной науки . [2] Он также классифицируется как марковское случайное поле . [3]
Машины Больцмана теоретически интересны из-за локальности и хеббовской природы их обучающего алгоритма (обучаются по правилу Хебба), а также из-за их параллельности и сходства их динамики с простыми физическими процессами . Машины Больцмана с неограниченной связностью не доказали свою полезность для практических задач машинного обучения или вывода , но если связность должным образом ограничена, обучение можно сделать достаточно эффективным, чтобы быть полезным для практических задач. [4]
Они названы в честь распределения Больцмана в статистической механике , которое используется в их функции выборки . Они были широко популяризированы и продвигались Джеффри Хинтоном , Терри Сейновски и Яном Лекуном в сообществах когнитивных наук, особенно в машинном обучении , [2] как часть « энергетических моделей » (EBM), поскольку гамильтонианы спиновых стекол в качестве энергии используются в качестве отправной точки для определения задачи обучения. [5]
Машина Больцмана, как и модель Шеррингтона–Киркпатрика , представляет собой сеть единиц с общей «энергией» ( Гамильтонианом ), определенной для всей сети. Ее единицы производят бинарные результаты. Веса машины Больцмана являются стохастическими . Глобальная энергия в машине Больцмана идентична по форме энергии сетей Хопфилда и моделей Изинга :
Где:
Часто веса представляются в виде симметричной матрицы с нулями по диагонали.
Разница в глобальной энергии, возникающая из-за того, что одна единица равна 0 (выключено) по сравнению с 1 (включено), записанная в предположении симметричной матрицы весов, определяется по формуле:
Это можно выразить как разность энергий двух состояний:
Подставляя вместо энергии каждого состояния его относительную вероятность в соответствии с фактором Больцмана (свойство распределения Больцмана , согласно которому энергия состояния пропорциональна отрицательному логарифму вероятности этого состояния), получаем:
где - постоянная Больцмана и поглощается искусственным понятием температуры . Отмечая, что вероятности включения или выключения единицы в сумме позволяют упростить:
откуда вероятность того, что -я единица дается выражением
где скаляр называется температурой системы . Это соотношение является источником логистической функции, найденной в выражениях вероятности в вариантах машины Больцмана.
Сеть работает, многократно выбирая единицу и сбрасывая ее состояние. После достаточно долгой работы при определенной температуре вероятность глобального состояния сети зависит только от энергии этого глобального состояния, согласно распределению Больцмана , а не от начального состояния, с которого был начат процесс. Это означает, что логарифмические вероятности глобальных состояний становятся линейными по своим энергиям. Это соотношение верно, когда машина находится «в тепловом равновесии », что означает, что распределение вероятностей глобальных состояний сошлось. При запуске сети, начиная с высокой температуры, ее температура постепенно понижается до достижения теплового равновесия при более низкой температуре. Затем она может сойтись к распределению, в котором уровень энергии колеблется вокруг глобального минимума. Этот процесс называется имитацией отжига .
Чтобы обучить сеть так, чтобы вероятность ее сходимости к глобальному состоянию соответствовала внешнему распределению по этим состояниям, веса должны быть установлены так, чтобы глобальные состояния с наивысшими вероятностями получали наименьшие энергии. Это делается путем обучения.
Единицы в машине Больцмана делятся на «видимые» единицы, V, и «скрытые» единицы, H. Видимые единицы — это те, которые получают информацию из «окружающей среды», т. е. обучающий набор представляет собой набор двоичных векторов по набору V. Распределение по обучающему набору обозначается .
Распределение по глобальным состояниям сходится, когда машина Больцмана достигает теплового равновесия . Мы обозначаем это распределение, после того как мы маргинализируем его по скрытым единицам, как .
Наша цель — аппроксимировать «реальное» распределение, используя полученное машиной. Сходство двух распределений измеряется с помощью расхождения Кульбака–Лейблера :
где сумма берется по всем возможным состояниям . является функцией весов, поскольку они определяют энергию состояния, а энергия определяет , как и обещано распределением Больцмана. Алгоритм градиентного спуска по изменяет заданный вес, , вычитая частную производную по весу.
Обучение машины Больцмана включает две чередующиеся фазы. Одна из них — «положительная» фаза, где состояния видимых единиц фиксируются на определенном двоичном векторе состояний, выбранном из обучающего набора (согласно ). Другая — «отрицательная» фаза, где сети разрешено работать свободно, т. е. только входные узлы имеют свое состояние, определяемое внешними данными, но выходные узлы могут плавать. Градиент относительно заданного веса, , задается уравнением: [2]
где:
Этот результат следует из того факта, что при тепловом равновесии вероятность любого глобального состояния , когда сеть работает автономно, определяется распределением Больцмана.
Это правило обучения биологически правдоподобно, поскольку единственная информация, необходимая для изменения весов, предоставляется «локальной» информацией. То есть, соединение ( биологически синапс ) не нуждается в информации ни о чем, кроме двух нейронов, которые оно соединяет. Это более биологически реалистично, чем информация, необходимая соединению во многих других алгоритмах обучения нейронных сетей, таких как обратное распространение .
Обучение машины Больцмана не использует алгоритм EM , который широко используется в машинном обучении . Минимизируя KL-расхождение , это эквивалентно максимизации логарифмического правдоподобия данных. Таким образом, процедура обучения выполняет градиентный подъем по логарифмическому правдоподобию наблюдаемых данных. Это отличается от алгоритма EM, где апостериорное распределение скрытых узлов должно быть рассчитано до максимизации ожидаемого значения полного правдоподобия данных во время M-шага.
Обучение смещений происходит аналогично, но использует только активность одного узла:
Теоретически машина Больцмана является довольно общей вычислительной средой. Например, если ее обучить на фотографиях, машина теоретически смоделирует распределение фотографий и сможет использовать эту модель, например, для завершения частичной фотографии.
К сожалению, машины Больцмана сталкиваются с серьезной практической проблемой, а именно, что они, по-видимому, перестают правильно обучаться, когда масштаб машины увеличивается до чего-либо большего, чем тривиальный размер. [ необходима цитата ] Это связано с важными эффектами, а именно:
Хотя обучение непрактично в обычных машинах Больцмана, его можно сделать достаточно эффективным в ограниченной машине Больцмана (RBM), которая не допускает внутрислойных связей между скрытыми и видимыми единицами, т. е. нет связи между видимыми и видимыми и скрытыми и скрытыми единицами. После обучения одной RBM действия ее скрытых единиц можно рассматривать как данные для обучения RBM более высокого уровня. Этот метод наложения RBM позволяет эффективно обучать много слоев скрытых единиц и является одной из наиболее распространенных стратегий глубокого обучения . По мере добавления каждого нового слоя генеративная модель улучшается.
Расширение ограниченной машины Больцмана позволяет использовать действительные данные вместо двоичных данных. [6]
Одним из примеров практического применения RBM является распознавание речи. [7]
Глубокая машина Больцмана (DBM) — это тип бинарного попарного марковского случайного поля ( ненаправленная вероятностная графическая модель ) с несколькими слоями скрытых случайных величин . Это сеть симметрично связанных стохастических бинарных единиц . Она включает в себя набор видимых единиц и слоев скрытых единиц . Никакие соединения не связывают единицы одного и того же слоя (как RBM ). Для DBM вероятность, назначенная вектору ν, равна
где — набор скрытых единиц, а — параметры модели, представляющие взаимодействия «видимо-скрыто» и «скрыто-скрыто». [8] В DBN только два верхних слоя образуют ограниченную машину Больцмана (которая является ненаправленной графической моделью ), тогда как нижние слои образуют направленную генеративную модель. В DBM все слои симметричны и ненаправлены.
Подобно DBN , DBM могут изучать сложные и абстрактные внутренние представления входных данных в таких задачах, как распознавание объектов или речи , используя ограниченные, маркированные данные для точной настройки представлений, построенных с использованием большого набора немаркированных сенсорных входных данных. Однако, в отличие от DBN и глубоких сверточных нейронных сетей , они выполняют процедуру вывода и обучения в обоих направлениях, снизу вверх и сверху вниз, что позволяет DBM лучше раскрывать представления входных структур. [9] [10] [11]
Однако медленная скорость DBM ограничивает их производительность и функциональность. Поскольку точное обучение по методу максимального правдоподобия не поддается обработке для DBM, возможно только приблизительное обучение по методу максимального правдоподобия. Другой вариант — использовать вывод среднего поля для оценки ожиданий, зависящих от данных, и аппроксимировать ожидаемую достаточную статистику с помощью метода Монте-Карло с цепями Маркова (MCMC). [8] Этот приблизительный вывод, который должен быть сделан для каждого тестового входа, примерно в 25–50 раз медленнее, чем одиночный проход снизу вверх в DBM. Это делает совместную оптимизацию непрактичной для больших наборов данных и ограничивает использование DBM для таких задач, как представление признаков.
Необходимость глубокого обучения с вещественными входными данными, как в гауссовых RBM, привела к RBM с шипами и плитами ( ss RBM ), которая моделирует непрерывно-значные входные данные с бинарными скрытыми переменными . [12] Подобно базовым RBM и их вариантам, RBM с шипами и плитами представляет собой двудольный граф , в то время как, как и в G RBM , видимые единицы (входные данные) являются вещественными. Разница заключается в скрытом слое, где каждая скрытая единица имеет двоичную переменную спайка и вещественную переменную плиты. Шип представляет собой дискретную вероятностную массу в нуле, в то время как плита представляет собой плотность в непрерывной области; [13] их смесь образует априорное значение . [14]
Расширение ss RBM, называемое μ-ss RBM, обеспечивает дополнительную моделирующую способность с использованием дополнительных членов в энергетической функции . Один из этих членов позволяет модели формировать условное распределение переменных спайка путем маргинализации переменных слэба с учетом наблюдения.
В более общей математической обстановке распределение Больцмана также известно как мера Гиббса . В статистике и машинном обучении оно называется логлинейной моделью . В глубоком обучении распределение Больцмана используется в выборочном распределении стохастических нейронных сетей, таких как машина Больцмана.
Машина Больцмана основана на модели спинового стекла Шеррингтона–Киркпатрика Дэвида Шеррингтона и Скотта Киркпатрика . [15] В основополагающей публикации Джона Хопфилда (1982) были применены методы статистической механики, в основном недавно разработанная (1970-е годы) теория спиновых стекол, для изучения ассоциативной памяти (позже названной «сетью Хопфилда»). [16]
Первоначальный вклад в применение таких энергетических моделей в когнитивной науке был представлен в работах Джеффри Хинтона и Терри Сейновски . [17] [18] [19] В интервью 1995 года Хинтон заявил, что в феврале или марте 1983 года он собирался сделать доклад о моделировании отжига в сетях Хопфилда, поэтому ему пришлось разработать алгоритм обучения для доклада, что привело к появлению алгоритма машинного обучения Больцмана. [20]
Идея применения модели Изинга с отожженной выборкой Гиббса была использована в проекте Copycat Дугласа Хофштадтера (1984). [21] [22]
Явная аналогия, проведенная со статистической механикой в формулировке машины Больцмана, привела к использованию терминологии, заимствованной из физики (например, «энергия»), которая стала стандартной в этой области. Широкое принятие этой терминологии, возможно, было обусловлено тем фактом, что ее использование привело к принятию различных концепций и методов из статистической механики. Различные предложения использовать имитацию отжига для вывода были, по-видимому, независимыми.
Похожие идеи (с изменением знака в энергетической функции) встречаются в «Теории гармонии» Пола Смоленского . [23] Модели Изинга можно обобщить до марковских случайных полей , которые находят широкое применение в лингвистике , робототехнике , компьютерном зрении и искусственном интеллекте .
В 2024 году Хопфилд и Хинтон были удостоены Нобелевской премии по физике за их основополагающий вклад в машинное обучение , в частности, за машину Больцмана. [24]