Лекция състезателно обучение без надзор. Самоорганизиращи се карти на кохонен



Дата25.07.2016
Размер153.05 Kb.
#5768
ТипЛекция



ЛЕКЦИЯ 6. СЪСТЕЗАТЕЛНО ОБУЧЕНИЕ БЕЗ НАДЗОР. САМООРГАНИЗИРАЩИ СЕ КАРТИ НА КОХОНЕН.


ОБЩИ СВОЙСТВА НА СЪСТЕЗАТЕЛНОТО ОБУЧЕНИЕ

В досега разглежданите модели на ИНМ обучението се извършва с помощта на тренировъчни входно-изходни двойки Хp, Dp, където Dp = F(Хp). Често обаче съществуват проблеми, при които желаните изходни стойности са неизвестни. Вместо това единствената достъпна информация са входните данни, които често са дадени в излишък. В този случай трябва да се извлече съществената информация само чрез обработка на входните данни. Примери за такъв вид проблеми са следните:



  1. Кластъринг: Във входните данни трябва да се открият групи (кластъри) от образци които се подреждат по някакъв признак на сходство. Изходът «лепва» етикет на входния образец т.е. причислява го към даден кластър.

  2. Дискретизиране (квантуване) на входното пространство.

Непрекъснатото входно пространство трябва да се разбие на дискретни области в зависимост от честотата с която се появяват входни сигнали в дадената област.

  1. Редуциране размерността на входните данни. Входните данни се проектират в подпространство с по-ниска размерност така, че да се запазят и «откроят» характерни особености.

При състезателното обучение промяната на връзките става на базата на някакво глобално състезание между невроните. За определяне на неврона победител съществуват два метода:

1) Чрез скаларно произведение между входния вектор и векторите на връзките на невроните. Нека входният вектор Х и векторът на връзките W са нормализирани т. е. с единична дължина. Изходният неврон 0 определя активноста си по правилото:

а0 = W0= w0i хi .

За победител се избира този неврон к, за който е изпълнено:

аi  аk за всяко ik

2) Определяне на победителя чрез Евклидово разстояние.

За победител може да се обяви неврона к, ако е изпълнено условието:

|| Wk - X|||| Wj - X|| за всяко j.

Лесно може да се покаже, че това условие и предишното (скаларно произведение) са идентични ако векторите са нормализирани.

Нека всеки неврон е свързан със себеси с връзка +1, а с всички останали неврони чрез забранителна (отрицателна) връзка. При това положение мрежата достига състояние, при което само неврона победител остава активен, а всички останали неврони имат активност нула. Този случай се нарича «победителят взима всичко» (фиг.1).



Фиг.1 Състезателно обучение

В резултат на състезанието между невроните профила на активностите на невроните се променя като се усилва контраста между слаби и силни неврони както е показано на фиг.2.

След като победителят к е избран връзките се актуализират по закона:

Wk(t+1)= {Wk(t) +[ X(t) - Wk(t)]}/ ||Wk(t) +[ X(t) - Wk(t)]||

Вижда се, че промяната завърта векторът на връзката на победителя към входния вектор X. Всеки нов входен вектор завърта към себеси неврона победител като в крайна сметка всеки неврон (вектор на връзката му) се ориентира в тази област, където се групират сходни входни вектори (кластъри).


Фиг.2 Увеличаване на контраста на активностите при състезателни неврони

Важен проблем при състезателното обучение е инициализирането на векторите на връзките. Особено ако входните вектори са многомерни може да се окаже, че при случайно избрани начални стойности на векторите на връзките някой връзки, които са далеч от входните вектори може никога да не се обучат тъй като съответните неврони никога няма да бъдат избрани за победители. Затова обикновено началните вектори на връзките се насочват в близост до случайно избрана група от входни вектори. Този проблем може да се преодолее и по друг начин, чрез т.нар. честотно чувствително състезание. Отчита се колко пъти всеки неврон е бил победител и при избора на победител невроните, които често побеждават намаляват вероятноста си да бъдат отново избрани. Обратно, невроните които постоянно губят повишават вероятноста си да бъдат избрани.

На фиг.3а са показани 6 кластъра всеки съставен от 6 образеца (означени с +). След 500 цикъла на обучение векторите на връзките (означени с о) се ориентират към центъра на тежеста на дадения кластър, както е показано на фиг 3а. Така всеки неврон открива даден кластър от сходни входни данни.

На фиг.3б е извършена квантизация на входното пространство. При квантизацията целта е да се раздели непрекъснатото входно пространство на дискретен брой подпространства така че всеки входен вектор да попадне в едно от подпространствата. Системата фактически открива функцията на разпределението на плътността на входните данни. Така на фиг.3б се вижда, че плътността на неврони (съответно подпространства) е най-голяма в долната част, където е най голяма вероятността да се появи входен сигнал. Там дискретизацията е по-финна отколкото в горната част, където входните сигнали са рядко.

(a)


(b)


Фиг.3(а) Кластеринг (групиране) на входни образци.

(б) Квантизация (дискретизация) на входното пространство според гъстотата на разпределение на входните образци.

САМООРГАНИЗИРАЩИ СЕ КАРТИ НА КОХОНЕН

В повечето модели на ИНМ връзките между невроните и тяхните стойности играят основна роля, като разположението на невроните е без значение. В мозъка, обаче често съседни неврони изпълняват сходни задачи. Мозъчната кора (кортекс) заема площ около 1 кв.метър като за компактност е нагъната в характерния за мозъка релеф. Тя може да се разглежда като двумерна (на повърхността) или тримерна (и в дълбочина) карта от подредени неврони. Известно е че в кортекса и по-специално в сенсорните и моторни области се реализира едно изображение на характерните особености на входните сигнали, проектирано в някакво направление на невронната мрежа. Тъй като тези топологически изображения често представляват проекция на многомерен входен вектор върху по-малка пространствена размерност (от 1 до 3) , те се наричат карти. Например в областта за чуване в кората на мозъка се намира т.нар. тонотопична карта , където съседните неврони реагират на близки звукови честоти в определена последователност от висок към нисък тон. Вижда се, че съществува съответствие между пространственото подреждане на невроните и организирането на външните сигнали по някакви правила. Друг пример е соматотопичната карта в моторната област на мозъка, където различни невронни групи отговарят за управлението на различни групи мускули.

Самоорганизиращите се карти на Кохонен (СКК) са модел, при който подреждането на невроните в един слой е от съществено значение. Връзките между невроните се организират (не само по стойност, а и архитектурно) в процеса на обучение по такъв начин, че да се оптимизира пространственото разпределение на тяхното взаимодействие в слоя. Цел на това оптимизиране е изграждането на изображение на сходство на входните сигнали върху разположението на възбудените неврони т.е. съседните неврони трябва да се възбуждат от сходни сигнали. Когато входният вектор има висока размерност, а запазващо топологията изображение е двумерно или едномерно, се реализира силна компресия на данните, при което излизат наяве особености във входната информация, които са неоткриваеми в многомерното представяне.

Този модел не се обучава с помощта на входно-изходни примерни двойки образци. Топологичното изображение се формира чрез многократно повторение на изпълняваната задача по правилата на един глобален алгоритъм на обучение, като при наличието на подходящи условия полученото изображение става все по-качествено. От тук идва названието самоорганизиращи се карти, а обучението е самостоятелно, без надзор.

СКК е двумерна решетка, в чиито възли са разположени невроните. При голям брой неврони може да се премине към непрекъсната функция на разпределение на невроните в равнината. Начинът на подреждане на невроните в решетката не е достатъчен за да може мрежата да притежава пространствена функционалност. Необходимо е да се въведе функционална зависимост на връзките на невроните от метриката, която отразява разстоянието между невроните

xy = f [d(x,y)]. Нека метриката се задава от формулата: d(x,y) = [(xk - yk)2]1/2, където x и y са координатите на два неврона от картата. Чрез въвеждане на зависимостта на връзките от метриката се дефинира една структура (топология) основана на съседството на невроните, при която близко разположените неврони при обучение по-силно взаимодействат отколкото отдалечените неврони. По такъв начин обратната връзка между невроните (наречена странично взаимодействие) ще има пространствена зависимост. Благодарение на страничното взаимодействие на невроните в един слой се реализира така нареченото състезателно обучение при което не всички ( даже не и половината както е при Хопфилд) неврони се активизират, а само малка част от тях, а именно тези които най-успешно преработват входната информация. Поради тази причина се казва, че в модела на Хопфилд има голяма плътност на кодовете докато в модела на Кохонен кодовете са разпределени с малка плътност.



фиг.4 Странично взаимодействие: (а) мексиканска шапка.

(в) правоъгълна функция

Ако един неврон успее да се възбуди от входният сигнал и от сигналите които получава от другите неврони той се оказва победител и ще изпраща възбуждащи сигнали на положителна обратна връзка към близките си съседи, като силата на сигналите ще намалява с отдалечеността от възбудения неврон и може да се превърне в подтискащ отрицателен сигнал на определено разстояние. На голямо разстояние обратната връзка клони към нула. Такова поведение се описва от функцията наречена мексиканска шапка. В резултат на страничното взаимодействие връзките се променят и близките неврони се превръщат в “съмишленици”, а отдалечените в “инакомислещи”.



АРХИТЕКТУРА


Невроните са разпределени в двумерна решетка и координатите им могат да се обозначат или с дискретни индекси (i,j) или с непрекъснати (x,y). Всеки неврон получава пълната входна информация чрез т.нар. външни връзкиxy. Страничното взаимодействие между невроните се осъществява чрез вътрешни връзки hxy, дефинирани в някаква област на картата.

Изходите на невроните съвпадат с изходите на мрежата. СКК е с циклично обучение и изходните стойности се достигат след като връзките в мрежата достигнат стабилно състояние. Нека и са два входни вектора, а r и r cа координатите на невроните победители за сътветните входни сигнали. Колкото по-близки стават и ( в смисъл на Хаминг или на Еклидова метрика) толкова повече ще се доближават r и r . Когато = имаме съответно r = r . Разбира се невроните не могат да се местят във физическото пространство. Могат да се местят обаче връзките в пространството на векторите на връзките.



фиг.5 Структура на СКК с двумерен вход

Основните предпоставки за провеждането на успешно

самоорганизиране в указания смисъл са следните:

1) На входа трябва да се подаде достатъчно количество сигнали (информация).

2) Променят се връзките само за тези входни сигнали, които водят към група от възбудени неврони.

3) Съседните неврони актуализират връзките си по сходен начин.

4) Промените на връзките трябва да са такива, че да усилват сходните реакции на последователно прилагани, достатъчно сходни дразнители.

На фиг.6 е представен друг вариант на архитектура на модела СКК, който е взаимстван от биологическите реалности. В този случай входните неврони също са разположени в двумерна решетка, която представлява карта на сенсорите. Невроните от двата слоя са напълно свързани като се осъществява проекция на двумерната сенсорна карта върху решетка тип СКК.

В мозъка съществува подобна структурна организация при т. нар. ретинотопична карта и соматосенсорна карта. В първият случай информацията от двумерното изображение върху ретината се проектира върху визуалната област на кортекса. Във втория случай информацията от двумерните сенсори разположени върху кожата се проектира върху соматосенсорния кортекс.



фиг. 6 СКК от вида проекция на сенсорна карта върху невронна карта

СВОЙСТВА НА НЕВРОНИТЕ

Нека входният вектор е от пространството на образците V, а y е изходния вектор. Невронният слой се задава от двумерна решетка А. Ефективният вход на неврон разположен във възела к от решетката А се дава от израза:

k = .Wk + y. hk,

където първият член съответства на ефективния външен вход, а вторият член изразява ефективния сигнал получен от страничното взаимодействие с околните неврони.

Динамиката на изходната стойност е като динамиката на интегриращ неврон:

dyk /dt = - yk + k



Активизирането на невроните става по принципа на състезанието, а именно при подаване на входен вектор победител е този неврон, чийто вектор на връзката е най близък до . Възможни са два критерий за оценка на това сходство. Според първия критерии победител е неврона s, ако

.Ws = max{ .Wk} за всяко k. Според втория критерии победител е неврона s, ако | - Ws| = min{| - Wk|} за всяко k. След като е определен невронът победител в съответната степен се активизират и всички негови съседи както е дефинирано от функцията на странично взаимодействие.



Функцията на странично взаимодействие hrs определя областта около активния неврон s, в която връзките могат да се променят.

Често тази функция се дефинира с камбановидната функция на Гаус:

hrs = exp( -|r-s|2/ 2),

където радиусът на областта на странично взаимодействие се задава от параметъра . В процеса на обучение картата първо “напипва” грубите характеристики на входната информация затова диаметърът на областта на странично взаимодействие  трябва да е голям. В следващите етапи на самоорганизиране, картата откроява по-фини характеристични особености и  трябва да е малко. В края на процеса, за да имаме добра сходимост  трябва да обхваща само един неврон. По тази причина  трябва да намалява с времето като се избират монотонно намаляваща функция от вида (t)  1/t или от вида (t)  exp(-t).

На фиг. 4 са представени графично други две функции на странично взаимодействие - мексиканска шапка и правоъгълна функция.

Обучението без надзор се дефинира от следния алгоритъм:

Wk(t+1) = Wk(t ) -  hks Wk(t)+  hks .

Cмисълът на предложения алгоритъм е модификация на познатия алгоритъм на Хеб (третият член) като е добавено нелинейно, активно забравяне (вторият член). Видно е, че в обучението не участва изходна стойност, а вместо това участва функцията на странично взаимодействие. Често се използва друг вариант на горната формула на обучение, който разкрива друг смисъл на обучението:

Wk =  hk.( - Wk)

От горната формула и от векторното представяне на фиг.7 се вижда, че при всяка стъпка на обучението векторите на връзките на невроните, участващи в обучението се завъртат леко в посока на входния вектор.






Фиг.7 Векторно представяне на обучението. Векторите на връзките и

векторите на образците преди и след обучението.


Визуализиране на характеристичната карта. Има два основни подхода за визуализиране на картата.

При първият подход на всеки неврон се лепи етикета на този входен образец, който максимално възбужда дадения неврон (най-силен дразнител). При този процес решетката от неврони А се разделя на кохерентни области (при добре подредена карта), всяка от които съдържа неврони специализирани за един и същи образец. Така например картата показана на фиг.8 е получена след обучение с помощта на 16 входни вектора характеризиращи 16 различни животни, като компонентите на векторите са 13 прости характеристики на тези животни задавани с бинарни стойности (да или не) получени от отговорите на прости въпроси от вида: Хищник ли е?; Птица ли е?; Голям ли е? и т.н. Очевидно, в този случай е формирана топографска карта, която отразява приликата между 16-те избрани животни. Вижда се, че хищните птици, хищните животни, тревопасните животни, нехищните птици и т.н. са обособени в отделни групи като съседството на групите изразява някакво общо свойство.



фиг.8 Характеристична карта класифицираща 16 животни според

приликата им по 13 характеристични параметъра.

При втория подход характеристичната карта се визуализира като виртуална мрежа в пространството на входните образци V (нарича се още пространство на връзките ПВ). Виртуалната мрежа е образувана от набора вектори на връзките Wk представени като точки в ПВ. Набор от линии свързват тези двойки вектори (Ws, Wk), за които съответните неврони са съседи в решетката от неврони А, която се нарича също физическо пространство (ФП) (фиг.9а).

Преди обучението невроните са разположени хаотично в ПВ, като неврони които са съседи във ФП не са съседи в ПВ. В ПВ имаме нещо като “еластична мрежа”, която се стреми чрез “еластични” сили да подреди невроните така както са подредени във ФП. Еластичните сили придърпват връзките към входните вектори като чрез страничното взаимодействие се отпечатва и структурата на невронната решетка във ФП. На фиг.10 са показани графично различни моменти от еволюцията на връзките в ПВ. Вижда се, че върху началната карта (а) векторите на връзките имат случайни стойности, разположени около центъра. В по-късен момент на обучението (в) еластичните сили започват да разтягат връзките от центъра към периферията. На графика (с) започва да прозира крайната структура на невронната карта, която в случая е правоъгълна решетка. В последният етап (d) е възпроизведена структурата на невроните в ПВ съвпадаща със структурата във ФП.

Фиг.9(а) Разположение на невроните в решетката на физическото пространство



фиг.9б) Пространството на връзките преди обучение; пространството на образците;

пространството на връзките след обучението

фиг.10 Еволюция на СКК в ПВ


Алгоритъмът на Кохонен може да се представи в резюме от следната процедура:

1) Задават се началните стойности на векторите на връзките на невроните Wk (0). Ако нямаме специални съображения за тяхното разположение се избират случайни стойности.

2) Прилага се един от входните вектори (случайно избран)

3) Определя се невронът победител s за този входен дразнител по критерия | - Ws| = min{| - Wk|} за всяко k.

4) Провежда се една стъпка на промяна на връзките за невроните приналдежащи към областта на странично взаимодействие около неврона победител Ns :


Wk(t)+ (t) hks [ - Wk(t)] за кNs(t)

Wk(t+1) = 

Wk(t) в останалите случаи

5) Повтаря се изпълнението на точките от 2 до 4 докато мрежата достигне стабилно състояние т.е. връзките повече не се променят. На практика обаче процеса се прекъсва след изпълнението на предварително зададен брой стъпки. Броят на стъпките трябва да е значително по-голям от броя на входните образци.
ПРИМЕР ЗА ПРИЛОЖЕНИЕ НА СКК:

НЕВРОННА ФОНЕТИЧНА ПИШЕЩА МАШИНА.

Компютърните специалисти винаги са мечтали за създаването на машина, която да разбира човешката реч за да може да се осъществи говорна връзка човек-машина. Моделите, които не са създадени на базата на невронни мрежи имат общите недостатъци, че са с беден речников запас, нуждаят се от дълги тренировки и реагират само на говорителя който ги обучава т.е. не могат да извършват абстрактни обобщения.

Разработеният невронен модел на основата на СКК преодолява тези недостатъци: успешната работа на системата не зависи от говорителя, мрежата превръща говорима реч в писмен текст с точност между 92 и 97 процента, работи в реално време и не се ограничава от минималния запас думи използван при тренировките. Мрежата може да се обучи с помощта на компютър от среден клас като се продиктуват около 100 думи за около 10 минути. Изделието е разработено за фински и японски език тъй като тези езици имат по-прост фонетичен строеж. За по-сложните езици като английски или френски, модела засега не може да се прилага успешно.

Невронната мрежа е съставена от двумерна матрица 8x12 и има 15 входа. Акустичните сигнали получени при произнасяне на думи се превръщат от микрофон в променливи електрични сигнали във временната област. Тези сигнали се оцифряват с АЦП и се преобразуват чрез Фурие трансформация в честотната област след което се разпределят в 15 честотни интервала и се подават на 15-те входа на мрежата. Амплитудите на сигналите се запазват постоянни около 10 милисекунди, след което се обновяват. В процеса на обучение всеки неврон се специализира да откликва на даден звук (фонем) като едновременно се изпълнява принципа, че съседните неврони откликват на сходни сигнали. Резултатната карта възникнала в края на обучението е показана на фиг.11.

Въпреки, че при тренировката се използват цели думи, а не отделни фонеми, повечето неврони откликват само на една фонема както е показано на фиг.11. Този факт е удивителен тъй като времетраенето на една фонема е от 40 до 100 милисекунди, а стандартното време е 10 мск. т.е. само 4 стъпки на мрежата са достатъчни за разпознаване на дадена фонема. Някои неврони откликват на две фонеми. Вижда се, че мрежата трудно идентифицира безвучните съгласни k, p, t, r, h които са пръснати в картата и не са добре организирани в отделна област. Добре подредени са групите на фонемите o, y, e, j, I, s и др.

След обучението, при произнасяне на една дума тя се накъсва на интервали от 10 мск, като получените сигнали се подават на входа на мрежата като последователност от различни входни вектори. На всеки входен вектор откликва по един неврон и така върху картата се образува пътека от последователните входни стойности.

фиг.11 Фонотопична карта на финския език

На фиг.12 е показана пътеката образувана при произнасяне на финската дума humppila. Всяка от стрелките съответства на една стандартна стъпка за стандартното време 10мск. Резултатът от произнасяне на думата е, че тя се изписва с фонетична транскрипция върху картата.

фиг.12 Фонотопична пътека на финската дума humppila

ЗНАЧЕНИЕ НА МОДЕЛА СКК

СКК е един от най-широко използваните модели на ИНМ. Възможността да се реализира нелинейно проектиране на входната информация върху една двумерна невронна карта, на принципа на едно просто правило за самоорганизация, правят от СКК мощна парадигма на изследванията в областа на ИНМ. СКК се самообучава, използва състезателен принцип при активиране на невроните и ограничена обратна връзка, реализирана чрез страничното взаимодействие. Друго предимство на СКК е, че стои значително по-близко до биологическия прототип-мозъка, отколкото другите модели. При сформирането на двумерната карта се подтискат несъществените признаци и особености, а по-съществените характеристики на входните сигнали се кодират посредством пространствените разстояния върху невронната решетка.



Основните приложения на СКК са в областа на обработка на изображения, при управление и контрол на роботи, при обработка и разпознаване на реч, при компресиране на информация, при решаване на комбинаторни оптимизационни задачи и др.
Каталог: ~tank -> NeuralNetworks
~tank -> Лекция 2 Типове данни. Класове и обекти. Числено интегриране
~tank -> Основи на езика fortran
~tank -> Програма От командната линия, след като сме влезли в директорията където е файла с фортран-код
~tank -> Програма за изчисляване на средна стойност
~tank -> Лекция аплети и уеб-страници
NeuralNetworks -> Лекция мрежи с асоциативна памет. Еднослоен автоасоциатор и модел на хопфилд
NeuralNetworks -> Лекция строеж и свойства на биологичните неврони като
NeuralNetworks -> Лекция многослойни инм без обратна връзка. Алгоритъм за


Сподели с приятели:




©obuch.info 2024
отнасят до администрацията

    Начална страница