Познайомтеся з персептроном
У цій статті ми коротко розглянемо штучні нейронні мережі в цілому, потім розглянемо один нейрон і, нарешті (це частина кодування), ми візьмемо саму базову версію штучного нейрона, персептрон, і класифікуємо її точки на площині.Ви коли-небудь замислювалися, чому існують завдання, які настільки прості для будь-якої людини, але неймовірно важкі для комп'ютерів? Штучні нейронні мережі (скорочено ANN) були натхненні центральною нервовою системою людини. Як і їх біологічний аналог, ANN побудовані на простих елементах обробки сигналів, які об'єднані у велику сітку.
Нейронні мережі повинні вчитися
На відміну від традиційних алгоритмів, нейронні мережі не можуть бути «запрограмовані» або «налаштовані» для роботи за призначенням. Так само як людський мозок, вони повинні навчитися виконувати завдання. Грубо кажучи, існує три стратегії навчання. Найпростіший спосіб може використовуватися, якщо існує набір тестових даних (досить великої) з відомими результатами. Потім навчання йде так: обробіть один набір даних. Порівняйте результат з відомим результатом. Налаштуйте мережу і повторіть. Це стратегія навчання, яку ми будемо використовувати тут.Неконтрольоване навчання
Корисно, якщо нема доступних тестових даних і, якщо можливо отримати яку-небудь функцію вартості бажаного поведінки. Функція вартості повідомляє нейронної мережі, наскільки вона далеко від цілі. Потім мережа може коригувати свої параметри на льоту, працюючи з реальними даними.Посилене навчання
Метод «батога і пряника». Може використовуватися, якщо нейронна мережа генерує безперервне дію. З часом мережа навчається віддавати перевагу правильні дії і уникати неправильних. Добре, тепер ми небагато знаємо про природу штучних нейронних мереж, але з чого вони зроблені? Що ми побачимо, якщо відкриємо кришку і заглянемо всередину? Нейрони - будівельні блоки нейронних мереж. Основним компонентом будь-якої штучної нейронної мережі є штучний нейрон. Вони не тільки названі на честь своїх біологічних аналогів, але і змодельовані за поведінкою нейронів у нашому мозку.Біологія проти технологій
Точно так само як у біологічного нейрона є дендрити для прийому сигналів, тіло клітини для їх обробки і аксон для надсилання сигналів іншим нейронам, штучний нейрон має кілька вхідних каналів, стадію обробки та один вихід, який може розгалужуватися до безлічі інших штучних нейронів.Чи можемо ми зробити щось корисне з одним персептроном? Існує клас проблем, які може вирішити один персептрон. Розглянемо вхідний вектор як координати точки. Для вектора з n-елементами ця точка буде жити в n-мірному просторі. Щоб спростити життя (і наведений нижче код), давайте припустимо, що вона двовимірна. Як аркуш паперу. Далі уявімо, що ми малюємо кілька випадкових точок на площині і розділяємо їх на два набору, малюючи пряму лінію через папір. Ця лінія ділить точки на два ряди, один над і інший під лінією. Два набору потім називаються лінійно разделимыми. Один перцептрон, яким би простим він не здавався, здатний дізнатися, де знаходиться ця лінія, і коли він закінчить навчання, він може визначити, чи знаходиться дана точка вище або нижче цієї лінії.
Історія винаходу
Алгоритм цього методу був винайдений в 1957 році в Авіаційної лабораторії Корнелла Френком Розенблатт (персептрон часто називається в його честь), що фінансуються Управлінням військово-морських досліджень США. Перцептрон повинен був бути машиною, а не програмою, і хоча його перша реалізація була в програмному забезпеченні для IBM 704 згодом він був реалізований на обладнанні, виготовленому на замовлення, як «перцептрон марки 1». Ця машина була розроблена для розпізнавання зображень: вона мала масив з 400 фотоелементів, випадковим чином підключених до нейронам. Ваги були закодовані в потенциометрах, а оновлення ваги під час навчання виконувалося електродвигунами.На прес-конференції, організованій ВМС США в 1958 році, Розенблатт зробив заяви про персептроне, що викликав запеклі суперечки серед молодого спільноти ІІ; ґрунтуючись на заявах Розенблатта, газета New York Times повідомила, що персептрон є «зародком електронного комп'ютера, який, як очікує військово-морський флот, зможе ходити, говорити, бачити, писати, відтворювати себе і усвідомлювати своє існування».
Подальші розробки
Хоча перцептрон спочатку здавався багатообіцяючим, було швидко доведено, що перцептрони не можуть бути навчені розпізнавати багато класи патернів. Це призвело до стагнації в області досліджень з допомогою персептрона нейронних мереж протягом багатьох років, перш ніж було визнано, що нейронна мережа з прямим зв'язком з двома або більше шарами (також звана багатошаровим персептроном) мала набагато більшу обчислювальну потужність, ніж перцептрони з одним шаром (також званих одним шаром персептрона). Одношаровий персептрон здатний вивчати тільки лінійно розділені структури. У 1969 році відома книга Марвіна Мінскі та Сеймура Паперта «Перцептрони» показала, що ці класи мереж не можуть вивчити функцію XOR. Однак це не відноситься до нелінійних класифікаційних функцій, які можна використовувати в одношаровому персептроне. Застосування таких функцій розширює можливості персептрона, включаючи реалізацію функції XOR. Часто вважають (невірно), що вони також припускали, що аналогічний результат буде мати місце для багатошарової мережі персептрона. Однак це не так, оскільки й Мінський, і Паперт вже знали, що багатошарові персептрони здатні виробляти функцію XOR. Три роки потому Стівен Гроссберг опублікував серію робіт, що представляють мережі, здатні моделювати диференціальні функції, функції підсилення контрасту і функції XOR.Роботи були опубліковані в 1972 і 1973 рр. Тим не менш часто пропускається текст Мінського/Паперта викликав значне зниження інтересу і фінансування досліджень з допомогою персептрона нейронних мереж. Минуло ще десять років, поки дослідження нейронних мереж не відродилися в 1980-х роках.