Машина Больцмана

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Пример графического представления машины Больцмана. В данном примере 3 скрытых и 4 видимых нейрона

Маши́на Бо́льцмана (англ. Boltzmann machine) — вид стохастической рекуррентной нейронной сети, изобретенной Джеффри Хинтоном и Терри Сейновски в 1985 году[1]. Машина Больцмана может рассматриваться как стохастический генеративный вариант сети Хопфилда.

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

Эта сеть использует для обучения алгоритм имитации отжига и оказалась первой нейронной сетью, способной обучаться внутренним представлениям, решать сложные комбинаторные задачи. Несмотря на это, из-за ряда проблем, машины Больцмана с неограниченной связностью не могут использоваться для решения практических проблем. Если же связность ограничена, то обучение может быть достаточно эффективным для использования на практике. В частности, из каскада ограниченных машин Больцмана строится так называемая deep belief network.

Модель[править | править вики-текст]

Как и сеть Хопфилда, машина Больцмана является сетью нейронов с определенной для неё понятием "энергии". Расчет глобальной энергии производится идентичным по форме с сетью Хопфилда образом:

Где:

  • сила связи между нейронами и .
  • состояние , , нейрона .
  • порог для нейрона .

Связи имеют следующие ограничения:

  • . (нейрон не может иметь связь с самим собой);
  • (все связи являются симметричными).

Термическое равновесие[править | править вики-текст]

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

Идея использования «теплового шума» для выхода из локальных минимумов и повышения вероятности попадания в более глубокие минимумы принадлежит С. Кирпатрику. На основе этой идеи разработан алгоритм имитации отжига.

Введем некоторый параметр  — аналог уровня теплового шума. Тогда вероятность активности некоторого нейрона к определяется на основе вероятностной функции Больцмана:

где  — уровень теплового шума в сети;  — сумма весов связей к-го нейрона со всеми активными в данный момент нейронами.

Ограниченная машина Больцмана[править | править вики-текст]

Ограниченная машина Больцмана

Хотя возможности обучения машины Больцмана ограничены на практике, эти проблемы могут быть решены применением архитектуры ограниченной машины Больцмана (restricted Boltzmann machine; RBM). В этой архитектуре связи существуют только между скрытыми и видимыми нейронами, но при этом отсутствуют между нейронами одного класса. Такая архитектура изначально использовалась Полом Смоленски в 1986 году под названием Harmonium[2], но приобрела популярность только после изобретения Хинтоном быстрых алгоритмов обучения в середине 2000-х годов.

Ограниченные машины Больцмана используются в сетях глубокого обучения. В частности, глубокие сети доверия могут быть получены путём «наложения» RBM и последующего дообучения при помощи алгоритма обратного распространения ошибки.

Примечания[править | править вики-текст]

  1. Ackley, David H.; Hinton, Geoffrey E.; Sejnowski, Terrence J. A Learning Algorithm for Boltzmann Machines. — Cognitive Science 9 (1), 1985. — С. 147–169.
  2. Smolensky Paul. Chapter 6: Information Processing in Dynamical Systems: Foundations of Harmony Theory // Parallel Distributed Processing: Explorations in the Microstructure of Cognition, Volume 1: Foundations. — MIT Press, 1986. — P. 194–281. — ISBN 0-262-68053-X.

Ссылки[править | править вики-текст]