p align="justify">. Якщо вибрано значення
initlay , то переходимо до шарів і для кожного шару
i властивості
net.layers {i}. initFcn необхідно задати одне з можливих значень:
initnw або
initwb .
. Якщо для i-го шару вибрано значення initnw , то для цього шару завдання функцій ініціалізації завершено.
. Якщо для всіх верств мережі або для якогось шару встановлено властивість initwb , то для цих шарів необхідно задати властивості net.biases {i}. initFcn , вибравши його з набору: initzero , rands або initcon < span align = "justify">, а також властивості net.layerWeights {i, j}. initFcn , використовуючи такі значення: initzero , midpoint , b> randnc , randnr або rands .
Зауважимо, що за допомогою оператора revert (net) можна повернути значення ваг і зміщень до раніше встановлених значень. Після ініціалізації нейронної мережі її необхідно навчити вирішенню конкретної прикладної задачі. Для цих цілей потрібно зібрати навчальний набір даних, що містить цікавлять ознаки досліджуваного об'єкта, використовуючи наявний досвід. Спочатку слід включити всі ознаки, які, на думку аналітиків та експертів, є істотними; на наступних етапах це безліч, ймовірно, буде скорочено. Зазвичай для цих цілей використовуються евристичні правила, які встановлюють зв'язок між кількістю необхідних спостережень і розміром мережі. Зазвичай кількість спостережень на порядок більше числа зв'язків в мережі і зростає по нелінійному закону, так що вже при досить невеликому числі ознак, наприклад 50, може знадобитися величезне число спостережень.
Ця проблема носить назву "прокляття розмірності". Для більшості реальних завдань буває досить декількох сотень або тисяч спостережень. p align="justify"> Після того як зібраний навчальний набір даних для проектованої мережі, здійснюється автоматична настройка ваг і зміщень за допомогою процедур навчання, які мінімізують різницю між бажаним сигналом і отриманим на виході в результаті м...