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

Класс искусственной нейронной сети
Схема ограниченной машины Больцмана с тремя видимыми блоками и четырьмя скрытыми блоками (без блоков смещения)

Ограниченная машина Больцмана ( RBM ) (также называемая ограниченной моделью Шеррингтона–Киркпатрика с внешним полем или ограниченной стохастической моделью Изинга–Ленца–Литтла ) представляет собой генеративную стохастическую искусственную нейронную сеть , которая может обучаться распределению вероятностей по своему набору входных данных. [1]

RBM были первоначально предложены под названием Harmonium Полом Смоленским в 1986 году [2] и приобрели известность после того, как Джеффри Хинтон и его коллеги использовали для них алгоритмы быстрого обучения в середине 2000-х годов. RBM нашли применение в снижении размерности , [3] классификации , [4] совместной фильтрации , [5] обучении признакам , [6] тематическом моделировании , [7] иммунологии , [8] и даже в квантовой механике многих тел . [9] [10] [11]


Их можно обучать как под наблюдением , так и без него , в зависимости от задачи. [ необходима цитата ]

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

  • пара узлов из каждой из двух групп единиц (обычно называемых «видимыми» и «скрытыми» единицами соответственно) может иметь симметричное соединение между собой; и
  • между узлами внутри группы нет связей.

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

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

Структура

Стандартный тип RBM имеет двоично-значные ( булевые ) скрытые и видимые блоки и состоит из матрицы весов размера . Каждый элемент веса матрицы связан со связью между видимым (входным) блоком и скрытым блоком . Кроме того, существуют веса смещения (смещения) для и для . Учитывая веса и смещения, энергия конфигурации (пары булевых векторов) ( v , h ) определяется как W {\displaystyle W} m × n {\displaystyle m\times n} ( w i , j ) {\displaystyle (w_{i,j})} v i {\displaystyle v_{i}} h j {\displaystyle h_{j}} a i {\displaystyle a_{i}} v i {\displaystyle v_{i}} b j {\displaystyle b_{j}} h j {\displaystyle h_{j}}

E ( v , h ) = i a i v i j b j h j i j v i w i , j h j {\displaystyle E(v,h)=-\sum _{i}a_{i}v_{i}-\sum _{j}b_{j}h_{j}-\sum _{i}\sum _{j}v_{i}w_{i,j}h_{j}}

или, в матричной записи,

E ( v , h ) = a T v b T h v T W h . {\displaystyle E(v,h)=-a^{\mathrm {T} }v-b^{\mathrm {T} }h-v^{\mathrm {T} }Wh.}

Эта энергетическая функция аналогична функции сети Хопфилда . Как и в случае с общими машинами Больцмана, совместное распределение вероятностей для видимых и скрытых векторов определяется в терминах энергетической функции следующим образом: [14]

P ( v , h ) = 1 Z e E ( v , h ) {\displaystyle P(v,h)={\frac {1}{Z}}e^{-E(v,h)}}

где — это функция распределения, определяемая как сумма всех возможных конфигураций, которую можно интерпретировать как нормализующую константу , гарантирующую, что сумма вероятностей равна 1. Предельная вероятность видимого вектора — это сумма всех возможных конфигураций скрытого слоя, [14] Z {\displaystyle Z} e E ( v , h ) {\displaystyle e^{-E(v,h)}} P ( v , h ) {\displaystyle P(v,h)}

P ( v ) = 1 Z { h } e E ( v , h ) {\displaystyle P(v)={\frac {1}{Z}}\sum _{\{h\}}e^{-E(v,h)}} ,

и наоборот. Поскольку базовая структура графа RBM является двудольной (что означает отсутствие внутрислойных связей), активации скрытых единиц взаимно независимы при наличии активаций видимых единиц. И наоборот, активации видимых единиц взаимно независимы при наличии активаций скрытых единиц. [12] То есть для m видимых единиц и n скрытых единиц условная вероятность конфигурации видимых единиц v при наличии конфигурации скрытых единиц h равна

P ( v | h ) = i = 1 m P ( v i | h ) {\displaystyle P(v|h)=\prod _{i=1}^{m}P(v_{i}|h)} .

Наоборот, условная вероятность h при заданном v равна

P ( h | v ) = j = 1 n P ( h j | v ) {\displaystyle P(h|v)=\prod _{j=1}^{n}P(h_{j}|v)} .

Вероятности индивидуальной активации определяются как

P ( h j = 1 | v ) = σ ( b j + i = 1 m w i , j v i ) {\displaystyle P(h_{j}=1|v)=\sigma \left(b_{j}+\sum _{i=1}^{m}w_{i,j}v_{i}\right)} и P ( v i = 1 | h ) = σ ( a i + j = 1 n w i , j h j ) {\displaystyle \,P(v_{i}=1|h)=\sigma \left(a_{i}+\sum _{j=1}^{n}w_{i,j}h_{j}\right)}

где обозначает логистическую сигмоиду . σ {\displaystyle \sigma }

Видимые единицы ограниченной машины Больцмана могут быть многочленными , хотя скрытые единицы являются единицами Бернулли . [ необходимо разъяснение ] В этом случае логистическая функция для видимых единиц заменяется функцией softmax.

P ( v i k = 1 | h ) = exp ( a i k + Σ j W i j k h j ) Σ k = 1 K exp ( a i k + Σ j W i j k h j ) {\displaystyle P(v_{i}^{k}=1|h)={\frac {\exp(a_{i}^{k}+\Sigma _{j}W_{ij}^{k}h_{j})}{\Sigma _{k'=1}^{K}\exp(a_{i}^{k'}+\Sigma _{j}W_{ij}^{k'}h_{j})}}}

где K — число дискретных значений, которые имеют видимые значения. Они применяются в тематическом моделировании, [7] и рекомендательных системах . [5]

Связь с другими моделями

Ограниченные машины Больцмана являются частным случаем машин Больцмана и марковских случайных полей . [15] [16]

Графическая модель RBM соответствует модели факторного анализа . [17]

Алгоритм обучения

Ограниченные машины Больцмана обучаются максимизировать произведение вероятностей, назначенных некоторому обучающему набору (матрице, каждая строка которой рассматривается как видимый вектор ), V {\displaystyle V} v {\displaystyle v}

arg max W v V P ( v ) {\displaystyle \arg \max _{W}\prod _{v\in V}P(v)}

или, что эквивалентно, для максимизации ожидаемой логарифмической вероятности обучающей выборки, выбранной случайным образом из : [15] [16] v {\displaystyle v} V {\displaystyle V}

arg max W E [ log P ( v ) ] {\displaystyle \arg \max _{W}\mathbb {E} \left[\log P(v)\right]}

Алгоритм, наиболее часто используемый для обучения RBM, то есть для оптимизации матрицы весов , — это алгоритм контрастной дивергенции (CD), разработанный Хинтоном , изначально разработанный для обучения моделей PoE ( продукт экспертов ). [18] [19] Алгоритм выполняет выборку Гиббса и используется внутри процедуры градиентного спуска (аналогично тому, как обратное распространение используется внутри такой процедуры при обучении нейронных сетей прямого распространения) для вычисления обновления веса. W {\displaystyle W}

Базовую одношаговую процедуру контрастивной дивергенции (CD-1) для одного образца можно обобщить следующим образом:

  1. Возьмите обучающую выборку v , вычислите вероятности скрытых единиц и выберите скрытый вектор активации h из этого распределения вероятностей.
  2. Вычислите внешнее произведение v и h и назовите его положительным градиентом .
  3. Из h выбираем реконструкцию v' видимых единиц, затем извлекаем из нее скрытые активации h' . (Шаг выборки Гиббса)
  4. Вычислите внешнее произведение v ' и h' и назовите его отрицательным градиентом .
  5. Пусть обновление матрицы весов будет равно положительному градиенту за вычетом отрицательного градиента, умноженному на некоторую скорость обучения: . W {\displaystyle W} Δ W = ϵ ( v h T v h T ) {\displaystyle \Delta W=\epsilon (vh^{\mathsf {T}}-v'h'^{\mathsf {T}})}
  6. Аналогично обновим смещения a и b : , . Δ a = ϵ ( v v ) {\displaystyle \Delta a=\epsilon (v-v')} Δ b = ϵ ( h h ) {\displaystyle \Delta b=\epsilon (h-h')}

Практическое руководство по обучению RBM, написанное Хинтоном, можно найти на его домашней странице. [14]

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

  • Разница между Stacked Restricted Boltzmann Machines и RBM заключается в том, что RBM имеет боковые связи внутри слоя, которые запрещены для того, чтобы сделать анализ послушным. С другой стороны, Stacked Boltzmann состоит из комбинации неконтролируемой трехслойной сети с симметричными весами и контролируемого тонко настроенного верхнего слоя для распознавания трех классов.
  • Использование Stacked Boltzmann заключается в понимании естественных языков , извлечении документов , генерации изображений и классификации. Эти функции обучаются с помощью неконтролируемой предварительной подготовки и/или контролируемой тонкой настройки. В отличие от ненаправленного симметричного верхнего слоя, с двухсторонним несимметричным слоем для связи для RBM. Ограниченная связь Больцмана состоит из трех слоев с асимметричными весами, и две сети объединены в одну.
  • Stacked Boltzmann действительно имеет сходство с RBM, нейрон для Stacked Boltzmann является стохастическим бинарным нейроном Хопфилда, который такой же, как и в Restricted Boltzmann Machine. Энергия как Restricted Boltzmann, так и RBM задается вероятностной мерой Гиббса: . Процесс обучения Restricted Boltzmann похож на RBM. Restricted Boltzmann обучает один слой за раз и приближает состояние равновесия с помощью 3-сегментного прохода, не выполняя обратное распространение. Restricted Boltzmann использует как контролируемый, так и неконтролируемый режим на разных RBM для предварительной подготовки для классификации и распознавания. Обучение использует контрастную дивергенцию с выборкой Гиббса: Δw ij = e*(p ij - p' ij ) E = 1 2 i , j w i j s i s j + i θ i s i {\displaystyle E=-{\frac {1}{2}}\sum _{i,j}{w_{ij}{s_{i}}{s_{j}}}+\sum _{i}{\theta _{i}}{s_{i}}}
  • Ограниченная сила Больцмана в том, что он выполняет нелинейное преобразование, поэтому его легко расширить, и он может дать иерархический слой признаков. Слабость в том, что он имеет сложные вычисления целочисленных и вещественных нейронов. Он не следует градиенту какой-либо функции, поэтому приближение контрастной дивергенции к максимальному правдоподобию импровизировано. [14]

Литература

  • Фишер, Ася; Игель, Кристиан (2012), «Введение в ограниченные машины Больцмана», Прогресс в распознавании образов, анализе изображений, компьютерном зрении и приложениях , Lecture Notes in Computer Science, т. 7441, Берлин, Гейдельберг: Springer Berlin Heidelberg, стр.  14–36 , doi : 10.1007/978-3-642-33275-3_2 , ISBN 978-3-642-33274-6

Смотрите также

Ссылки

  1. ^ Шеррингтон, Дэвид; Киркпатрик, Скотт (1975), «Решаемая модель спинового стекла», Physical Review Letters , 35 (35): 1792– 1796, Bibcode : 1975PhRvL..35.1792S, doi : 10.1103/PhysRevLett.35.1792
  2. ^ Смоленский, Пол (1986). "Глава 6: Обработка информации в динамических системах: основы теории гармонии" (PDF) . В Rumelhart, Дэвид Э.; МакЛелланд, Джеймс Л. (ред.). Параллельная распределенная обработка: исследования микроструктуры познания, том 1: основы . MIT Press. стр. 194–281. ISBN 0-262-68053-X.
  3. ^ Хинтон, GE; Салахутдинов, RR (2006). «Уменьшение размерности данных с помощью нейронных сетей» (PDF) . Science . 313 (5786): 504– 507. Bibcode :2006Sci...313..504H. doi :10.1126/science.1127647. PMID  16873662. S2CID  1658773. Архивировано из оригинала (PDF) 23.12.2015 . Получено 02.12.2015 .
  4. ^ Ларошель, Х.; Бенжио, И. (2008). Классификация с использованием дискриминантных ограниченных машин Больцмана (PDF) . Труды 25-й международной конференции по машинному обучению - ICML '08. стр. 536. doi :10.1145/1390156.1390224. ISBN 978-1-60558-205-4.
  5. ^ ab Салахутдинов, Р.; Мних, А.; Хинтон, Г. (2007). Ограниченные машины Больцмана для совместной фильтрации . Труды 24-й международной конференции по машинному обучению - ICML '07. стр. 791. doi :10.1145/1273496.1273596. ISBN 978-1-59593-793-3.
  6. ^ Коутс, Адам; Ли, Хонглак; Нг, Эндрю Й. (2011). Анализ однослойных сетей в неконтролируемом обучении признаков (PDF) . Международная конференция по искусственному интеллекту и статистике (AISTATS). Архивировано из оригинала (PDF) 2014-12-20 . Получено 19-12-2014 .
  7. ^ ab Руслан Салахутдинов и Джеффри Хинтон (2010). Реплицированный softmax: ненаправленная тематическая модель Архивировано 2012-05-25 в Wayback Machine . Нейронные системы обработки информации 23 .
  8. ^ Брави, Барбара; Ди Джоаккино, Андреа; Фернандес-де-Коссио-Диас, Хорхе; Вальчак, Александра М; Мора, Тьерри; Кокко, Симона; Монассон, Реми (2023-09-08). Битбол, Энн-Флоренс; Эйзен, Майкл Б (ред.). «Подход с переносом обучения для прогнозирования иммуногенности антигена и специфичности рецептора Т-клеток». eLife . 12 : e85126. doi : 10.7554/eLife.85126 . ISSN  2050-084X. PMC 10522340 . PMID  37681658. 
  9. ^ Карлео, Джузеппе; Тройер, Маттиас (2017-02-10). «Решение квантовой проблемы многих тел с помощью искусственных нейронных сетей». Science . 355 (6325): 602– 606. arXiv : 1606.02318 . Bibcode :2017Sci...355..602C. doi :10.1126/science.aag2302. ISSN  0036-8075. PMID  28183973. S2CID  206651104.
  10. ^ Мелько, Роджер Г.; Карлео, Джузеппе; Карраскилья, Хуан; Сирак, Х. Игнасио (сентябрь 2019 г.). «Ограниченные машины Больцмана в квантовой физике». Nature Physics . 15 (9): 887– 892. Bibcode :2019NatPh..15..887M. doi :10.1038/s41567-019-0545-1. ISSN  1745-2481. S2CID  256704838.
  11. ^ Пан, Руижи; Кларк, Чарльз В. (2024). «Эффективность представлений состояний нейронных сетей одномерных квантовых спиновых систем». Physical Review Research . 6 : 023193. arXiv : 2302.00173 . doi : 10.1103/PhysRevResearch.6.023193.
  12. ^ аб Мигель А. Каррейра-Перпиньян и Джеффри Хинтон (2005). О контрастном дивергентном обучении. Искусственный интеллект и статистика .
  13. ^ Хинтон, Г. (2009). «Сети глубоких убеждений». Scholarpedia . 4 (5): 5947. Bibcode : 2009SchpJ...4.5947H. doi : 10.4249/scholarpedia.5947 .
  14. ^ abcd Джеффри Хинтон (2010). Практическое руководство по обучению ограниченных машин Больцмана . UTML TR 2010–003, Университет Торонто.
  15. ^ ab Sutskever, Ilya; Tieleman, Tijmen (2010). "О свойствах конвергенции контрастивной дивергенции" (PDF) . Proc. 13th Int'l Conf. On AI and Statistics (AISTATS) . Архивировано из оригинала (PDF) 2015-06-10.
  16. ^ ab Ася Фишер и Кристиан Игель. Обучение ограниченных машин Больцмана: Введение Архивировано 2015-06-10 в Wayback Machine . Распознавание образов 47, стр. 25-39, 2014
  17. ^ Мария Анхелика Куэто; Джейсон Мортон; Бернд Штурмфельс (2010). «Геометрия ограниченной машины Больцмана». Алгебраические методы в статистике и теории вероятностей . 516. Американское математическое общество. arXiv : 0908.4425 . Bibcode : 2009arXiv0908.4425A.
  18. ^ Джеффри Хинтон (1999). Продукты экспертов. ICANN 1999 .
  19. ^ Хинтон, GE (2002). «Продукты обучения экспертов путем минимизации контрастивного расхождения» (PDF) . Нейронные вычисления . 14 (8): 1771– 1800. doi :10.1162/089976602760128018. PMID  12180402. S2CID  207596505.

Библиография

  • Чен, Эдвин (2011-07-18). "Введение в ограниченные машины Больцмана". Блог Эдвина Чена .
  • Николсон, Крис; Гибсон, Адам. "Учебник для начинающих по ограниченным машинам Больцмана". Документация Deeplearning4j . Архивировано из оригинала 2017-02-11 . Получено 2018-11-15 .{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  • Николсон, Крис; Гибсон, Адам. «Понимание RBM». Документация Deeplearning4j . Архивировано из оригинала 20-09-2016 . Получено 29-12-2014 .
  • Реализация Бернулли RBM на Python и руководство
  • SimpleRBM — это очень небольшой код RBM (24 КБ), который поможет вам узнать, как RBM обучаются и работают.
  • Реализация Julia ограниченных машин Больцмана: https://github.com/cossio/RestrictedBoltzmannMachines.jl
Retrieved from "https://en.wikipedia.org/w/index.php?title=Restricted_Boltzmann_machine&oldid=1255756168"