Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсак_(Автосохраненный).docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
200 Кб
Скачать
☆

3.2. Двоскерована асоціативна пам’ять.

Розглянута раніше модель асоціативної пасивної пам’яті насправді є авто асоціативною, тобто деякий раніше запам’ятовуваний образ може бути або виправлений або доповнений. Однак він не може бути асоційований з якимось іншим образом. Таким чином ланцюжок «згадувань» буде неможливий.

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

  1. Структура та функціонування ДАП.

За своєю будовою ДАП є багатошарова ШНМ, зі зворотніми зв’язками. ЗвичайноАП моделюється одношаровою ШНМ Хопфілда. У випадку ДАП ШНМ складається із 2-ох активних прошарків із зворотніми зв’язками. При цьому зворотній зв’язок встановлюється між виходом 2-ого прошарку, та входом 1-ого прошарку. Схематично конфігурацію ДАП можна зообразити так :

1

W

A

WT

1

out1

2

2

out2

N

N

outN

0-вий прош; 1-ий прош; 2-ий прош.

0-ий прошарок немістить нейронів він виконує функцію розподілу виходів з нейронів 2-ого прошарку на входи нейронів 1-ого прошарку.

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

Виходи нейронів 2-ого прошарку оцінюються в лінії розрізу ВВ. Матриця вагових коефіцієнтів 2-ого прошарку W, та 1-ого прошарку WT пов’язані між собою операцією транспортування

  1. Функціонування ДАП здійснюється за такою схемою:

  1. Вектор вхідних сигналів початково подається на входи 2-ого прошарку тобто на лінію АА. Він обробляється нейронами за стандартною схемою з використанням деякої активаційної функції :

bi=F(Ʃi)=F( ) (1)

Тут = (а1,а2,…,аw) - вектор вхідних сигналів

= (b1,b2,…,bn) - вектор виходів 2-ого прошарку на лінії ВВ

F- передатна функція, яку можна обирати у вигляді сигмоїдної функції

F(Ʃ)=

Якщож ДАП моделює бінарну систему із значеннями 0 та 1, то передатна функція може обиратися у вигляді порогової функції стрибка, подібно до мереж Хопфілда

  1. Отриманий вектор виходів з 2-ого прошарку подається на вхід 1-ого прошарку. Функціонування цього прошарку здійснюється подібним чином. При цьому виходи 1-ого прошарку, які формуються на лінії АА дають новий вектор a

aj=F( ·bi) (2)

Передатна функція нейронів 1-ого прошарку може обиратись і у такому вигляді як і нейронів 2-ого прошарку.

  1. Отриманий результат на лінії АА знову подається на вхід 2-ого прошарку і процес обчислень повторюється. Обчислення продовжуються до тих пір, доки на виходах прошарків не буде зафіксовано стабілізацію, результатів. Тобто на 2-ох послідовних ітераціях значення виходів будуть однакові. Тоді якщо початковий вхідний образ подається у вигляді вектора а на лінії АА, остаточний результуючий вектор лінії ВВ, і буде відновлення асоційованим із вектором . Якщож початковий вхідний образ подався у вигляді b на ВВ, то остаточний результат на лінії АА буде відновленим асоційованим образом образом b.

Якщож ДАП працює як бінарна система із значенням 0 та 1, то доцільно здійснювати перехід до протилежних значень -1, та 1. 0 – відповідає -1, а 1 сама собі.

  1. Навчання-запам’ятовування асоційованих образів.

Процес навчання ДАП практично є запам’ятовуванням асоційованих між собою пар образів. Подібно до запам’ятовування у звичаній АП формування матриці вагових коефіцієнтів W на WTздійснювався так :

W=

M – кількість пар асоційованих образів у навчальній множині

- вектор стовпчик однієї із асоційованих частин образу

- вектор рядок другої із частини асоційованого образу

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

  1. Приклад

Розглянемо випадок 3-х асоційованих пар

=(1,0,0,0) =(0,0,0,1)

=(0,1,0,0) =(0,0,1,0)

=(0,0,1,0) =(0,1,0,0)

=(0,0,0,1) =(1,0,0,0)

Здійснюємо перехід від значень (0,1) до (-1,1)

=(1,-1,-1,-1) =(-1,-1,-1,1)

=(-1,1,-1,-1) =(-1,-1,1,-1)

=(-1,-1,1,-1) =(-1,1,-1,1)

=(-1,-1,-1,1) =(1,-1,-1,-1)

Запам’ятовування передбачає обчислення матриці W

W = · + · · ·

-1 -1 -1 1 1 1 -1 1 1 -1 1 1 -1 1 1 1

= 1 1 1 -1 + -1 -1 1 1 + 1 -1 1 1 + -1 1 1 1 =

1 1 1 -1 1 1 -1 1 -1 1 -1 -1 -1 1 1 1

1 1 1 -1 1 1 -1 1 1 -1 1 1 1 -1 -1-1

0 0 0 4

= 0 0 4 0

0 4 0 0

4 0 0 0

0 0 0 4

WT= 0 0 4 0

0 4 0 0

4 0 0 0

Подамо на вхід другого прошарку тобто на лінію АА деякій вектор a1 = (1,0,0,0)

a `= =(1,-1,-1,-1)

Тоді вектор =(W·aT)= =

1

Як видно вхідному вектору a=a1 отримали у відповідність асоційований з ним вектор b=b1. Для констатації зупинки обчислень потрібно виконати повну ітерацію. Тобто отриманому на 2-ому прошарку порахувати новий вектор a на виході 1-ого прошарку (на лінії АА), та спів ставити його з попереднім вектором а.

0004 -1 1

=F(WT· )= 0040 · -1 = 0 =

0400 -1 0

4000 -1 0

Stop.