Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
системотехніка_конспект.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
5.91 Mб
Скачать

Тема 6. Машина Больцмана.

Машина Больцмана. Машина Больцмана являє собою стохастичний варіант мережі Хопфілда. Бінарні нейроподібні елементи (блоки) трактуються тут як представники елементарних гіпотез, а ваги — як слабкі парні взаємні обмеження між ними. Позитивна вага зв'язку вказує, що дві гіпотези прагнуть підтримувати один одного, а негативний — на їхню несумісність. Симетрія зв'язків дозволяє проаналізувати поводження мережі з використанням енергетичної функції ( див. п. 1.4.2 підп. 2):

(1.13)

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

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

(1.14)

Тому алгоритм зміни стану бінарних нейроподібних елементів (див. 1.3) автоматично приводить до мінімізації енергії Е.

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

(1.15)

де: рi імовірність перебування i-ro блоку в одиничному стані;

Р(х) — сигмоїдна функція (Рисунок 1.3, б);

Т — параметр, аналогічний температурі.

При T=0 це правило переходить у правило спрацьовування детермінованих бінарних елементів (1.3), а при підвищенні температури збільшується імовірність переходу системи в стан з більшою енергією.

Якщо мережа з таким випадковим правилом прийде в стан «теплової рівноваги», відносні імовірності її перебування в двох глобальних станах будуть підкорятися розподілу Больцмана

(1.16)

де: PA імовірність перебування мережі в глобальному стані A;

ЕA його енергія.

При низькій температурі система «віддає перевагу» стану з низькою енергією, однак потрібно багато часу для досягнення рівноваги. При високих температурах рівновага досягається швидше, однак, немає сильної переваги низьким енергетичним станам

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

Машина Больцмана може використовуватися для класифікації образів. При цьому в ній, як і в багатошаровому персептроні, виділяють вхідні, вихідні і внутрішні (сховані) блоки (Рисунок 1.4), однак для кожного прямого зв'язку між блоками існує рівна їй по величині зворотній (симетричний) зв'язок. Процес розпізнавання складається з наступних кроків:

1) на вхідних блоках фіксують вхідний образ;

2) рандомізують стан схованих і вихідних блоків, а потім повільно знижують температуру;

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

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

Практично кожен цикл навчання складається з трьох кроків.

1. Фаза тренування.

Для кожної пари образів фіксуються стани вхідних і вихідних блоків, а інша частина мережі піддається віджигу до низької температури. Потім для кожного зв'язку збирається статистика, яку частину часу були одночасно активні блоки, що з'єднуються нею.

2. Фаза перевірки.

Обчислюється аналогічна величина , однак тепер вихідні блоки не зафіксовані і вільно змінюють стан.

3. Зміна зв'язків.

У добре навченій мережі її поведінка буде ідентична для обох фаз. Якщо р+ і р- не збігаються для конкретного зв'язку, її змінюють: , де - маштабує розмір зміни. Кожен цикл необхідно повторити багато разів, поки матриця зв'язків не стабілізується в достатньому ступені.

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

(1.17)

де: Р+ (Ia /\ Ob) — імовірність a-го стану вхідних блоків і b-го стану вихідних, коли вони фіксовані зовнішнім середовищем;

P+ (Оь | Ia) — імовірність b-го стану вихідних блоків при a-му стані вхідних, коли вони фіксовані середовищем;

Р- (Оь | Ia ) — відповідна імовірність, коли фіксовані тільки входи. Дійсно, як показано в [94], частинна похідна Q по кожному з ваг має вид

(1.18)

що дозволяє навчати мережу за допомогою описаної локальної процедури. На жаль, алгоритм навчання машини Больцмана має типові недоліки, властиві процедурам градієнтного спуску в багатопараметричних просторах. Насамперед, це неточність обчислення градієнта, обумовлена неповним досягненням теплової рівноваги й обмеженим часом збору статистик. Через свою стохастичність алгоритм вимагає набагато великих тимчасових витрат у порівнянні навіть з алгоритмом навчання багатошарового персептрона методом зворотного поширення помилки (п. 1.4.1, підп. 2). Наявна апаратна реалізація, однак, зм'якшує цей недолік, принаймні для невеликих мереж. Відомі приклади застосування машини Больцмана для рішення класичних персептронних задач, таких, як задача « виключаючого АБО», виявлення симетрії у вхідному образі і т.д., а також для розпізнавання мови.