Алатката заснована на невронски мрежи (**Neural Network Toolbox**) го прошитува MATLAB со алатки за дизајнирање, имплементирање, визуелизација, и симулирање на невронски мрежи. Невронските мрежи се непроценливи за апликации каде формалните анализи се тешки или невозможни, како што е препознавање на шаблони и нелинеарни системи на идентификација и управување. Neural Network Toolbox-от овозможува севкупна поддршка за повеќе докажани мрежни типични примери, како и графички кориснички посредник кој овозможува дизајнирање и управување на мрежите. Модулираниот, отворен дизајн на алтката го упростува создавањето на прилагодливи функции и мрежи.

Работење со Neural Network Toolbox
----------------------------------

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

Neural Network Toolbox графичкиот посредник овозможува полесна работа со невронските мрежи. Neural Network Fitting Tool е претставува волшебник кој води низ процесот на вметнување на податоци користејќи невронски мрежи. Оваа алатка се користи за внесување на големи и комплексни множества на податоци, брзо создавање и обучување на мрежи, и оценување на мрежните перформанси.

Друг графички посредник дава подобра способност за прилагодување на мрежна архитектура и алгоритмите за учење. Едноставна графичка репрезентација овозможува визуелизација и разбирлива мрежна архитектура.

Мрежни архитектури
------------------

### Мрежи со надзор

Невронските мрежи со надзор се обучуваат за да дадат сакан излез како одговор на зададен влез, правејќи ги посебно добро прикладни за моделирање и управување динамички системи, класифицирање на податоци под шум, и предвидување на идни настани. 
Мрежите со предна спрега имаат еднонасочни врски од влезните до излезните слоеви. Тие се најмногу употребувани за предвидување, препознавање на шаблони, и нелинеарно функциско прилагодување. 
Радијално заснованите мрежи овозможуваат алтернативен, побрз метод за дизајнирање на нелинеарни мрежи со предна спрега. 
Динамични мрежи користат мемориски врски и повторливи врски со предна спрега за да препознаат просторни и временски шаблони во податоците. Тие обично се користат за time-series prediction, нелинеарно моделирање на системи, и апликации за управување со ситеми. Однапред изградените динамички мрежи во самата алатка вклучуваат фокусирачко и дистрибуирано временско каснење, нелинеарна авторегресивна (NARX), повторливост на слоеви, Елманови и Хопфилдови мрежи. Алатката исто така поддржува динамичко обучување на прилагодливи мрежи со произволни врски. 
LVQ е моќен метод за класификација на шаблони кои не се линеарно оддвојливи. LVQ овозможува специфицирање на класни граници и грануалитет на класификација.

### Мрежи без надзор

Невронските мрежи без надзор се обучуваат со дозволувајќи на мрежата постојано да се прилагодува самата себе на нови влезови. Мрежата наоѓа врски во самите податоци и може автоматски да дефинира класификациски шеми. 
Neural Network Toolbox поддржува два типа на само-организирани, мрежи без надзор: натпреварувачки слоеви и самоорганизирани мапи. 
Натпреварувачки слоеви ги препознаваат и групираат слични влезни вектори. Со користење на овие групи, мрежата автоматски ги сортира влезовите во категории. 
Само-организираните карти учат да ги класифицираат влезните вектори според сличност. За разлика од натпреварувачките слоеви, тие исто така ја заштитуваат топологијата на влезните вектори, задавајки блиски влезови на блиски категории.

### Функции за обука и учење

Функциите за обука и учење се математички процедури кои се користат за автоматско подесување на мрежните тежини и основи. Функцијата за обука диктира глобален алгоритам кој им делува на сите тежини и основи во дадена мрежа. Функцијата за учење може да биде применета за поединечни тежини и основи во самата мрежа.

Simulink поддршка и апликции за системи на управување
-----------------------------------------------------

### Simulink поддршка

Neural Network Toolbox овозможува множество на блокови за градење на невронска мрежа во Simulink. Овие блокови се поделени во три библиотеки: 
Преносни функциски блокови, кои земаат a net-input вектор и генерираат соодветен излезен вектор.
Net input функциски блокови, кои земаат земаат произволен број на тежински влезни вектори, тежински слоевити излезни вектори, и базични вектори, така што враќаат a net-input вектор.
Weight функциски блокови, кои применуваат невронски тежински вектор на влезен вектор(или слоен излезен вектор) за да се добие тежинска влезна вредност за неврон.
Друг избор како алтернатива е да се создаваат и обучуваат сопствени мрежи во MATLAB околина и автоматски да се генерираат мрежни симулациски блокови за употреба со Simulink. Овој пристап исто така овозможува да се прегледуваат мрежите графички.

### Апликации за системи на управување

Neural Network Toolbox овозможува да се применува невронски мрежи на идентификација и управување на нелинеарни системи. Алатката вклучува описи, демонстрации, и Simulink блокови за три популарни управувачки апликации: моделно предвидувачко управување, линеаризација со овратна врска и моделно повикувачко адаптивно управување. 
Невронските мрежни предвидувачко управливи блокови вклучени во алатката можат да се инкорпорираат во Simulink модели. Со промена на параметрите од тие блокови, може да се кројат мрежните перформанси на апликацијата.

Пред и после обработувачки функции и поправлива генерализација
--------------------------------------------------------------

### Пред и после обработувачки функции

Предобработката на мрежни влезови и цели ја подобрува делотворноста на невронските мрежни обучувања. Пообработката овозможува детална анализа на мрежните перформанси. 
Neural Network Toolbox овозможува пред и после обработувачки функции со кои се: 
• Намалуваат димензиите за влезните вектори користејќи анализа на компонентите.
• Извршува регресивна анализа помеѓу одговорот на мрежата и соодветните цели
• Се прилагодуваат влезовите и targets така што спаднат во опсегот [-1,1]
• Нормализирање на средното и стандардно отстапување на обучувачкото множество.

### Поправлива генерализација

Подобрувањето на мрежната способност за генерализирање помага за превенција на overfitting, вообичаен проблем во невронскиот мрежен дизајн. Overfitting се случува кога мрежата ја меморирала обуката но не научила да генерализира нови влезови. Overfitting произведува релативно мала грешка на множеството за обука но доста поголема грешка кога нови податоци се даваат на мрежата.
Neural Network Toolbox овозможува две решенија за подобрување на генерализацијата: регулација и рано стопирање.
Регулацијата ја модифицира мрежната перформансна функција (мерката за грешка која процесот за обука ја минимизира). Со вклучување на големините за тежини и бази, обуката произведува мрежа која извршува добро со податоците за обука и прикажува помирно држење која и се дава нови податоци. 
Со рано стопирање се користат две различни податочни множества: множеството за обука, за ажурирање на тежини и бази, и множество за валидација за стопирање на обуката кога мрежата почнува да overfit податоци.

Што е невронска мрежа?
======================

Невронските мрежи се состојат од елементи кои работат паралелно. Овие елементи се инспирирани од биолошките нервни системи. Како и во природата, мрежните функции се одредуваат претежно според врските помеѓу елементите. Невронска мрежа може да се обучи да извршува одредени функции со подесување на вредности на врските (тежини) помеѓу елементи.
Обично невронските мрежи се подесуваат, или обучуваат, така што одреден влез води кон специфичен целен излез. Такава ситуација е прикажана на сликата подолу. Тука, мрежата се подесува, засновано на споредбата на излезот и the target, сè додека мрежниот излез не го достигне target-от. Вообичаено многу вакви влезно/target парови се потребни за да се обучи една мрежа.
Невронските мрежи се обучуваат да извршуваат комплексни функции на различни полиња, вклучувајќи препознавање на шаблони, идентификација, класификација, говор, визија, и системи за управување.
Денес, невронските мрежи можат да се обучат за да решаваат проблеми кои се тешки за конвенционални компјутери или самиот човек. Низ целат алатка, посебно внимание е ставено на мрежните типични примери кои се изградуваат или самите се користат во индустриски, финансиски, и други практични апликации.