Перцептрон: відмінності між версіями

[неперевірена версія][неперевірена версія]
Вилучено вміст Додано вміст
м уточнення багатозначності
DixonDBot (обговорення | внесок)
м Переміщення 24 інтервікі, відтепер доступних на Вікіданих у d:Q690207; косметичні зміни
Рядок 1:
[[Файл:Перцептрон.svg|thumb|300px|Логічна схема перцептрону з трьома виходами]]
 
'''Перцептро́н''', або '''пер''с''ептро́н''', '''<font color="red">-а</font>'''&nbsp;— математична та [[комп'ютерне моделювання | комп'ютерна модель]] [[Сприйняття | сприйняття]] [[Інформація | інформації]] [[головний мозок|мозком]] ( [[кібернетика | кібернетична]]'' [[модель мозку]]''), запропонована [[Френк Розенблат| Френком Розенблатом]] в [[1957]] році <ref>Rosenblatt, Frank (1958), The Perceptron: A Probabilistic Model for Information Storage and Organization in the Brain, Cornell Aeronautical Laboratory, Psychological Review, v65, No. 6, pp. 386—408.</ref> і реалізована у вигляді електронної машини [[Марк-1 | «Марк-1»]] <ref group="nb"> «Марк-1», зокрема, був системою, що імітує [[Зорова система | людське око]] та його взаємодію з мозком. </ref> У [[1960]] році перцептрон став однією з перших моделей '' [[Штучна нейронна мережа | нейромереж ]] '', а «Марк-1»&nbsp;— першим у світі ''[[нейрокомп'ютер]]ом''. Не зважаючи на свою простоту, перцептрон здатний [[Машинне навчання | навчатися]] і вирішувати досить складні завдання.
 
Перцептрон складається з трьох типів елементів, а саме: '''сенсорні''', '''асоціативні''' та '''реагуючі'''. [[Сигнал]]и, що надходять від сенсорних елементів передаються асоціативним, а потім реагуючим елементам. Таким чином, перцептрони дозволяють створити набір [[Асоціація (психологія) | «асоціацій»]] між вхідними [[стимул]]ами і необхідною [[Реакція (біологія) | реакцією]] на виході. В біологічному плані це відповідає перетворенню, наприклад, зорової інформації в [[Фізіологічна реакція | фізіологічну відповідь]] рухових [[Нейрон | нейронів]]. Відповідно до сучасної термінології, перцептрони можуть бути класифіковані як штучні нейронні мережі:
# З одним прихованим шаром; <ref group="nb"> «Тришарові» за класифікацією, прийнятою у Розенблата, і «двошарові» за сучасною системою позначень&nbsp;— з тією особливістю, що перший шар не той, кого навчають. </ref>
# З [[Штучний нейрон # Порогова передавальна функція | пороговою передавальною функцією]];
# З [[Штучна нейронна мережа # Мережі прямого поширення (Feedforward) | прямим розповсюдженням сигналу]].
 
На тлі зростання популярності нейронних мереж, в [[1969]] році вийшла книга [[Марвін Мінський | Марвіна Мінського]] та [[Сеймур Паперті | Сеймура Паперті]], яка показала принципові обмеження перцептронів. Це призвело до зміщення інтересу дослідників [[Штучний інтелект | штучного інтелекту]] в протилежну від нейромереж область [[символьні обчислення | символьних обчислень]]. <ref Group="nb"> В межах символьному підходу працюють над створенням [[Експертна система | експертних систем]], організацією [[База знань | баз знань]], [[Обробка природної мови | аналізом текстів ]] .</ref> Крім того, через складність [[Математика | математичного]] аналізу перцептронів, а також відсутність загальноприйнятої термінології, виникли різні [[# Традиційні помилки | неточності і помилки]]. Згодом інтерес до нейромереж, і зокрема, робіт Розенблата, поновився.
 
== Поява перцептрона ==
[[Файл:Single_layer_perceptron.png‎|міні|ліворуч|200пкс|Схема [[Штучний нейрон | штучного нейрону]]&nbsp;— базового елементу будь-якої нейронної мережі]]
В [[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> [[Уоррен Мак-Каллок]] і [[Уолтер Піттс]] запропонували поняття [[Штучна нейронна мережа | штучної нейронної мережі]]. Зокрема, ними була запропонована модель [[Штучний нейрон | штучного нейрону]]. [[Дональд Хебб]] в роботі «Організація поведінки» <ref name="hebb"> Donald Olding Hebb The Organization of Behavior: A Neuropsychological Theory [http://books.google.com/books?id=VNetYrB8EBoC] </ref> в [[1949]] році описав основні принципи навчання нейронів.
 
Ці ідеї кілька років пізніше розвинув американський [[нейрофізіологія|нейрофізіолог]] [[Френк Розенблат]]. Він запропонував схему пристрою, що [[Імітаційне моделювання | моделює]] процес [[органи чуття | людського сприйняття]], і назвав його «перцептроном». Перцептрон передавав сигнали від [[фотоелемент]]ів, що представляють собою сенсорне поле, в блоки електромеханічних елементів пам'яті. Ці комірки з'єднувалися між собою випадковим чином відповідно до принципів [[конективізм]]у. В [[1957]] році в Корнельській Лабораторії Аеронавтики успішно було завершено моделювання роботи перцептрона на комп'ютері [[IBM 704]], а два роки пізніше, [[23 червня]] [[1960]] року в [[Корнельський університет | Корнельському університеті]], був продемонстрований перший [[нейрокомп'ютер]]&nbsp;— '''«Марк-1»''', який був здатний розпізнавати деякі з букв англійського алфавіту. <ref> [http://ei.cs.vt Perceptrons.Estebon.html Perceptrons: An Associative Learning Network]</ref> <ref> [http://www.e-ink.ru/article/iui/poavlenie_perceptrona.htm Поява перцептрону]</ref>
 
[[Файл:Rosenblatt.jpg|thumb|[[Френк Розенблат]] зі своїм творінням&nbsp;— «Марк-1».]]
Щоб «навчити» перцептрон класифікувати образи, був розроблений спеціальний ітераційний метод навчання проб і помилок, що нагадує процес навчання людини&nbsp;— [[метод корекції помилки]]. <ref Namename="learning"> [http://www.iskint.ru/ Системи розпізнавання образів] </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-елементи&nbsp;— це шар сенсорів, або рецепторів. У фізичному втіленні вони відповідають, наприклад, світлочутливим клітинам [[Сітківка | сітківки ока]] або [[Фоторезистор]]ам матриці камери. Кожен рецептор може перебувати в одному з двох станів - ''спокою'' ''або'' ''збудження'', і тільки в останньому випадку він передає одиничний сигнал у наступний шар асоціативним елементів.
 
A-елементи називаються асоціативними, тому що кожному такому елементу, як правило, відповідає цілий набір (асоціація) S-елементів. A-елемент активізується, як тільки кількість сигналів від S-елементів на його вході перевищує певну величину θ. <ref Group="nb"> Формально A-елементи, як і R-елементи, являють собою [[суматор]]и з ''порогом'', тобто [[Штучний нейрон |поодинокі нейрони]].</ref>
 
Сигнали від збуджених A-елементів, у свою чергу, передаються в суматор R, причому сигнал від i-го асоціативного елемента передається з коефіцієнтом <math>w_{i}</math>. <ref>''Фомин, С. В., Беркинблит, М. Б.'' [http://www.library.biophys.msu.ru/FominBerk/main.htm Математические проблемы в биологии] </ref> Цей коефіцієнт називається ''вагою'' A-R зв'язку .
 
Так само як і A-елементи, R-елемент підраховує суму значень вхідних сигналів, помножених на ваги ([[Лінійна форма |лінійну форму]]). R-елемент, а разом з ним і елементарний перцептрон, видає «1», якщо лінійна форма перевищує поріг θ, інакше на виході буде «-1». Математично, функцію, яку реалізують R-елементом, можна записати так:
: <math>f(x) = sign(\sum_{i=1}^{n} w_i x_i - \theta)</math>
 
[[Машинне навчання | Навчання]] елементарного перцептрона полягає у зміні вагових коефіцієнтів <math> w_i </math> зв'язків A-R. Ваги зв'язків S-A (які можуть приймати значення (-1; 0; 1)) і значення порогів A-елементів вибираються випадковим чином на самому початку і потім не змінюються. (Опис алгоритму див. [[# Алгоритми навчання | нижче]].)
 
Після навчання перцептрон готовий працювати в режимі '' [[розпізнавання образів | розпізнавання ]] '' або'' [[узагальнення понять | узагальнення ]] ''. У цьому режимі перцептрону пред'являються раніше невідомі йому об'єкти, і він повинен встановити, до якого класу вони належать. Робота перцептрона полягає в наступному: при пред'явленні об'єкта, збуджені A-елементи передають сигнал R-елементу, що дорівнює сумі відповідних коефіцієнтів <math> w_i </math>. Якщо ця сума позитивна, то приймається рішення, що даний об'єкт належить до першого класу, а якщо вона негативна&nbsp;— то до другого.<ref>''Брюхомицкий Ю. А. ''Нейросетевые модели для систем информационной безопасности, 2005.</ref>
 
== Основні поняття теорії перцептронів ==
 
Серйозне ознайомлення з теорією перцептроів вимагає знання базових визначень і теорем, сукупність яких і являє собою базову основу для всіх наступних видів [[штучна нейронна мережа | штучних нейронних мереж]]. Але, як мінімум, необхідно розуміння хоча б з точки зору [[Теорія сигналів | теорії сигналів]], що є оригінальним, тобто описане автором перцептрону Ф. Розенблатом.
 
=== Опис на основі сигналів ===
[[Файл:Threshold function.svg | frame | right | Порогова функція, що реалізується простими S- та A-елементами.]]
[[Файл:Signum.svg | frame | right | Порогова функція, що реалізується простим R-елементом.]]
Для початку визначимо складові елементи перцептрона, які є частковими випадками [[штучний нейрон | штучного нейрону]] з [[Штучний нейрон # Порогова передавальна функція | пороговою функцією передачі]].
* Простим '''S-елементом''' (сенсорним) є чутливий елемент, який від дії будь-якого з видів енергії (наприклад, світла, звуку, тиску, тепла тощо) виробляє сигнал. Якщо вхідний сигнал перевищує певний поріг θ, на виході елемента отримуємо 1, в іншому випадку&nbsp;— 0.
* Простим '''A-елементом''' (асоціативним) називається логічний елемент, який дає вихідний сигнал 1, коли [[алгебраїчна сума]] його вхідних сигналів дорівнює або перевищує деяку граничну величину θ (кажуть, що елемент ''Активний''), в іншому випадку вихід дорівнює нулю.
Рядок 50:
Якщо на виході будь-якого елемента ми отримуємо 1, то говорять, що елемент '''активний''' або '''збуджений'''.
 
Всі розглянуті елементи називаються ''простими'', тому що вони реалізують ''стрибкоподібні функції''. Розенблат стверджував, що для вирішення складніших завдань можуть знадобитися інші види функцій, наприклад, [[Лінійна функція | лінійна]].
 
У результаті Розенблат ввів такі визначення:
Рядок 64:
Додатково можна вказати на такі концепції, запропоновані в книзі, і пізніше розвинуті в рамках теорії нейронних мереж:
* '''[[Перцептрон з перехресними зв'язками]]'''&nbsp;— це система, в якій існують зв'язки між елементами одного типу (S, A або R), що знаходяться на однаковій відстані від S-елементів, причому всі інші зв'язки&nbsp;— послідовного типу.
* '''[[Перцептрон зі зворотнім зв'язком]]'''&nbsp;— це система, в якій існує хоча б один зв'язок від логічно віддаленішого елемента до менш віддаленого. Відповідно до сучасної термінології такі мережі називаються [[Рекурентна нейронна мережа | рекурентними нейронними мережами]].
* '''[[Перцептрон зі змінними S-A зв'язками]]'''&nbsp;— це система, в якій знято обмеження на фіксованість зв'язків від S-елементів до A-елементів. Доведено, що шляхом оптимізації S-A зв'язків можна досягти значного поліпшення характеристик перцептрона.
 
=== Опис на основі предикатів ===
{{Main|Перцептрон (предикативний опис)}}
Марвін Мінський вивчав властивості [[Паралельні обчислення | паралельних обчислень]], окремим випадком яких на той час був перцептрон. Для аналізу його властивостей йому довелося перекласти теорію перцептронів на мову [[предикат]]ів. Суть підходу полягала в наступному:
* Множині сигналів від S-елементів була присвоєна змінна X;
* Кожному A-елементу присвоєно предикат φ(X) ''(фі від ікс)'', названий''' приватним предикатом''';
Рядок 94:
 
; Одношаровий перцептрон
: Це модель, у якій вхідні елементи безпосередньо з'єднані з вихідними за допомогою системи ваг. Чи є найпростішою [[Штучна нейронна мережа # Мережі прямого поширення (Feedforward) | мережею прямого розповсюдження]]&nbsp;— [[Лінійний класифікатор | лінійним класифікатором]], і окремим випадком класичного перцептрона, в якому кожен S-елемент однозначно відповідає одному A-елементу, S-A зв'язку мають вагу 1 і всі A-елементи мають поріг θ = 1. Одношарові перцептрони фактично є [[Штучний нейрон | формальними нейронами]], тобто пороговими елементами Мак-Каллока&nbsp;— Піттса. Вони мають безліч обмежень, зокрема, вони не можуть ідентифікувати ситуацію, коли на їхні входи подані різні сигнали («завдання XOR», див [[# Функціональні помилки | нижче]]).
 
; [[Багатошаровий перцептрон Розенблата | Багатошаровий перцептрон]] (за Розенблатом)
: Це перцептрон, в якому присутні додаткові шари A-елементів.
 
; [[Багатошаровий перцептрон Румельхарта | Багатошаровий перцептрон]] (за Румельхартом)
: Це перцептрон, в якому присутні додаткові шари A-елементів, причому, навчання такої мережі проводиться за методом [[Метод зворотного поширення помилки | зворотного поширення помилки]], причому навчаються всі шари перцептрону (у тому числі S-A). Цей перцептрон є частковим випадком багатошарового перцептрону Розенблата.
 
В даний час в літературі під терміном «перцептрон» розуміється частіше всього одношаровий перцептрон ({{lang-en | Single-layer perceptron}}), причому, існує поширена помилка, що саме цей найпростіший тип моделей запропонував Розенблат. На противагу одношаровому, ставлять «багатошаровий перцептрон» ({{lang-en | Multilayer perceptron}}), знову ж таки, найчастіше маючи на увазі багатошаровий перцептрон Румельхарта, а не Розенблата. Класичний перцептрон в такій дихотомії відносять до багатошарових.
 
== Алгоритми навчання ==
Важливою властивістю будь-якої нейронної мережі є [[Машинне навчання | здатність до навчання]]. У своїй книзі Розенблат намагався класифікувати різні алгоритми навчання перцептрону, називаючи їх системами підкріплення.
 
'''Система підкріплення'''&nbsp;— це будь-який набір правил, на підставі яких можна змінювати з часом матрицю взаємодії (або стан пам'яті) перцептрону.
Описуючи ці системи підкріплення і уточнюючи можливі їхні види, Розенблат ґрунтувався на ідеях [[ Дональд Хебб | Д. Хебба]] про навчання, запропонованих ним в [[1949]] році, які можна перефразувати в наступне правило, яке складається з двох частин:
* Якщо два нейрони з обох боків синапсу (з'єднання) активізуються одночасно (тобто синхронно), то міцність цього з'єднання зростає.
* Якщо два нейрона з обох боків синапсу активізуються асинхронно, то такий синапс послаблюється або взагалі відмирає.
Рядок 124:
# Обидві частини кроку 3 виконаємо для всієї навчальної вибірки. В результаті навчання сформуються значення вагів зв'язків <math>w_i</math>.
 
''' [[ Теорема збіжності перцептрону ]] ''', описана і доведена Ф. Розенблатом (за участю Блока, Джозефа, Кеста та інших дослідників, які працювали разом з ним), показує, що елементарний перцептрон, навчений за таким алгоритмом, незалежно від початкового стану вагових коефіцієнтів і послідовності появи стимулів ''завжди'' приведе до досягнення рішення за скінченний проміжок часу.
 
=== Навчання без учителя ===
Крім класичного методу навчання перцептрону, Розенблат також ввів поняття про [[Навчання без учителя | навчання без учителя]], запропонувавши наступний спосіб:
* '''Альфа-система підкріплення'''&nbsp;— це система підкріплення, за якої ваги всіх ''активних'' зв'язків <math>c_{ij}</math>, які ведуть до елемента <math>u_j</math>, змінюються на однакову величину r, а ваги ''неактивних'' зв'язків за цей час не змінюються.
Пізніше, з розробкою поняття [[багатошаровий перцептрон Румельхарта | багатошарового перцептрону]], альфа-система була модифікована і її стали називати ''[[дельта-правило ]] ''. Модифікація була проведена з метою зробити функцію навчання [[Диференціювання | диференційованою]] (наприклад, [[Сигмоїда|сигмоїдною]]), що в свою чергу потрібно для застосування методу [[Метод найшвидшого спуску | градієнтного спуску]], завдяки якому можливе навчання більше одного шару.
 
=== Метод зворотного поширення помилки ===
{{Main|Метод зворотного поширення помилки}}
Для навчання багатошарових мереж ряд учених, у тому числі [[Румельхарт Девід | Д. Румельхартом]], був запропонований [[Метод найшвидшого спуску | градієнтний алгоритм]] навчання з учителем, який проводить сигнал помилки, обчислений ''виходами'' перцептрона, до його ''входів'', шар за шаром. Зараз це найпопулярніший метод навчання багатошарових перцептронов. Його перевага в тому, що він може навчити ''всі'' шари нейронної мережі, і його легко прорахувати локально. Однак цей метод є дуже довгим, до того ж, для його застосування потрібно, щоб передавальна функція нейронів була диференційованою. При цьому в перцептронах довелося відмовитися від бінарного сигналу, і користуватися на вході [[Дійсні числа | неперервними значеннями]].
 
== Традиційні помилки ==
Рядок 158:
''Вибором випадкових ваг '''можна''' досягти вивчення завдань, які є лінійно нероздільними (взагалі, будь-яким) завданням, '''але тільки якщо пощастить''', і в нових змінних (виходах A-нейронів) завдання виявиться лінійно роздільним. Проте може і не пощастити.''
 
: [[Теорема збіжності перцептрона]] доводить, що немає і не може бути ніякого «може і не пощастити» при рівності А-елементів числа стимулів і не особливою [[G-матриця перцептрона | G-матриці]]&nbsp;— імовірність рішення дорівнює 100&nbsp; %. Тобто при [[відображення | відображенні]] рецепторного поля на асоціативне поле, [[Розмірність простору | розмірності]] більшої на одну, випадковим (нелінійним) [[Оператор (математика) | оператором]], нелінійна задача перетворюється на лінійно роздільну. А наступний шар, що навчається вже знаходить лінійне вирішення в іншому просторі входів.
 
: Наприклад, навчання перцептрона для вирішення «завдання XOR» (див. ілюстрацію) проводиться наступними етапами:
Рядок 207:
: Якщо цей аргумент справедливий, то перцептрон не зможе ні за яких умов навчитися не роблячи жодної помилки. Інакше перцептрон не помилиться жодного разу.
 
: На практиці виявляється, що дана задача дуже проста для перцептрона: щоб її вирішити, перцептрону достатньо 1500 А-елементів (замість повних 65 536, необхідних для будь-якої задачі). При цьому число [[Ітерація | ітерацій]] близько 1000. При 1000 А-елементів перцептрон не сходиться за 10 000 ітерацій. Якщо ж збільшити число А-елементів до 40 000, то сходження можна чекати за 30-80 ітерацій.
 
: Такий аргумент з'являється через те, що дане завдання плутають із завданням Мінського "про предикат "парність "".
Рядок 226:
''Якщо вагові коефіцієнти до елементів прихованого шару (А-елементів) фіксовані, то необхідно, щоб кількість елементів прихованого шару (або їхня складність) експоненційно зростала зі зростанням розмірності задачі (числа рецепторів). Тому, втрачається їхня основна перевага&nbsp;— здатність вирішувати завдання довільної складності за допомогою простих елементів.''
 
: Розенблатом було показано, що число А-елементів залежить тільки від кількості стимулів, які треба розпізнати (див. попередній пункт або [[теорема збіжності перцептрону | теорему збіжності перцептрону]]). Таким чином, якщо число А-елементів є фіксованим, можливість перцептрона до розв'язання задач довільної складності безпосередньо не залежит від зростання числа рецепторів.
 
: Така помилка походить від наступної фрази Мінського:
Рядок 232:
При дослідженні предикату «парність» ми бачили, що коефіцієнти можуть зростати із зростанням '''R''' (числа точок на зображенні) експоненційно.
{{кінець цитати}}
: Крім того, Мінський досліджував і інші предикати, наприклад «рівність». Але всі ці предикати є достатньо специфічними завдання на узагальнення, а не на розпізнавання або прогнозування. Так, наприклад, щоб перцептрон міг виконувати предикат «парність»&nbsp;— він повинен сказати, парне чи ні число чорних крапок на чорно-білому зображенні, а для виконання предикату «рівність»&nbsp;— сказати, ривна чи ні права частина зображення лівій. Ясно, що такі завдання виходять за рамки задач розпізнавання і прогнозування, і являють собою завдання на узагальнення або просто на підрахунок певних характеристик. Це і було переконливо показано Мінським, і є обмеженням не тільки перцептронов, але і всіх [[Паралельні обчислення | паралельних алгоритмів]], які не здатні швидше послідовних алгоритмів обчислити такі предикати.
 
: Тому такі завдання обмежують можливості всіх нейронних мереж і перцептронів зокрема, але це ніяк не пов'язано з фіксованими зв'язками першого шару; тому що, по-перше, мова йшла про величину коефіцієнтів зв'язків другого шару, а по-друге, питання тільки в ефективності, а не в принциповій можливості. Тобто перцептрон можна навчити і цьому завданню, але обсяг пам'яті та швидкість навчання будуть більшими, ніж при застосуванні простого послідовного алгоритму. Введення ж у першому шарі вагових коефіцієнтів, що навчаються, лише погіршить стан справ, бо потребує більшого часу навчання. Причому, при підготовці перцептрону до задачі розпізнавання стимулів особливого типу, будуть потрібні особливі умови стохастичного навчання для збереження ефективності, що було показано Розенблатом в експериментах з [[Перцептрон зі змінними S-A зв'язками | перцептроном зі змінними S-A зв'язками]].
 
== Можливості та обмеження моделі ==
Рядок 243:
Сам Розенблат виділив два фундаментальних обмеження для тришарових перцептронів (що складаються з одного S-шару, одного A-шару і R-шару): відсутність у них здатності до узагальнення своїх характеристик на нові стимули або нові ситуації, а також нездатність аналізувати складні ситуації у зовнішньому середовищі шляхом розчленування їх на простіші.
 
В [[1969]] році [[Мінський Марвін Лі | Марвін Мінський]] та [[Паперті Сеймур | Сеймур паперті]] опублікували книгу «Перцептрони»<ref>Minsky M L and Papert S A 1969 Perceptrons (Cambridge, MA: MIT Press)</ref>, де математично показали, що перцептрони, подібні до розенблатівських, принципово не в змозі виконувати багато функцій, які хотіли б отримати від перцептронов. До того ж, у той час була слабо розвинена теорія про паралельних обчислень, а перцептрон повністю відповідав принципам таких обчислень. За великим рахунком, Мінський показав перевагу послідовних обчислень перед [[Паралельні обчислення | паралельними]] в певних класах завдань, пов'язаних з інваріантні представленням. Його критику можна розділити на три теми:
 
# Перцептрони мають обмеження в задачах, пов'язаних з ''інваріантним представленням'' образів, тобто незалежним від їхнього положення на сенсорному полі і положення щодо інших фігур. Такі задачі виникають, наприклад, якщо нам потрібно побудувати машину для читання друкованих літер або цифр так, щоб ця машина могла розпізнавати їх незалежно від положення на сторінці (тобто щоб на рішення машини не впливали перенесення, поворот, розтяг-стиск символів); або якщо нам потрібно визначити з скількох частин складається фігура; або чи знаходяться дві фігури поруч чи ні. Мінським було доведено, що цей тип завдань неможливо повноцінно вирішити за допомогою паралельних обчислень, у тому числі&nbsp;— перцептрону.
# Перцептрони не мають функціонального переваги над [[Аналітичні методи | аналітичними методами]] (наприклад, [[Статистичні методи | статистичними]]) в задачах, пов'язаних з [[прогнозування]]м. Тим не менше, в деяких випадках вони представляють простіший і [[Продуктивність | продуктивніший]] метод [[Інтелектуальний аналіз даних | аналізу даних]].
# Було показано, що деякі завдання в принципі можуть бути вирішені перцептроном, але можуть вимагати нереально [[Теорія складності обчислень | великого часу]] або нереально великої оперативної [[Оперативна пам'ять | пам'яті]].
 
Книга Мінського і Паперті істотно вплинула на розвиток науки про штучний інтелект, тому що змістила науковий інтерес і субсидії урядових організацій [[США]] на інший напрямок досліджень&nbsp;— символьний підхід у [[ШІ]].
 
=== Можливості моделі ===
[[Файл:Edge approximation.svg | thumb | 200px | left | Приклад [[Класифікація | класифікації]] об'єктів. Зелена лінія&nbsp;— межа класів.]]
Сам Розенблат розглядав перцептрон перш за все як наступний важливий крок у дослідженні і використанні нейронних мереж, а не як закінчений варіант «Машини, здатної мислити». На перших етапах розвитку науки про [[штучний інтелект]] її завдання розглядалася в абстрактному сенсі&nbsp;— створення систем, що нагадують розум людини. Сучасні формулювання завдань у [[ШІ]], як правило, точніші. Ще в передмові до своєї книги він, відповідаючи на критику, відзначав, що „програма з дослідження перцептрона пов'язана головним чином ''не'' з винаходом пристроїв, що володіють «штучним інтелектом», а з вивченням фізичних структур і нейродинамічних принципів“
 
Розенблат запропонував ряд [[Психологічний тест | психологічних тестів]] для визначення можливостей нейромереж: експерименти з [[Кластеризація | розрізнення]], [[узагальнення]], [[Пошук закономірностей | розпізнавання послідовностей]], [[Абстрагування | утворення абстрактних понять]], формування і властивостей « [[Самосвідомість | самосвідомості]]», [[Творчість | творчості]], [[Уява | уяви]] та інші. Деякі з цих експериментів далекі від сучасних можливостей перцептронів, тому їхній розвиток відбувається більше [[Філософія | філософськи]], в межах напряму [[коннектівізм]]у. Тим не менше, для перцептронів встановлені два важливих факти, що знаходять застосування у практичних задачах: ''можливість [[класифікація | класифікації]]''(об'єктів) і ''можливість [[апроксимація | апроксимації]]'' (класів і функцій). <ref>[http://www.intuit.ru/department/expert/neurocomputing/3/2.html Лекція 3: Навчання з учителем: Розпізнавання образів]</ref>
 
Важливою властивістю перцептронов є їхня здатність до навчання, причому за рахунок досить простого і ефективного алгоритму (див. [[# Алгоритми навчання | вище]]). Останнім часом дослідники починають звертати увагу саме на оригінальну версію перцептрона, оскільки навчання багатошарового перцептрона за допомогою методу зворотного поширення помилки виявило істотні обмеження на швидкість навчання.
 
=== Застосування перцептронів ===
Перцептрон може бути використаний як приклад для [[апроксимація|апроксимації]] функцій, для завдання '' [[Прогнозування | прогнозування]]'' (і еквівалентне йому завдання '' [[Розпізнавання образів | розпізнавання образів ]] ''), що вимагає високої точності, та завдання '' [[Інтелектуальний агент | керування агентами]]'', що вимагає високої швидкості навчання.
 
==== Апроксимація функцій ====
Рядок 271:
==== Прогнозування і розпізнавання образів ====
{{main|Задача розпізнавання образів}}
[[Файл:Learnign_agent_ua.JPG | thumb | 350px | right | Взаємодія [[Інтелектуальний агент |інтелектуального агента]] із середовищем. Важливою частиною такої системи є зворотні зв'язки.]]
У цих завданнях перцептрону потрібно встановити приналежність об'єкта до якого-небудь класу за його параметрами (наприклад, за зовнішнім виглядом, формою, силуету). Причому, точність розпізнавання багато в чому залежатиме від представлення вихідних реакцій перцептрону. Тут можливі три типи кодування: [[Конфігураційне кодування | конфігураційне]], [[позиційне кодування | позиційне]], і гібридне. За позиційного кодування, кожному класу відповідає свій R-елемент, що дає точніші результати, ніж інші види. Однак цей тип кодування не застосовується в тих випадках, коли кількість класів велика, наприклад, кілька сотень. Тоді можна застосовувати гібрид&nbsp;— конфігураційно-позиційне кодування.
 
==== Керування агентами ====
{{main|Керування агентами}}
У теорії [[ШІ|штучного інтелекту]] часто розглядаються агенти, які навчаються ( [[Адаптивна система | адаптуються]] до [[навколишнє середовище | навколишнього середовища]]). При цьому в [[умови невизначеності | умовах невизначеності]] стає важливим аналізувати не тільки поточну інформацію, а й загальний контекст ситуації, в яку потрапив агент, тому тут застосовуються [[перцептрони зі зворотним зв'язком]]. Крім того, в деяких завданнях стає важливим підвищення швидкості навчання перцептрона, наприклад, за допомогою моделювання [[рефрактерний період | рефрактерності]]. <ref>''Яковлев С. С.'', Investigation of Refractoriness principle in Recurrent Neural Networks, Scientific proceedings of Riga Technical University, Issue 5, Vol.36, RTU, Riga, 2008, P. 41-48. [http://ru.vlab.wikia.com/wiki/Сергей_Яковлев:Статья:Yak2 Читати] {{ref-ru}}</ref>
 
Після періоду, відомого як «[[Зима штучного інтелекту]]», інтерес до кібернетичним моделями відродився в 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-35406050583-540-60505-8)
* [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}}
[[ar:بيرسيبترون]]
[[ca:Perceptró]]
[[cs:Perceptron]]
[[de:Perzeptron]]
[[el:Perceptron]]
[[en:Perceptron]]
[[es:Perceptrón]]
[[fa:پرسپترون]]
[[fr:Perceptron]]
[[he:פרספטרון]]
[[it:Percettrone]]
[[ja:パーセプトロン]]
[[ko:퍼셉트론]]
[[mk:Перцептрон]]
[[ne:प्रसेप्ट्रोन]]
[[nl:Perceptron]]
[[pl:Perceptron]]
[[pt:Perceptron]]
[[ru:Перцептрон]]
[[sk:Perceptrón]]
[[sl:Perceptron]]
[[sv:Perceptron]]
[[th:เพอร์เซปตรอน]]
[[zh:感知器]]