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

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Графове подання прикладу машини Больцмана.
Графове подання прикладу машини Больцмана. Кожне неорієнтоване ребро подає залежність. У цьому прикладі є 3 приховані вузли та 4 видимі. Це не обмежена машина Больцмана.

Маши́на Бо́льцмана (також звана моде́ллю Ше́ррінгтона — Кіркпа́тріка із зо́внішнім по́лем та стохасти́чною моде́ллю І́зінга — Ле́нца — Лі́ттла, англ. Boltzmann machine, Sherrington–Kirkpatrick model with external field, stochastic Ising–Lenz–Little model) — це стохастична модель спінового скла із зовнішнім полем, тобто модель Шеррінгтона — Кіркпатріка[en],[1] що є стохастичною моделлю Ізінга. Це методика статистичної фізики, яку застосовують у контексті когнітивної науки.[2] Її також класифікують як марковське випадкове поле.[3]

Машини Больцмана теоретично захопливі через локальність і геббову природу їхнього алгоритму тренування (тренуються за геббовим правилом), а також через їхню паралельність і подібність їхньої динаміки до простих фізичних процесів. Машини Больцмана з необмеженою зв'язністю не виявилися корисними для практичних задач у машинному навчанні та висновуванні, але якщо зв'язність належним чином обмежено, то навчання можливо зробити достатньо ефективним, щоби воно було корисним для практичних задач.[4]

Їх назвали на честь больцманового розподілу[en] у статистичній механіці, який використовують у їхній функції відліків. Їх активно популяризували та пропагували Джефрі Гінтон, Террі Сейновський[en] та Ян ЛеКун у спільнотах когнітивних наук та машинного навчання.[2] Як загальніший клас у машинному навчанні ці моделі називають «моделями на основі енергії[en]» (англ. "energy based models", EBM), оскільки як відправну точку для визначення навчального завдання використовують гамільтонові функції спінового скла.[5]

Структура

[ред. | ред. код]
Графове подання прикладу машини Больцмана з мітками ваг.
Графове подання машини Больцмана з кількома позначеними вагами. Кожне неорієнтоване ребро подає залежність і має вагу . У цьому прикладі є 3 приховані вузли (сині) та 4 видимі (білі). Це не обмежена машина Больцмана.

Машина Больцмана, як і модель Шеррінгтона — Кіркпатріка[en], це мережа вузлів із загальною «енергією» (гамільтоновою функцією), визначеною для загальної мережі. Її вузли видають бінарні результати. Ваги машини Больцмана стохастичні . Глобальна енергія у машині Больцмана ідентична за виглядом глобальній енергії мереж Гопфілда та моделей Ізінга:

Де:

  •  — сила зв'язку між вузлом та вузлом .
  •  — стан, , вузла .
  •  — зміщення вузла у функції глобальної енергії. ( це поріг збудження для цього вузла.)

Часто ваги подають як симетричну матрицю з нулями по діагоналі.

Імовірність стану вузла

[ред. | ред. код]

Різницю в глобальній енергії, що є результатом дорівнювання одного вузла 0 (off) чи 1 (on), позначувану через , виходячи з симетричної матриці ваг, задають як

Це можливо виразити як різницю енергій двох станів:

Заміна енергії кожного стану його відносною ймовірністю відповідно до больцманового множника[en] (властивості больцманового розподілу[en], що енергія стану пропорційна від'ємній логарифмічній ймовірності цього стану), дає:

де  — больцманова стала, що вбирається штучним поняттям температури . Потім ми змінюємо порядок членів і вважаємо, що ймовірності увімкненості та вимкненості вузла повинні давати в сумі одиницю:

У розв'язку для ймовірність того, що -й вузол увімкнено, дає

де скаляр називають температурою системи. Це відношення є джерелом логістичної функції, яку можна знайти у ймовірнісних виразах варіантів машини Больцмана.

Стан рівноваги

[ред. | ред. код]

Ця мережа працює шляхом циклічного обирання вузла та скидання його стану. Після достатньо тривалої роботи за певної температури, відповідно до больцманового розподілу[en], ймовірність глобального стану мережі залежить лише від енергії цього глобального стану, а не від початкового стану, з якого почався процес. Це означає, що логарифмічні ймовірності глобальних станів стають лінійними за своїми енергіями. Цей зв'язок справедливий, коли машина перебуває «у стані теплової рівноваги», тобто розподіл імовірностей глобальних станів збігся. При запуску мережі починаючи з високої температури її температура поступово знижується до досягнення теплової рівноваги за нижчої температури. Вона тоді може збігтися до розподілу, де рівень енергії коливається навколо глобального мінімуму. Цей процес називають імітуванням відпалювання.

Щоби натренувати мережу таким чином, щоби був шанс її збігання до глобального стану відповідно до зовнішнього розподілу над цими станами, ваги мусить бути встановлено так, щоби глобальні стани з найвищою ймовірністю отримували найменшу енергію. Це робиться тренуванням.

Тренування

[ред. | ред. код]

Вузли в машині Больцмана поділяють на «видимі» (англ. 'visible') вузли, V, та «приховані» (англ. 'hidden') вузли, H. Видимі вузли — це ті, які отримують інформацію з «середовища», тобто тренувальний набір — це набір двійкових векторів над множиною V. Розподіл над тренувальним набором позначують через .

Розподіл над глобальними станами збігається, коли машина Больцмана досягає теплової рівноваги. Ми позначуємо цей розподіл, після відособлення його над прихованими вузлами, через .

Наша мета — наблизити «справжній» розподіл , використовуючи , вироблений машиною. Подібність цих двох розподілів вимірюють розходженням Кульбака — Лейблера, :

де підсумовування йде за всіма можливими станами . є функцією ваг, оскільки вони визначають енергію стану, а енергія, як обіцяє больцманів розподіл, визначає . Алгоритм градієнтного спуску над змінює задану вагу відніманням часткової похідної за цією вагою.

Тренування машини Больцмана включає дві почергові фази. Одна — це «позитивна» фаза, коли стани видимих вузлів прив'язуються до конкретного бінарного вектора стану, вибраного з тренувального набору (відповідно до ). Інша — «негативна» фаза, коли мережі дозволяють вільно працювати, тобто лише стан вузлів входу визначається зовнішніми даними, але вузлам виходу дозволено плавати. Градієнт відносно заданої ваги, , задається рівнянням[6]

де

  •  — ймовірність того, що вузли i та j обидва увімкнено, коли машина знаходиться в рівновазі у позитивній фазі.
  •  — ймовірність того, що вузли i та j обидва увімкнено, коли машина знаходиться в рівновазі у негативній фазі.
  • позначує темп навчання

Цей результат випливає з того, що за теплової рівноваги ймовірність будь-якого глобального стану , коли мережа працює вільно, задається больцмановим розподілом.

Це правило навчання біологічно вірогідне, оскільки єдина інформація, необхідна для зміни ваг, надається «локальною» інформацією. Тобто, з'єднання (синапс, із біологічного погляду) не потребує інформації ні про що, крім двох нейронів, які воно з'єднує. Це біологічно реалістичніше, ніж інформація, необхідна з'єднанню в багатьох інших алгоритмах тренування нейронних мереж, таких як зворотне поширення.

Навчання машини Больцмана не використовує алгоритм очікування-максимізації, широко вживаний у машинному навчанні. З мінімізуванням КЛ-розходження, воно рівнозначне максимізуванню логарифмічної ймовірності даних. Таким чином, процедура тренування виконує градієнтне сходження за логарифмом правдоподібності спостережуваних даних. Це відрізняється від алгоритму очікування-максимізації, де апостеріорний розподіл прихованих вузлів мусить бути обчислено до максимізування очікуваного значення повної правдоподібності даних під час кроку максимізування.

Тренування зміщень відбувається подібно, але використовує активність лише одного вузла:

Проблеми

[ред. | ред. код]

Теоретично, машина Больцмана це досить загальне обчислювальне середовище. Наприклад, тренована на фотографіях, машина теоретично змоделювала би розподіл фотографій, і цю модель можливо було би використовувати, щоби, наприклад, доповнювати[en] часткову фотографію.

На жаль, машини Больцмана зазнають серйозної практичної проблеми, а саме того, що вони, як видається, перестають правильно навчатися, коли машина масштабується до чогось більшого за тривіальний розмір.[джерело?] Це пов'язано з важливими ефектами, зокрема:

  • час, необхідний для збору статистики рівноваги, зростає експоненційно з розміром машини та величиною сил з'єднань[джерело?]
  • сили з'єднань пластичніші тоді, коли з'єднані вузли мають проміжні ймовірності збудження між нулем та одиницею, що призводить до так званої пастки дисперсії (англ. variance trap). Чистий ефект полягає в тому, що шум змушує сили з'єднань слідувати випадковим блуканням, доки збудження не наситяться.

Обмежена машина Больцмана

[ред. | ред. код]
Графове подання обмеженої машини Больцмана
Графове подання обмеженої машини Больцмана. Чотири блакитні вузли подають приховані вузли, а три червоні — видимі стани. В обмежених машинах Больцмана існують лише з'єднання (залежності) між прихованими та видимими вузлами, й жодних між вузлами одного типу (ані з'єднань прихований-прихований, ані видимий-видимий).

Хоч навчання у звичайних машинах Больцмана і непрактичне, воно може бути досить дієвим в обмеженій машині Больцмана (ОМБ, англ. restricted Boltzmann machine, RBM), яка не допускає внутрішньошарових з'єднань з-поміж прихованих та видимих вузлів, тобто немає з'єднань між видимими й видимими та прихованими й прихованими вузлами. Після тренування однієї ОМБ збудження її прихованих вузлів можливо розглядати як дані для тренування ОМБ вищого рівня. Цей метод складання (англ. stacking) ОМБ уможливлює ефективне тренування багатьох шарів прихованих вузлів і є однією з найпоширеніших стратегій глибокого навчання. Породжувальна модель покращується з додаванням кожного нового шару.

Розширення обмеженої машини Больцмана дозволяє використовувати дійснозначні дані замість двійкових.[7]

Один із прикладів практичного застосування ОМБ — розпізнавання мовлення.[8]

Глибока машина Больцмана

[ред. | ред. код]

Глибока машина Больцмана (ГМБ, англ. deep Boltzmann machine, DBM) — це один з типів двійкового парного марковського випадкового поля (неорієнтованої ймовірнісної графової моделі) з кількома шарами прихованих випадкових змінних. Це мережа симетрично спарованих стохастичних двійкових вузлів[en]. Вона складається з набору видимих вузлів та шарів прихованих вузлів . Жодне з'єднання не з'єднує вузли одного й того ж шару (як і в ОМБ). Для ГМБ ймовірністю, приписуваною векторові ν, є

де  — набір прихованих вузлів, а  — параметри моделі, що подають взаємодії видимі-приховані та приховані-приховані.[9] У ГМП лише два верхні шари утворюють обмежену машину Больцмана (що є неорієнтованою графовою моделлю), тоді як нижні шари утворюють орієнтовану породжувальну модель. У ГМБ всі шари симетричні та неорієнтовані.

Як і ГМП, ГМБ можуть навчатися складних та абстрактних внутрішніх подань входу в таких завданнях як розпізнавання об'єктів[en] та мовлення, використовуючи обмежені мічені дані для тонкого налаштовування подань, побудованих із використанням великого набору немічених сенсо́рних вхідних даних. Проте, на відміну від ГМП та глибоких згорткових нейронних мереж, вони здійснюють процедуру висновування та тренування в обох напрямках, висхідному та низхідному, що дозволяє ГМБ краще розкривати подання вхідних структур.[10][11][12]

Проте низька швидкість ГМБ обмежує їхню продуктивність та функціональність. Через те, що навчання точної максимальної правдоподібності для ГМБ непіддатливе, можливе лише навчання приблизної максимальної правдоподібності. Іншим варіантом є використання висновування осередненого поля (англ. mean-field inference) для оцінювання залежних від даних очікувань та наближення очікуваної достатньої статистики застосуванням методів Монте-Карло марковських ланцюгів (МКМЛ).[9] Це наближене висновування, що мусить бути здійснено для кожного перевірного входу, приблизно в 25—50 разів повільніше за єдиний висхідний прохід у ГМБ. Це робить спільну оптимізацію непрактичною для великих наборів даних і обмежує використання ГМБ для таких завдань як подання ознак.

Піково-пластинні ОМБ

[ред. | ред. код]

Потреба в глибокому навчанні з дійснозначними входами, як у гауссових ОМБ, привела до піково-пластинної ОМБ (ппОМБ, англ. spike-and-slab RBM, ssRBM), яка моделює неперервнозначні входи двійковими[en] латентними змінними.[13] Подібно до базових ОМБ та їхніх варіантів, піково-пластинна ОМБ це двочастковий граф, але, як і в ГОМБ, видимі вузли (входи) дійснозначні. Різниця полягає у прихованому шарі, де кожен прихований вузол має змінну бінарного піку (англ. spike) та змінну дійснозначної пластини (англ. slab). Пік — це дискретна маса ймовірності в нульовій точці, тоді як пластина — це густина в неперервній області;[14] їхня суміш утворює апріорне.[15]

Розширення ппОМБ під назвою µ-ппОМБ забезпечує додаткові моделювальні потужності за допомогою додаткових членів у функції енергії . Один із цих членів дає змогу моделі формувати умовний розподіл пікових змінних знеособленням пластинних змінних за заданого спостереження.

У математиці

[ред. | ред. код]

У загальнішій математичній постановці розподіл Больцмана також відомий як міра Ґіббза[en]. У статистиці й машинному навчанні це називають логарифмічно-лінійною моделлю[en]. У глибокому навчанні розподіл Больцмана використовують у вибірковому розподілі стохастичних нейронних мереж, таких як машина Больцмана.

Історія

[ред. | ред. код]

Машина Больцмана ґрунтується на моделі спіновго скла стохастичної моделі Ізінга Шеррінгтона — Кіркпатріка.[16]

Первинний внесок у застосування таких моделей на основі енергії у когнітивній науці з'явився у статтях Гінтона та Сейновського.[17][18]

Засаднича публікація Джона Гопфілда поєднала фізику та статистичну механіку, згадавши спінове скло.[19]

Ідея застосування моделі Ізінга з ґіббзовим вибиранням[en] з відпалюванням присутня в проєкті Copycat[en] Дугласа Гофстедтера.[20][21]

Подібні ідеї (зі зміною знаку функції енергії) зустрічаються в «Теорії гармонії» Пола Смоленського[en].

Явна аналогія, проведена зі статистичною механікою у формулюванні машини Больцмана, привела до використання термінології, запозиченої з фізики (наприклад, «енергія», а не «гармонія»), що стала стандартом у цій галузі. Широке застосування цієї термінології, можливо, було заохочено тим фактом, що її використання призвело до прийняття різноманітних понять та методів зі статистичної механіки. Різноманітні пропозиції щодо використання імітування відпалювання для висновування були очевидно незалежними.

Моделі Ізінга стали вважати окремим випадком марковських випадкових полів, які знаходять широке застосування в лінгвістиці, робототехніці, комп'ютернім баченні та штучному інтелекті.

Див. також

[ред. | ред. код]
.

Примітки

[ред. | ред. код]
  1. Sherrington, David; Kirkpatrick, Scott (1975), Solvable Model of a Spin-Glass, Physical Review Letters (англ.), 35 (35): 1792—1796, Bibcode:1975PhRvL..35.1792S, doi:10.1103/PhysRevLett.35.1792
  2. а б Ackley, David H; Hinton Geoffrey E; Sejnowski, Terrence J (1985), A learning algorithm for Boltzmann machines (PDF), Cognitive Science (англ.), 9 (1): 147—169, doi:10.1207/s15516709cog0901_7
  3. Hinton, Geoffrey E. (24 травня 2007). Boltzmann machine. Scholarpedia (англ.). 2 (5): 1668. Bibcode:2007SchpJ...2.1668H. doi:10.4249/scholarpedia.1668. ISSN 1941-6016.
  4. Osborn, Thomas R. (1 січня 1990). Fast Teaching of Boltzmann Machines with Local Inhibition. International Neural Network Conference (англ.). Springer Netherlands. с. 785. doi:10.1007/978-94-009-0643-3_76. ISBN 978-0-7923-0831-7.
  5. Nijkamp, E.; Hill, M. E; Han, T. (2020), On the Anatomy of MCMC-Based Maximum Likelihood Learning of Energy-Based Models, Proceedings of the AAAI Conference on Artificial Intelligence (англ.), 4 (34): 5272—5280, doi:10.1609/aaai.v34i04.5973
  6. Ackley, David H.; Hinton, Geoffrey E.; Sejnowski, Terrence J. (1985). A Learning Algorithm for Boltzmann Machines (PDF). Cognitive Science[en] (англ.). 9 (1): 147—169. doi:10.1207/s15516709cog0901_7. Архів оригіналу (PDF) за 18 липня 2011.
  7. Recent Developments in Deep Learning (англ.), архів оригіналу за 22 грудня 2021, процитовано 17 лютого 2020
  8. Yu, Dong; Dahl, George; Acero, Alex; Deng, Li (2011). Context-Dependent Pre-trained Deep Neural Networks for Large Vocabulary Speech Recognition (PDF). Microsoft Research (англ.). 20.
  9. а б Hinton, Geoffrey; Salakhutdinov, Ruslan (2012). A better way to pretrain deep Boltzmann machines (PDF). Advances in Neural (англ.). 3: 1—9. Архів оригіналу (PDF) за 13 серпня 2017. Процитовано 18 серпня 2017.
  10. Hinton, Geoffrey; Salakhutdinov, Ruslan (2009). Efficient Learning of Deep Boltzmann Machines (PDF) (англ.). 3: 448—455. Архів оригіналу (PDF) за 6 листопада 2015. Процитовано 18 серпня 2017.
  11. Bengio, Yoshua; LeCun, Yann (2007). Scaling Learning Algorithms towards AI (PDF) (англ.). 1: 1—41.
  12. Larochelle, Hugo; Salakhutdinov, Ruslan (2010). Efficient Learning of Deep Boltzmann Machines (PDF) (англ.): 693—700. Архів оригіналу (PDF) за 14 серпня 2017. Процитовано 18 серпня 2017.
  13. Courville, Aaron; Bergstra, James; Bengio, Yoshua (2011). A Spike and Slab Restricted Boltzmann Machine (PDF). JMLR: Workshop and Conference Proceeding (англ.). 15: 233—241. Архів оригіналу (PDF) за 4 березня 2016. Процитовано 25 серпня 2019.
  14. Courville, Aaron; Bergstra, James; Bengio, Yoshua (2011). Unsupervised Models of Images by Spike-and-Slab RBMs (PDF). Proceedings of the 28th International Conference on Machine Learning (англ.). Т. 10. с. 1—8. Архів оригіналу (PDF) за 4 березня 2016. Процитовано 25 серпня 2019.
  15. Mitchell, T; Beauchamp, J (1988). Bayesian Variable Selection in Linear Regression. Journal of the American Statistical Association (англ.). 83 (404): 1023—1032. doi:10.1080/01621459.1988.10478694.
  16. Sherrington, David; Kirkpatrick, Scott (29 грудня 1975). Solvable Model of a Spin-Glass. Physical Review Letters (англ.). 35 (26): 1792—1796. Bibcode:1975PhRvL..35.1792S. doi:10.1103/physrevlett.35.1792. ISSN 0031-9007.
  17. Hinton, Geoffery; Sejnowski, Terrence J. (May 1983). Analyzing Cooperative Computation. 5th Annual Congress of the Cognitive Science Society (англ.). Rochester, New York. Процитовано 17 лютого 2020.{{cite conference}}: Обслуговування CS1: Сторінки з параметром url-status, але без параметра archive-url (посилання)
  18. Hinton, Geoffrey E.; Sejnowski, Terrence J. (June 1983). Optimal Perceptual Inference. IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (англ.). Washington, D.C.: IEEE Computer Society. с. 448—453.
  19. Hopfield, J. J. (1982). Neural networks and physical systems with emergent collective computational abilities. Proceedings of the National Academy of Sciences of the United States of America (англ.). [s.n.] 79 (8): 2554—8. Bibcode:1982PNAS...79.2554H. doi:10.1073/pnas.79.8.2554. OCLC 848771572. PMC 346238. PMID 6953413.
  20. Hofstadter, D. R. (January 1984). The Copycat Project: An Experiment in Nondeterminism and Creative Analogies (англ.). Defense Technical Information Center. OCLC 227617764.
  21. Hofstadter, Douglas R. (1988). A Non-Deterministic Approach to Analogy, Involving the Ising Model of Ferromagnetism. У Caianiello, Eduardo R. (ред.). Physics of cognitive processes (англ.). Teaneck, New Jersey: World Scientific. ISBN 9971-5-0255-0. OCLC 750950619.
  22. Liou, C.-Y.; Lin, S.-L. (1989). The other variant Boltzmann machine. International Joint Conference on Neural Networks (англ.). Washington, D.C., USA: IEEE. с. 449—454. doi:10.1109/IJCNN.1989.118618.

Література

[ред. | ред. код]

Посилання

[ред. | ред. код]