Вештачка невронска мрежа

Од Википедија — слободната енциклопедија
Прејди на: содржини, барај
Пример за вештачка невронска мрежа

Вештачка невронска мрежа - ВНМ (анг. Artificial neural network - ANN) е парадигма за обработка на информации која е инспирирана од начинот на кој биолошки нервен систем, како што е мозокот, обработува информации. Клучниот елемент на оваа парадигма е необичната структура на обработувачки информациски систем. Таа е составена од голем број на меѓусебно поврзани елементи за обработка (неврони), кои работат едногласно за да се решат конкретни проблеми.

Поим за невронска мрежа[уреди]

Невронските мрежи со својата извонредна можност за изведување смисла од комплицирани или непрецизни податоци, може да се користат за да се изведат шаблони и да се детектираат трендовите кои се премногу комплексни за да бидат забележани од страна на луѓето или други сметачки техники. Обучена невронска мрежа може да се смета за експерт во категоријата на информациите што и се дадени да се анализираат. Овој експерт потоа може да се користи за да обезбеди прогнози при дадени ситуации во доменот на нашиот интерес, и да одговори на прашања од видот „што ако...?“.

Другите предности вклучуваат:

  • Адаптивно учење - способноста да се научи како да се изведат задачи врз основа на податоци дадени за обука или иницијално искуство;
  • Сопствена организација - вештачката невронска мрежа може да создава сопствена организација или претстава на информациите што ги добива во текот на времето за учење;
  • Операции во реално време - пресметките може да се извршуваат паралелно;
  • Толеранција на грешки преку кодирање на излишни информации (redundant information coding) - делумното унишување на мрежата води кон соодветна деградација на делотворноста, но сепак некои способности може да се задржат дури и при големо оштетување на мрежата.

Состојба на активација[уреди]

Аналогно на биолошката интерпретација, невронската мрежа во контекст на експертните системи претставува модел на пресметки со поврзовен пристап, кој соодветно се состои од множество на обработувачки единки - неврони.

Главна карактеристика на невронските мрежи е состојбата на активација. Состојбата на активација во потесна смисла го претставува излезот од даден јазол, а во поширока означува дали влезот на јазелот бил над граничната вредност, односно дали невронот се активирал. Заради меѓуповрзаноста, во невронските мрежи имаме правило на пропагација кое пропишува колку излезот на даден јазол зависи од индиректните влезови во тој јазол.

Во структурна смисла, невронската мрежа се состои од:

  • Множество на обработувачки единици (неврони, јазли);
  • Состојбата на активација yk за секоја единка, која е еквивалентна на излезот од единката;
  • Врски помеѓу единките, при што вообичаено секоја врска е дефинирана со тежина wjk која го одредува ефектот (влијанието) кое го има единката j на единката k;
  • Правило на пропагација, кое го одредува ефективниот излез на единка од неговите надворешни влезови;
  • Функција на активација Fk, која ја редефинира состојбата на активација врз основа на ефективниот влез (t) и актуелната активација yk(t), т.е. дава нова вредност на состојбата на активација;
  • Надворешен влез (bias или офсет) за секоја единка;
  • Метода за прибирање на информациите (правило на учење);
  • Средина во која системот ќе дејствува, обезбедување на влезни сигнали и ако е потребно, сигнали за грешка.

Секоја единка извршува релативно едноставна задача: добива влез од соседите или од надворешни извори и го користи ова за да пресмета излезен сигнал кој понатаму се пропагира (пренесува) до останатите единки. Освен оваа обработка, втора задача на невронот е поставување на тежините. Системот е паралелен, така да повеќе единки може да ги вршат своите пресметки во исто време.

Во рамките на невронските мрежи, разликува три типа на јазли:

  • влезни јазли - кои ги примаат сигналите,
  • излезни јазли - кои ги испраќаат податоците надвор од системот, и
  • скриени јазли - чии влезни и излезни сигнали остануваат внатре во мрежата. Тие се користат само за внатрешна модификација на мрежата.

За време на операциите, јазлите може да се обновуваат синхроно или асинхроно. Кај синхроното обновување сите јазли ја обновуваат својата активација истовремено, додека кај асинхроните, секоја јазол има своја (вообичаено фиксна) веројатност на обнова за време t, и вообичаено само една единка ќе може да изврши активација во единица време.

Топологии на невронски мрежи[уреди]

Разликуваме два типа на топологии на невронски мрежи:

  1. Еднонасочни мрежи (feedforward)[1] - Тука патеката на податоците од влезните до излезните јазли е строго одредена. Обработката на податоците може да се прошири преку повеќе слоеви на јазли, меѓутоа нема повратни врски, односно нема врски од излезни до влезни јазли во исти или различни слоеви.
  2. Повратни мрежи (рекурентни) - Тоа се мрежи кои содржат повратни врски. За разлика од еднонасочните мрежи, тука динамичките својства на мрежата се важни. Во некои случаи, активациските вредности на јазлите подлежат на процес на релаксација, така да мрежата еволуира во стабилна состојба во која овие вредности повеќе нема да се менуваат. Во други промени, промената на активациските вредности на излезните јазли е значајна, така да динамичкото однесување го чини излезот на мрежата.

Невронски мрежи како класификатори[уреди]

Невронските мрежи имаат карактеристики кои ги прават многу погодни за користење во експертните системи, заради нивните погодности за создавање на системи за класификација. Некои од тие карактеристики се:

  • можноста за паралелна, дистрибуирана обработка;
  • архитектурата на насочен тежински граф му овозможува да меморира промена на тежини и прагови, и автоматски да класифицира;
  • толерантноста на грешки и адаптибилноста, односно ако некои неврони не функционираат, останатите ќе се адаптираат.

Перцептрон на едно ниво[уреди]

Перцептроните се наједноставните видови на еднонасочни мрежи. Најраните видови на невронски мрежи се мрежи со перцептрон на едно ниво, кој се состои од еден слој на излезни јазли, влезовите одат директно во излезите преку серија на врски со тежини. Сумата на производите на тежините и влезовите се пресметува во секој јазол, и доколку вредноста е над некој праг (вообичаено 0), јазолот се активира и завзема активирана вредност (вообичаено 1), спротивно зема деактивирана вредност (типично -1). Неврони со ваков вид на активациска функција се нарекуваат МекКалок-Питс неврони или прагови неврони.

Перцептрон може да се создаде со користење на било кои вредности за активирана и декативирана вредност, се додека вредноста за прагот лежи помеѓу овие две вредности. Повеќето перцептрони имаат излези 1 или -1 со праг 0, и има некакви докази дека таквите мрежи може да се обучуваат побрзо од мрежите создадени со други вредности за активација и деактивација.

Перцептроните може да се обучуваат со едноставен алгоритам за учење што често се нарекува и делта-правило. Алгоритмот ги пресметува грешките помеѓу пресметаниот излез и излезот од примеркот на податоци, и го користи тоа знаење за да ги постави тежините, со тоа имплементирајќи форма на нивно постепено опаѓање.

Перцептрон на повеќе нивоа[уреди]

Оваа класа на мрежи се состои од повеќе слоеви на пресметковни единки, вообичаено поврзани со еднонасочни врски. Секој неврон во еден слој има директна врска со неврон во следниот слој. Во многу апликации, единките на овие мрежи применуваат сигмоидна функција како активациска функција.

Универзалната апроксимативна теорема за невронски мрежи тврди дека секоја функција која може да мапира R -> R може да биде приближно пресметана со перцептрон на повеќе нивоа со само еден скриен слој. Овој резултат се однесува само на одредени класи на активациски функции, на пр. за сигмоидните функции.

Учење кај невронските мрежи[уреди]

Учењето кај невронските мрежи вклучува модификација на тежините на врските според некое модифицирано правило. Главната идеја е тоа што ако јазлите ј и k се активни истовремено, нивната врска ојакнува. Учењето претставува пресликување од Х во Y и модификација на врските. Постојат два начина на модификација на врските во невронските мрежи:

  • учење под надзор / самонадзор - со користење на претходното знаење на проблемскиот домен, се поставуваат тежините на врските.
  • учење без надзор / самоорганизација - со обука на мрежата, таа да си ги менува врските според правилото на учење кое се спроведува од некој примерок на дадени решенија со влезови/излези од мрежата. Има сопствено претставување, нема претходно зададено знаење т.е. започнува со случајни вредности за тежините на врските.

Обратно раширување[уреди]

Оваа техника работи така излезите од мрежата се спроведуваат со очекуваните точни вредности и се проценува функцијата за грешка. Работи по принципот на алчни алгоритми, задава решение кое е најдобро во даден момент, но кое можеби нема да биде најоптимално на глобален план.

После доволен број на итерации, системот доаѓа во состојба каде ратата на грешки е занемарливо мала и тогаш велиме дека системот научил одредена целна функција. Пресметувањето на нови вредности на тежините на функциите се прави со наоѓање на извод од error функцијата т.е. наоѓање минимум. Нaјповолни функции за активација се континуално диференцијабилни функции (сигмоидна функција).

Повратни мрежи[уреди]

Кај повратните мрежи среќаваме дводимензионален податочен тек (јамки).

Џорданова мрежа[уреди]

Едноставната повратна мрежа која е варијација на перцептронот на повеќе нивоа се нарекува Џорданова мрежа. Трислојна мрежа имаме со додавање на повратни врски од излезните единки до т.н. состојбени единки со фиксирана вредност на тежините на 1. Скриениот слој е поврзан со врските од овие единки. При секој чекор влезот се пренесува преку стандарден еднонасолен начин, и потоа се применува правилото за учење со обратно раширување (backpropagation). Фиксните повратни врски резултираат со одржување на копија од вредностите на претходните вредности од скриениот слој.

Кај потполно повратна мрежа секој неврон добива влез од секој друг неврон во мрежата. Овие мрежи не се ангажирани во слоеви. Вообичаено само подмножество на неврони добиваат надворешни влезови, а друго множество на неврони го репортира излезот надвор од мрежата и го враќа кон сите неврони. Овие влезови и излези ја изведуваат функцијата на влезни и излезни слоеви кај еднонасочните.

Елманова мрежа[уреди]

Кај Елмановата мрежа повратните врски се решаваат исклучиво во скриените слоеви.

Хопфилдова мрежа[уреди]

Хопфилдова мрежа е комплетно поврзана мрежа од N јазли, каде сите јазли се истовремено и влезни и излзени.

Библиографија[уреди]

Наводи[уреди]