Алгоритми глибокого навчання - Топ 7 архітектурних методів глибокого навчання

Зміст:

Anonim

Вступ до алгоритмів глибокого навчання

Глибоке навчання - це крок для наближення до Штучного інтелекту, який може приймати рішення, як людський мозок, тобто мати можливість вчитися шляхом спроб і помилок, як і люди. Мозок людини має мільярди нейронів (близько 86 мільярдів; джерело: Вікіпедія). З штучними нейронами глибоке навчання також допомагає наслідувати людський розум. Для обробки інформації та прийняття рішення через штучні нейронні мережі існують деякі алгоритми, які називаються алгоритмами глибокого навчання. Алгоритми вивчають у кожному шарі прогресивно, тобто; додаткова вартість додається із функцій наступного шару. Модель глибокого навчання може перевиконати, якщо дані невеликі, неповні або занадто прості. Алгоритми глибокого навчання ефективні, коли даних обширно.

Алгоритми глибокого навчання

Для створення моделі глибокого навчання треба написати кілька алгоритмів, поєднати їх між собою та створити мережу нейронів. Глибоке навчання має високі обчислювальні витрати. Для допомоги моделям глибокого навчання існують глибокі навчальні платформи, такі як тензорний потік, Py-Torch, Chainer, Keras та ін. У процесі глибокого навчання ми намагалися копіювати нейронну мережу людини штучною нейронною мережею, людський нейрон називається персептрон у модель глибокого навчання. Ми з'єднуємо ці перцептронні одиниці разом, щоб створити нейронну мережу, вона має 3 розділи:

  1. Вхідний шар
  2. Приховані шари
  3. Вихідний шар

Перцептрон має вхідні вузли (дендрити в людському мозку), функцію спрацьовування для прийняття невеликого рішення та виведення вузлів (аксон у мозку людини). Ми побачимо, як працює один перцептрон, з'єднуючи їх разом, створимо модель глибокого навчання. Інформація про вхід (кількість вхідних змінних / ознак) присвоюється деякій вазі і подається на функцію приводу. Функція приведення приймає рішення і відправляє вихід. Вихід цього перцептрона буде вводитись до інших нейронів. Після обробки партії обчислюється похибка зворотного розповсюдження на кожному нейроні за допомогою функції витрат / перехресної ентропії. Таким чином, вхідні ваги перерозподіляються і весь процес триває, поки перехресна ентропія не задовольнить умову.

У нас є різні функції приводу, такі як сигмоїдні функції, гіперболічна дотична функція, випрямлений лінійний блок (ReLU), щоб прийняти невелике рішення. Модель глибокого навчання потребує величезної кількості даних, щоб створити хорошу модель. Взагалі модель з більш ніж 3 прихованими шарами трактується як глибока нейронна мережа. В основному, глибоке навчання - це набір нейронів з низкою параметрів, визначених для кожного шару. Для створення моделі Deep Learning популярними архітектурами є RNN, CNN тощо.

Архітектурні методи глибоких алгоритмів навчання

Для побудови цієї архітектури використовуються такі алгоритми:

1. Заднє розповсюдження

У цьому алгоритмі обчислюємо часткові похідні. Загалом метод градієнтного спуску для оптимізації, похідні (градієнти) обчислюються при кожній ітерації. У глибокому навчанні функції не прості, вони є складом різних функцій. У цьому випадку важко обчислити градієнти, тому для розрахунку похідних використовуємо приблизну диференціацію. Чим більше число параметрів, тим дорожчим буде приблизна диференціація.

2. Стохастичний градієнтний спуск

При спуску градієнта мета - знайти глобальні мінімуми або оптимальне рішення. Але для цього ми повинні також розглянути місцеві рішення мінімумів (не бажано). Якщо цільова функція - це опукла функція, легко знайти глобальні мінімуми. Початкове значення функції та швидкість навчання є визначальними параметрами для пошуку глобальних мінімумів. Це легко зрозуміти, розглядаючи річку, що йде з вершини гори і шукає передгір'я (глобальні мінімуми). Але в дорозі відбудуться певні підйоми та падіння (місцеві мінімуми), яких слід уникати. Точка і швидкість початку річки (початкове значення та швидкість навчання у нашому випадку) є визначальними факторами пошуку глобальних мінімумів.

3. Норма навчання

Коефіцієнт навчання схожий на швидкість річки, він може скоротити час навчання та збільшити продуктивність. Взагалі, щоб вивчити будь-яку техніку / спорт, на початку рівень навчання порівняно високий, ніж наприкінці, коли його потрібно опанувати. Після проміжного етапу навчання буде повільним, увага зосередиться на точній настройці. Те саме застосовується і при глибокому навчанні. Занадто великі зміни усуваються більш високою швидкістю навчання та повільним зниженням рівня пізнього навчання для тонкої настройки.

4. Нормалізація партії

При глибокому навчанні початкове значення ваги (вибрано випадковим чином) та навчання, швидкість визначається для міні-партії. На початку було б багато людей, що втрачають силу, і під час зворотного розмноження ці люди повинні бути компенсовані для обчислення ваг, щоб отримати вихід. Ця компенсація призводить до додаткових епох. Щоб уникнути цього, ми використовуємо пакетну нормалізацію.

5. Випади

У глибокому навчанні ми, як правило, стикаємося з проблемою перевитрати. Переобладнання у великих мережах з кількома параметрами ускладнює передбачення даних тесту. Отже, щоб уникнути того, що ми використовуємо метод випадання, який скидає випадкові одиниці під час тренінгу, створюючи різні «стоншені мережі». Під час тестування прогнозованих мереж прогнози усереднюються, що допомагає уникнути перевитрати.

6. Мішок слів

Ми використовуємо суцільний мішок слів, щоб передбачити наступне слово. Наприклад, ми бачимо, що написання електронною поштою автоподсумки щодо виконання речення є частиною NLP. Це робиться, розглядаючи безліч речень і для конкретного слова, що оточує слова, які захоплюються. Ці конкретні слова та навколишні слова подаються в нейронну мережу. Після тренувальної моделі він може передбачити конкретне слово на основі навколишніх слів.

7. Довга короткострокова пам'ять

LSTM дуже корисний при проблемах передбачення послідовності, таких як переклад мови, прогнозуванні продажів та пошуку вартості акцій. LSTM має перевагу перед іншими методами, оскільки він здатний враховувати попередні дані. LSTM здійснює модифікацію за механізмом станів клітин. Він пам'ятає, щоб забути речі. 3 основні аспекти LSTM відрізняють його від інших методів глибокого навчання. По-перше, коли нейрон повинен мати вхід, друге, коли запам'ятати попередні дані і що забути, і третє - коли пройти вихід.

Висновок

Модель глибокого навчання - це крок до реплікації людського розуму. Замість біологічних нейронів глибоке навчання використовує штучну нейронну мережу. Глибоке навчання має високі обчислювальні витрати, які можуть бути зменшені за рахунок використання методів глибокого навчання, таких як тензовий потік і Py-Torch тощо. RNN, CNN - це архітектурні методи для моделей глибокого навчання. У цій статті розглядаються різні алгоритми глибокого навчання, які використовуються в цих архітектурах.

Рекомендовані статті

Це посібник з алгоритмів глибокого вивчення. Тут ми обговорюємо архітектурні методи алгоритмів глибокого вивчення разом із шарами. Ви також можете ознайомитися з іншими запропонованими нами статтями, щоб дізнатися більше -

  1. Вступ до алгоритмів машинного навчання
  2. Топ-14 додатків машинного навчання
  3. Штучний інтелект проти машинного навчання проти глибокого навчання
  4. Топ 13 корисних запитань та відповідей щодо глибокого вивчення інтерв'ю