Перцептрон: відмінності між версіями
[неперевірена версія] | [неперевірена версія] |
Вилучено вміст Додано вміст
Bunyk (обговорення | внесок) м уточнення багатозначності |
|||
Рядок 1:
[[Файл:Перцептрон.svg|thumb|300px|Логічна схема перцептрону з трьома виходами]]
'''Перцептро́н''', або '''пер''с''ептро́н''', '''<font color="red">-а</font>''' — математична та [[комп'ютерне моделювання
Перцептрон складається з трьох типів елементів, а саме: '''сенсорні''', '''асоціативні''' та '''реагуючі'''. [[Сигнал]]и, що надходять від сенсорних елементів передаються асоціативним, а потім реагуючим елементам. Таким чином, перцептрони дозволяють створити набір [[Асоціація (психологія)
# З одним прихованим шаром; <ref group="nb"> «Тришарові» за класифікацією, прийнятою у Розенблата, і «двошарові» за сучасною системою позначень — з тією особливістю, що перший шар не той, кого навчають. </ref>
# З [[Штучний нейрон # Порогова передавальна функція
# З [[Штучна нейронна мережа # Мережі прямого поширення (Feedforward)
На тлі зростання популярності нейронних мереж, в [[1969]] році вийшла книга [[Марвін Мінський
== Поява перцептрона ==
[[Файл:Single_layer_perceptron.png|міні|ліворуч|200пкс|Схема [[Штучний нейрон
В [[1943]] році в своїй статті «Логічне числення ідей, що відносяться до нервової активності» <ref> [http://www.springerlink.com/content/61446605110620kg/fulltext.pdf {{lang|en|Warren S. McCulloch and Walter Pitts, A logical calculus of the ideas immanent in nervous activity}}] </ref> [[Уоррен Мак-Каллок]] і [[Уолтер Піттс]] запропонували поняття [[Штучна нейронна мережа
Ці ідеї кілька років пізніше розвинув американський [[нейрофізіологія|нейрофізіолог]] [[Френк Розенблат]]. Він запропонував схему пристрою, що [[Імітаційне моделювання
[[Файл:Rosenblatt.jpg|thumb|[[Френк Розенблат]] зі своїм творінням — «Марк-1».]]
Щоб «навчити» перцептрон класифікувати образи, був розроблений спеціальний ітераційний метод навчання проб і помилок, що нагадує процес навчання людини — [[метод корекції помилки]]. <ref
В [[1958]] році Розенблат опублікував статтю «Перцептрон: Ймовірна модель зберігання та організації інформації в головному мозку». <ref> [http://www.manhattanrarebooks-science.com/ rosenblatt.htm The Perceptron: A Probabilistic Model for Information Storage and Organization in the Brain] </ref> Але докладніше свої теорії і припущення щодо процесів сприйняття і перцептронов він описує у [[1962]] році в книзі "Принципи нейродинаміки: Перцептрони та теорія механізмів мозку ". У книзі він розглядає не тільки вже готові моделі перцептрону з одним прихованим шаром, але і [[Багатошаровий перцептрон Розенблата
== Опис елементарного перцептрона ==
[[Файл:Perceptron-ukr_phys.JPG| left | 280px | thumb | left | Надходження сигналів із сенсорного поля у вирішальні блоки елементарного перцептрона в його фізичному втіленні.]]
[[Файл:Simple perceptron.svg | thumb | 280px | left | Логічна схема елементарного перцептрону. Ваги S-A зв'язків можуть мати значення −1, 1 або 0 (тобто відсутність зв'язку). Ваги A-R зв'язків W можуть мати будь-яке значення]]
Елементарний перцептрон складається з елементів 3-х типів: S-елементів, A-елементів і ''одного'' R-елементу. S-елементи — це шар сенсорів, або рецепторів. У фізичному втіленні вони відповідають, наприклад, світлочутливим клітинам [[Сітківка
A-елементи називаються асоціативними, тому що кожному такому елементу, як правило, відповідає цілий набір (асоціація) S-елементів. A-елемент активізується, як тільки кількість сигналів від S-елементів на його вході перевищує певну величину θ. <ref Group="nb"> Формально A-елементи, як і R-елементи, являють собою [[суматор]]и з ''порогом'', тобто [[Штучний нейрон
Сигнали від збуджених A-елементів, у свою чергу, передаються в суматор R, причому сигнал від i-го асоціативного елемента передається з коефіцієнтом <math>w_{i}</math>. <ref>''Фомин, С. В., Беркинблит, М. Б.'' [http://www.library.biophys.msu.ru/FominBerk/main.htm Математические проблемы в биологии] </ref> Цей коефіцієнт називається ''вагою'' A-R зв'язку .
Так само як і A-елементи, R-елемент підраховує суму значень вхідних сигналів, помножених на ваги ([[Лінійна форма
: <math>f(x) = sign(\sum_{i=1}^{n} w_i x_i - \theta)</math>
[[Машинне навчання
Після навчання перцептрон готовий працювати в режимі '' [[розпізнавання образів
== Основні поняття теорії перцептронів ==
Серйозне ознайомлення з теорією перцептроів вимагає знання базових визначень і теорем, сукупність яких і являє собою базову основу для всіх наступних видів [[штучна нейронна мережа
=== Опис на основі сигналів ===
[[Файл:Threshold function.svg | frame | right | Порогова функція, що реалізується простими S- та A-елементами.]]
[[Файл:Signum.svg | frame | right | Порогова функція, що реалізується простим R-елементом.]]
Для початку визначимо складові елементи перцептрона, які є частковими випадками [[штучний нейрон
* Простим '''S-елементом''' (сенсорним) є чутливий елемент, який від дії будь-якого з видів енергії (наприклад, світла, звуку, тиску, тепла тощо) виробляє сигнал. Якщо вхідний сигнал перевищує певний поріг θ, на виході елемента отримуємо 1, в іншому випадку — 0.
* Простим '''A-елементом''' (асоціативним) називається логічний елемент, який дає вихідний сигнал 1, коли [[алгебраїчна сума]] його вхідних сигналів дорівнює або перевищує деяку граничну величину θ (кажуть, що елемент ''Активний''), в іншому випадку вихід дорівнює нулю.
Рядок 50:
Якщо на виході будь-якого елемента ми отримуємо 1, то говорять, що елемент '''активний''' або '''збуджений'''.
Всі розглянуті елементи називаються ''простими'', тому що вони реалізують ''стрибкоподібні функції''. Розенблат стверджував, що для вирішення складніших завдань можуть знадобитися інші види функцій, наприклад, [[Лінійна функція
У результаті Розенблат ввів такі визначення:
Рядок 64:
Додатково можна вказати на такі концепції, запропоновані в книзі, і пізніше розвинуті в рамках теорії нейронних мереж:
* '''[[Перцептрон з перехресними зв'язками]]''' — це система, в якій існують зв'язки між елементами одного типу (S, A або R), що знаходяться на однаковій відстані від S-елементів, причому всі інші зв'язки — послідовного типу.
* '''[[Перцептрон зі зворотнім зв'язком]]''' — це система, в якій існує хоча б один зв'язок від логічно віддаленішого елемента до менш віддаленого. Відповідно до сучасної термінології такі мережі називаються [[Рекурентна нейронна мережа
* '''[[Перцептрон зі змінними S-A зв'язками]]''' — це система, в якій знято обмеження на фіксованість зв'язків від S-елементів до A-елементів. Доведено, що шляхом оптимізації S-A зв'язків можна досягти значного поліпшення характеристик перцептрона.
=== Опис на основі предикатів ===
{{Main|Перцептрон (предикативний опис)}}
Марвін Мінський вивчав властивості [[Паралельні обчислення
* Множині сигналів від S-елементів була присвоєна змінна X;
* Кожному A-елементу присвоєно предикат φ(X) ''(фі від ікс)'', названий''' приватним предикатом''';
Рядок 94:
; Одношаровий перцептрон
: Це модель, у якій вхідні елементи безпосередньо з'єднані з вихідними за допомогою системи ваг. Чи є найпростішою [[Штучна нейронна мережа # Мережі прямого поширення (Feedforward)
; [[Багатошаровий перцептрон Розенблата
: Це перцептрон, в якому присутні додаткові шари A-елементів.
; [[Багатошаровий перцептрон Румельхарта
: Це перцептрон, в якому присутні додаткові шари A-елементів, причому, навчання такої мережі проводиться за методом [[Метод зворотного поширення помилки
В даний час в літературі під терміном «перцептрон» розуміється частіше всього одношаровий перцептрон ({{lang-en | Single-layer perceptron}}), причому, існує поширена помилка, що саме цей найпростіший тип моделей запропонував Розенблат. На противагу одношаровому, ставлять «багатошаровий перцептрон» ({{lang-en | Multilayer perceptron}}), знову ж таки, найчастіше маючи на увазі багатошаровий перцептрон Румельхарта, а не Розенблата. Класичний перцептрон в такій дихотомії відносять до багатошарових.
== Алгоритми навчання ==
Важливою властивістю будь-якої нейронної мережі є [[Машинне навчання
'''Система підкріплення''' — це будь-який набір правил, на підставі яких можна змінювати з часом матрицю взаємодії (або стан пам'яті) перцептрону.
Описуючи ці системи підкріплення і уточнюючи можливі їхні види, Розенблат ґрунтувався на ідеях [[
* Якщо два нейрони з обох боків синапсу (з'єднання) активізуються одночасно (тобто синхронно), то міцність цього з'єднання зростає.
* Якщо два нейрона з обох боків синапсу активізуються асинхронно, то такий синапс послаблюється або взагалі відмирає.
Рядок 124:
# Обидві частини кроку 3 виконаємо для всієї навчальної вибірки. В результаті навчання сформуються значення вагів зв'язків <math>w_i</math>.
''' [[
=== Навчання без учителя ===
Крім класичного методу навчання перцептрону, Розенблат також ввів поняття про [[
* '''Альфа-система підкріплення''' — це система підкріплення, за якої ваги всіх ''активних'' зв'язків <math>c_{ij}</math>, які ведуть до елемента <math>u_j</math>, змінюються на однакову величину r, а ваги ''неактивних'' зв'язків за цей час не змінюються.
Пізніше, з розробкою поняття [[багатошаровий перцептрон Румельхарта
=== Метод зворотного поширення помилки ===
{{Main|Метод зворотного поширення помилки}}
Для навчання багатошарових мереж ряд учених, у тому числі [[Румельхарт Девід
== Традиційні помилки ==
Рядок 158:
''Вибором випадкових ваг '''можна''' досягти вивчення завдань, які є лінійно нероздільними (взагалі, будь-яким) завданням, '''але тільки якщо пощастить''', і в нових змінних (виходах A-нейронів) завдання виявиться лінійно роздільним. Проте може і не пощастити.''
: [[Теорема збіжності перцептрона]] доводить, що немає і не може бути ніякого «може і не пощастити» при рівності А-елементів числа стимулів і не особливою [[G-матриця перцептрона
: Наприклад, навчання перцептрона для вирішення «завдання XOR» (див. ілюстрацію) проводиться наступними етапами:
Рядок 207:
: Якщо цей аргумент справедливий, то перцептрон не зможе ні за яких умов навчитися не роблячи жодної помилки. Інакше перцептрон не помилиться жодного разу.
: На практиці виявляється, що дана задача дуже проста для перцептрона: щоб її вирішити, перцептрону достатньо 1500 А-елементів (замість повних 65 536, необхідних для будь-якої задачі). При цьому число [[Ітерація
: Такий аргумент з'являється через те, що дане завдання плутають із завданням Мінського "про предикат "парність "".
Рядок 226:
''Якщо вагові коефіцієнти до елементів прихованого шару (А-елементів) фіксовані, то необхідно, щоб кількість елементів прихованого шару (або їхня складність) експоненційно зростала зі зростанням розмірності задачі (числа рецепторів). Тому, втрачається їхня основна перевага — здатність вирішувати завдання довільної складності за допомогою простих елементів.''
: Розенблатом було показано, що число А-елементів залежить тільки від кількості стимулів, які треба розпізнати (див. попередній пункт або [[теорема збіжності перцептрону
: Така помилка походить від наступної фрази Мінського:
Рядок 232:
При дослідженні предикату «парність» ми бачили, що коефіцієнти можуть зростати із зростанням '''R''' (числа точок на зображенні) експоненційно.
{{кінець цитати}}
: Крім того, Мінський досліджував і інші предикати, наприклад «рівність». Але всі ці предикати є достатньо специфічними завдання на узагальнення, а не на розпізнавання або прогнозування. Так, наприклад, щоб перцептрон міг виконувати предикат «парність» — він повинен сказати, парне чи ні число чорних крапок на чорно-білому зображенні, а для виконання предикату «рівність» — сказати, ривна чи ні права частина зображення лівій. Ясно, що такі завдання виходять за рамки задач розпізнавання і прогнозування, і являють собою завдання на узагальнення або просто на підрахунок певних характеристик. Це і було переконливо показано Мінським, і є обмеженням не тільки перцептронов, але і всіх [[Паралельні обчислення
: Тому такі завдання обмежують можливості всіх нейронних мереж і перцептронів зокрема, але це ніяк не пов'язано з фіксованими зв'язками першого шару; тому що, по-перше, мова йшла про величину коефіцієнтів зв'язків другого шару, а по-друге, питання тільки в ефективності, а не в принциповій можливості. Тобто перцептрон можна навчити і цьому завданню, але обсяг пам'яті та швидкість навчання будуть більшими, ніж при застосуванні простого послідовного алгоритму. Введення ж у першому шарі вагових коефіцієнтів, що навчаються, лише погіршить стан справ, бо потребує більшого часу навчання. Причому, при підготовці перцептрону до задачі розпізнавання стимулів особливого типу, будуть потрібні особливі умови стохастичного навчання для збереження ефективності, що було показано Розенблатом в експериментах з [[Перцептрон зі змінними S-A зв'язками
== Можливості та обмеження моделі ==
Рядок 243:
Сам Розенблат виділив два фундаментальних обмеження для тришарових перцептронів (що складаються з одного S-шару, одного A-шару і R-шару): відсутність у них здатності до узагальнення своїх характеристик на нові стимули або нові ситуації, а також нездатність аналізувати складні ситуації у зовнішньому середовищі шляхом розчленування їх на простіші.
В [[1969]] році [[Мінський Марвін Лі
# Перцептрони мають обмеження в задачах, пов'язаних з ''інваріантним представленням'' образів, тобто незалежним від їхнього положення на сенсорному полі і положення щодо інших фігур. Такі задачі виникають, наприклад, якщо нам потрібно побудувати машину для читання друкованих літер або цифр так, щоб ця машина могла розпізнавати їх незалежно від положення на сторінці (тобто щоб на рішення машини не впливали перенесення, поворот, розтяг-стиск символів); або якщо нам потрібно визначити з скількох частин складається фігура; або чи знаходяться дві фігури поруч чи ні. Мінським було доведено, що цей тип завдань неможливо повноцінно вирішити за допомогою паралельних обчислень, у тому числі — перцептрону.
# Перцептрони не мають функціонального переваги над [[Аналітичні методи
# Було показано, що деякі завдання в принципі можуть бути вирішені перцептроном, але можуть вимагати нереально [[Теорія складності обчислень
Книга Мінського і Паперті істотно вплинула на розвиток науки про штучний інтелект, тому що змістила науковий інтерес і субсидії урядових організацій [[США]] на інший напрямок досліджень — символьний підхід у [[ШІ]].
=== Можливості моделі ===
[[Файл:Edge approximation.svg | thumb | 200px | left | Приклад [[Класифікація
Сам Розенблат розглядав перцептрон перш за все як наступний важливий крок у дослідженні і використанні нейронних мереж, а не як закінчений варіант «Машини, здатної мислити». На перших етапах розвитку науки про [[штучний інтелект]] її завдання розглядалася в абстрактному сенсі — створення систем, що нагадують розум людини. Сучасні формулювання завдань у [[ШІ]], як правило, точніші. Ще в передмові до своєї книги він, відповідаючи на критику, відзначав, що „програма з дослідження перцептрона пов'язана головним чином ''не'' з винаходом пристроїв, що володіють «штучним інтелектом», а з вивченням фізичних структур і нейродинамічних принципів“
Розенблат запропонував ряд [[Психологічний тест
Важливою властивістю перцептронов є їхня здатність до навчання, причому за рахунок досить простого і ефективного алгоритму (див. [[# Алгоритми навчання | вище]]). Останнім часом дослідники починають звертати увагу саме на оригінальну версію перцептрона, оскільки навчання багатошарового перцептрона за допомогою методу зворотного поширення помилки виявило істотні обмеження на швидкість навчання.
=== Застосування перцептронів ===
Перцептрон може бути використаний як приклад для [[апроксимація|апроксимації]] функцій, для завдання '' [[
==== Апроксимація функцій ====
Рядок 271:
==== Прогнозування і розпізнавання образів ====
{{main|Задача розпізнавання образів}}
[[Файл:Learnign_agent_ua.JPG | thumb | 350px | right | Взаємодія [[Інтелектуальний агент
У цих завданнях перцептрону потрібно встановити приналежність об'єкта до якого-небудь класу за його параметрами (наприклад, за зовнішнім виглядом, формою, силуету). Причому, точність розпізнавання багато в чому залежатиме від представлення вихідних реакцій перцептрону. Тут можливі три типи кодування: [[Конфігураційне кодування
==== Керування агентами ====
{{main|Керування агентами}}
У теорії [[ШІ|штучного інтелекту]] часто розглядаються агенти, які навчаються ( [[Адаптивна система
Після періоду, відомого як «[[Зима штучного інтелекту]]», інтерес до кібернетичним моделями відродився в 1980-х роках, оскільки прихильники символьного підходу в [[ШІ]] так і не змогли підібратися до вирішення питань про «розуміння» і «значення», через що [[машинний переклад]] і технічне розпізнавання образів досі володіють неусувними недоліками. Сам Мінський публічно жалкував, що його виступ завдав шкоди концепції перцептронів, хоча книга лише показувала недоліки окремо взятого пристрою і деяких його варіацій. Але в основному [[ШІ]] став синонімом символьного підходу, який виражався у складанні все складніших програм для комп'ютерів, що моделюють складну діяльність [[мозок|мозку людини]].
Рядок 294:
* [http://www.cs.nott.ac.uk/~gxk/courses/g5aiai/006neuralnetworks/perceptron.xls SergeiAlderman-ANN.rtf]
* [http://www.cimne.com/flood Flood: An Open Source Neural Networks C++ Library]
* [http://page.mi.fu-berlin.de/rojas/neural/chapter/K3.pdf Chapter 3 Weighted networks - the perceptron ] and [http://page.mi.fu-berlin.de/rojas/neural/chapter/K4.pdf Chapter 4 Perceptron learning] of [http://page.mi.fu-berlin.de/rojas/neural/index.html.html ''Neural Networks - A Systematic Introduction''] by Raúl Rojas (ISBN 978-
* [http://www-cse.ucsd.edu/users/elkan/250B/perceptron.pdf Pithy explanation of the update rule] by Charles Elkan
* [http://dynamicnotions.blogspot.com/2008/09/single-layer-perceptron.html C# implementation of a perceptron]
Рядок 305:
[[Категорія:Перцептрон]]
[[Категорія:Нейробіологія]]
{{Link FA|ru}}▼
▲{{Link FA|ru}}
|