neural network learning rules perceptron hebbian learning
Цей поглиблений підручник з правил навчання нейронних мереж пояснює геббіанське навчання та алгоритм навчання перцептрону на прикладах:
У нашому попередньому уроці ми обговорювали Штучна нейронна мережа що є архітектурою великої кількості взаємопов’язаних елементів, званих нейронами.
Ці нейрони обробляють отриманий вхід, щоб отримати бажаний вихід. Вузли або нейрони пов'язані між собою входами, вагами з'єднань та функціями активації.
Головною характеристикою нейронної мережі є її здатність до навчання. Нейронні мережі тренуються на відомих прикладах. Як тільки мережа пройде навчання, її можна використовувати для вирішення невідомих значень проблеми.
=> Прочитайте повну навчальну серію машинного навчання
Нейронна мережа навчається за допомогою різних схем навчання, які класифікуються як навчання під наглядом або без нагляду.
У контрольованих алгоритмах навчання цільові значення відомі мережі. Він намагається зменшити помилку між бажаним результатом (цільовим показником) та фактичним результатом для оптимальної роботи. У алгоритмах навчання без нагляду цільові значення невідомі, і мережа навчається сама, визначаючи приховані закономірності у вхідних даних шляхом формування кластерів тощо.
ANN складається з 3 частин, тобто вхідного, прихованого шару та вихідного шару. Існує один вхідний і вихідний рівень, хоча прихованого шару або 1 або більше прихованих шарів, які можуть бути присутніми в мережі, може не бути. На основі цієї структури ANN класифікується на одношарові, багатошарові, зворотні або повторювані мережі.
Що ви дізнаєтесь:
- Важлива термінологія ANN
- Порівняння правил навчання нейронних мереж
- Висновок
Важлива термінологія ANN
Перш ніж ми класифікуємо різні правила навчання в ANN, давайте зрозуміємо деякі важливі термінології, пов'язані з ANN.
# 1) Ваги: У ANN кожен нейрон з'єднаний з іншими нейронами за допомогою зв'язкових зв'язків. Ці ланки мають вагу. Вага містить інформацію про вхідний сигнал до нейрона. Ваги та вхідний сигнал використовуються для отримання вихідного сигналу. Вагові коефіцієнти можна позначити у матричній формі, яка також називається матрицею з'єднання.
Кожен нейрон пов'язаний з кожним іншим нейроном наступного шару через ваги з'єднання. Отже, якщо є 'n' вузлів і кожен вузол має 'm' ваги, то матриця ваги буде такою:
W1 являє собою вектор ваги, починаючи з вузла 1. W11 представляє вектор ваги з 1вулвузол попереднього шару до 1вулвузол наступного шару. Подібним чином wij представляє вектор ваги від “i-го” обробного елемента (нейрона) до “j-го” обробного елемента наступного шару.
# 2) Упередженість : Упередження додається до мережі, додаючи вхідний елемент x (b) = 1 до вхідного вектора. Упередження також несе вагу, позначену w (b).
Упередження відіграє важливу роль у підрахунку вихідного сигналу нейрона. Упередження може бути як позитивним, так і негативним. Позитивне зміщення збільшує чисту вхідну вагу, тоді як негативне зміщення зменшує чисте введення.
# 3) Поріг: У функції активації використовується порогове значення. Чистий вхід порівнюється з пороговим значенням, щоб отримати вихід. У NN функція активації визначається на основі порогового значення та обчислюється вихід.
Порогове значення:
# 4) Швидкість навчання : Позначається буквою?. Швидкість навчання коливається від 0 до 1. Він використовується для регулювання ваги в процесі навчання НН.
# 5) Імпульсний фактор : Додано для швидшого зближення результатів. Коефіцієнт імпульсу додається до ваги і зазвичай використовується в мережах зворотного розповсюдження.
Порівняння правил навчання нейронних мереж
Методи навчання -> | Градієнтний спуск | Геббійська | Конкурентоспроможні | Стохастичний | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|
ЕПОХ 2 | |||||||||||
Тип архітектури || | |||||||||||
Одношарова прямота | АДАЛІН Хопфілд Перцептрон | Асоціативний Пам'ять Хопфілд | Лінійний вектор Квантування | ||||||||
Багатошарова подача вперед | Каскад Співвідношення Багатошарова подача Вперед Радіальне зміщення Функція | Неокогнітрон | |||||||||
Повторний | Повторний нервовий Мережа | Двонаправлений Авто Асоціативний Пам'ять Мозок - держава - в - коробці Хопфілд | Адаптивний Теорія резонансу | Больцмана Машина Коші Машина |
Класифікація різних типів навчання ANN наведена нижче.
Класифікація керованих алгоритмів навчання
- Градієнтний спуск
- Стохастичний
# 1) Навчання градієнтного спуску
У цьому типі навчання зменшення помилок відбувається за допомогою ваг та функції активації мережі. Функція активації повинна бути диференційованою.
Регулювання ваг залежить від градієнта помилок E у цьому навчанні. Правило зворотного розповсюдження є прикладом такого типу навчання. Таким чином, регулювання ваги визначається як
# 2) Стохастичне навчання
У цьому навчанні ваги коригуються імовірнісним чином.
Класифікація алгоритмів навчання без нагляду
- Геббійська
- Конкурентоспроможні
# 1) Геббійське навчання
Це навчання було запропоноване Хеббом у 1949 р. Воно ґрунтується на кореляційному регулюванні ваг. Пари вхідних та вихідних моделей пов'язані з ваговою матрицею, W.
Транспонування вихідних даних приймається для регулювання ваги.
# 2) Конкурентне навчання
Це переможець приймає всі стратегії. У цьому типі навчання, коли вхідний шаблон надсилається в мережу, всі нейрони в шарі конкурують, і тільки нейрони-переможці мають коригування ваги.
Нейрон Мак-Каллок-Піттса
Також відомий як M-P Neuron, це найраніша нейронна мережа, яка була відкрита в 1943 році. У цій моделі нейрони з'єднані між собою вагами з'єднання, а функція активації використовується в двійковій системі. Поріг використовується для визначення того, буде нейрон спрацьовувати чи ні.
Функція нейрона M-P є:
Алгоритм навчання Геббі
Мережа Хебба було заявлено Дональдом Хеббом у 1949 р. Згідно з правилом Хебба, виявлено, що ваги зростають пропорційно до добутку вхідної та вихідної продукції. Це означає, що в мережі Гебба, якщо два нейрони взаємопов’язані, то ваги, пов’язані з цими нейронами, можуть бути збільшені за рахунок зміни синаптичної щілини.
Ця мережа підходить для біполярних даних. Правило геббійського навчання зазвичай застосовується до логічних воріт.
Ваги оновлюються як:
W (новий) = w (старий) + x * y
Навчальний алгоритм для правила вивчення геббістів
Етапи навчання алгоритму такі:
- Спочатку ваги встановлюються рівними нулю, тобто w = 0 для всіх входів i = 1 до n, а n - загальна кількість вхідних нейронів.
- Нехай s - результат. Функція активації для входів зазвичай встановлюється як функція ідентичності.
- Функція активації для виводу також встановлена на y = t.
- Регулювання ваги та упередження регулюються таким чином:
- Етапи 2-4 повторюються для кожного вхідного вектора та вихідного сигналу.
Приклад правила навчання на геббі
Давайте реалізуємо логічну функцію І з біполярними входами за допомогою Hebbian Learning
X1 і X2 - це входи, b - зміщення, прийняте за 1, цільове значення - результат логічної операції І над входами.
Вхідні дані | Вхідні дані | Упередженість | Цільова |
---|---|---|---|
X1 | X2 | b | Y |
1 | 1 | 1 | 1 |
1 | -1 | 1 | -1 |
-1 | 1 | 1 | -1 |
-1 | -1 | 1 | -1 |
# 1) Спочатку ваги встановлюються рівними нулю, а зміщення також встановлюється як нуль.
W1 = w2 = b = 0
# два) Перший вхідний вектор приймається як (x1 x2 b) = (1 1 1), а цільове значення - 1.
Нові ваги становитимуть:
# 3) Вищевказані ваги є остаточними новими вагами. Коли передається друге введення, вони стають початковими вагами.
# 4) Візьміть другий вхід = (1 -1 1). Ціль - -1.
# 5) Подібним чином розраховуються інші входи та ваги.
У таблиці нижче наведено всі дані:
Вхідні дані | Упередженість | Цільовий результат | Зміни ваги | Зміни упередженості | Нові ваги | ||||
---|---|---|---|---|---|---|---|---|---|
X1 | X2 | b | Y | ? w1 | ? w2 | ? b | W1 | W2 | b |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
1 | -1 | 1 | -1 | -1 | 1 | -1 | 0 | два | 0 |
-1 | 1 | 1 | -1 | 1 | -1 | -1 | 1 | 1 | -1 |
-1 | -1 | 1 | -1 | 1 | 1 | -1 | два | два | -2 |
Мережа Хебба для функції І
Алгоритм навчання перцептрону
Мережі Perceptron - це одношарові мережі зворотного зв'язку. Вони також називаються Single Perceptron Networks. Перцептрон складається з вхідного шару, прихованого шару та вихідного шару.
Вхідний шар з'єднаний із прихованим шаром через ваги, які можуть бути гальмуючими, збуджуючими або нульовими (-1, +1 або 0). Використовувана функція активації - це функція двійкового кроку для вхідного шару та прихованого шару.
Вихідний результат
Y = f (y)
Функція активації:
Оновлення ваги відбувається між прихованим шаром і вихідним шаром, щоб відповідати цільовому результату. Похибка обчислюється на основі фактичного виходу та бажаного результату.
Якщо результат відповідає цільовому показнику, оновлення ваги не відбувається. Спочатку ваги встановлюються на 0 або 1 і послідовно регулюються, поки не буде знайдено оптимальне рішення.
Спочатку ваги в мережі можуть бути встановлені на будь-які значення. Навчання Perceptron зблизиться до вектора ваги, який дає правильний результат для всіх вхідних схем навчання, і це навчання відбувається за кінцеву кількість кроків.
Правило Perceptron може використовуватися як для бінарних, так і для біполярних входів.
Правило навчання перцептрону з одним виходом
# 1) Нехай буде “n” вхідних векторів навчання, а x (n) і t (n) пов’язані з цільовими значеннями.
# два) Ініціалізуйте ваги та упередження. Встановіть їх на нуль для зручності обчислення.
# 3) Нехай швидкість навчання дорівнює 1.
# 4) Вхідний рівень має функцію активації ідентичності, тому x (i) = s (i).
# 5) Для розрахунку вихідної потужності мережі:
# 6) Функція активації застосовується до чистого входу для отримання вихідного результату.
# 7) Тепер, виходячи з результату, порівняйте бажане цільове значення (t) та фактичний результат.
# 8) Продовжуйте ітерацію до тих пір, поки вага не зміниться. Зупиніть, як тільки ця умова досягнута
Правило навчання для кількох вихідних персептронів
# 1) Нехай буде “n” вхідних векторів навчання, а x (n) і t (n) пов’язані з цільовими значеннями.
# два) Ініціалізуйте ваги та упередження. Встановіть їх на нуль для зручності обчислення.
# 3) Нехай швидкість навчання дорівнює 1.
# 4) Вхідний рівень має функцію активації ідентичності, тому x (i) = s (i).
# 5) Для обчислення результату кожного вихідного вектора від j = 1 до m, чиста вхідна величина:
# 6) Функція активації застосовується до чистого входу для отримання вихідного результату.
# 7) Тепер, виходячи з результату, порівняйте бажане цільове значення (t) та фактичний випуск та внесіть коригування ваги.
w - вектор ваги зв'язкових зв'язків між i-м вхідним і j-м вихідним нейроном, а t - цільовим виходом для вихідного блоку j.
# 8) Продовжуйте ітерацію до тих пір, поки вага не зміниться. Зупиніть, як тільки ця умова досягнута
Приклад правила навчання перцептрону
Впровадження функції І з використанням мережі Perceptron для біполярних входів та виходів.
Шаблон введення буде x1, x2 та зміщення b. Нехай початкові ваги дорівнюють 0, а зміщення дорівнює 0. Поріг встановлюється рівним нулю, а швидкість навчання - 1.
І Ворота
X1 | X2 | Цільова |
---|---|---|
1 | 1 | 1 |
1 | -1 | -1 |
-1 | 1 | -1 |
-1 | -1 | -1 |
# 1) X1 = 1, X2 = 1 і цільовий результат = 1
W1 = w2 = wb = 0 і x1 = x2 = b = 1, t = 1
Чистий вхід = y = b + x1 * w1 + x2 * w2 = 0 + 1 * 0 + 1 * 0 = 0
Тому поріг дорівнює нулю, тому:
Звідси ми отримуємо, output = 0. Тепер перевірте, чи output (y) = target (t).
y = 0, але t = 1, що означає, що вони не однакові, отже відбувається оновлення ваги.
Нові ваги - 1, 1 і 1 після подання першого вхідного вектора.
# два) X1 = 1 X2 = -1, b = 1 і ціль = -1, W1 = 1, W2 = 2, Wb = 1
Чистий вхід = y = b + x1 * w1 + x2 * w2 = 1 + 1 * 1 + (-1) * 1 = 1
Чистий вихід для введення = 1 буде 1 з:
Тому знову ж цільовий = -1 не відповідає фактичному виводу = 1. Відбувається оновлення ваги.
Тепер новими вагами є w1 = 0 w2 = 2 і wb = 0
Аналогічно, продовжуючи наступний набір входів, ми отримуємо таку таблицю:
Вхідні дані | Упередженість | Цільова | Чистий вхід | Розрахований вихід | Зміни ваги | Нові ваги | |||||
---|---|---|---|---|---|---|---|---|---|---|---|
X1 | X2 | b | т | інь | Y | ? w1 | ? w2 | ? b | W1 | W2 | wb |
ЕПОХ 1 | |||||||||||
1 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 |
1 | -1 | 1 | -1 | 1 | 1 | -1 | 1 | -1 | 0 | два | 0 |
-1 | 1 | 1 | -1 | два | 1 | 1 | -1 | -1 | 1 | 1 | -1 |
-1 | -1 | 1 | -1 | -3 | -1 | 0 | 0 | 0 | 1 | 1 | -1 |
1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | -1 |
1 | -1 | 1 | -1 | -1 | -1 | 0 | 0 | 0 | 1 | 1 | -1 |
-1 | 1 | 1 | -1 | -1 | -1 | 0 | 0 | 0 | 1 | 1 | -1 |
-1 | -1 | 1 | -1 | -3 | -1 | 0 | 0 | 0 | 1 | 1 | -1 |
EPOCHS - це цикл вхідних шаблонів, що подаються в систему, поки не буде потрібно зміни ваги і ітерація припиниться.
Алгоритм навчання Відро Гоффа
Також відомий як Правило дельти , воно дотримується правила градієнтного спуску для лінійної регресії.
Він оновлює ваги з'єднання з різницею між цільовим та вихідним значенням. Це найменший середній квадратний алгоритм навчання, що підпадає під категорію керованого алгоритму навчання.
Цього правила дотримуються ADALINE (Адаптивні лінійні нейронні мережі) та MADALINE. На відміну від Perceptron, ітерації мереж Adaline не зупиняються, але вони сходяться за рахунок зменшення найменшої середньої квадратичної помилки. MADALINE - це мережа, що складається з декількох ADALINE.
Мотив правила дельта-навчання полягає в мінімізації помилки між вихідним та цільовим вектором.
Ваги в мережах ADALINE оновлюються:
Найменша середньоквадратична помилка = (t- yв)два, ADALINE сходиться, коли досягається найменша середньоквадратична помилка.
Висновок
У цьому підручнику ми обговорили два алгоритми, тобто Hebbian Learning Rule та Perceptron Learning Rule. Правило Геббі базується на правилі, згідно з яким вектор ваги збільшується пропорційно вхідному та навчальному сигналу, тобто вихідному. Ваги збільшуються додаванням добутку вхідного та вихідного продукту до старої ваги.
W (новий) = w (старий) + x * y
Застосування правил Гебба полягає у проблемах асоціації зразків, класифікації та категоризації.
Правило навчання Perceptron може застосовуватися як до мережі виведення, так і до кількох класів виводу. Метою мережі персептронів є класифікація шаблону введення до певного класу-члена. Вхідні нейрони і вихідний нейрон з'єднані за допомогою ланок, що мають ваги.
Ваги коригуються відповідно до фактичного виходу та цільового значення. Швидкість навчання встановлюється від 0 до 1, і це визначає масштабованість ваг.
запитання та відповіді на інтерв'ю щодо селену pdf
Ваги оновлюються відповідно до:
Окрім цих правил навчання, алгоритми машинного навчання вчаться за допомогою багатьох інших методів, таких як контрольований, неконтрольований, посилення. Деякі інші поширені алгоритми ML - це зворотне поширення, ART, самоорганізуючі карти Kohonen тощо.
Ми сподіваємось, вам сподобались усі підручники з цієї серії машинного навчання !!
=> Відвідайте тут ексклюзивну серію машинного навчання
Рекомендована література
- Повний посібник зі штучної нейронної мережі в машинному навчанні
- Типи машинного навчання: Контрольоване проти ненавчаного навчання
- Видобуток даних проти машинного навчання проти штучного інтелекту проти глибокого навчання
- Тестування мережевої безпеки та найкращі інструменти мережевої безпеки
- 11 Найпопулярніших програмних засобів машинного навчання в 2021 році
- Підручник з машинного навчання: Вступ до ML та його застосування
- 15 найкращих інструментів мережевого сканування (мережевий та IP-сканер) 2021 року
- 30 найкращих інструментів тестування мережі (засоби діагностики ефективності мережі)