Открыть сервисСервис

Перцептрон — модель нейронной сети

Перцептрон — простейшая математическая модель искусственного нейрона и однослойной нейронной сети, предложенная американским психологом и математиком Фрэнком Розенблаттом в 1957 году. Перцептрон реализует принцип биологической нейронной сети в упрощённом виде: он принимает несколько числовых входов, взвешивает их и выдаёт один выходной сигнал, который определяется сравнением взвешенной суммы с порогом. Перцептрон способен обучаться — подстраивать веса по правилу, позволяющему решать задачи линейной классификации.

Устройство и принцип работы

Перцептрон состоит из трёх элементарных компонентов:

  • Входы $x_1, x_2, \dots, x_n$ — числовые значения, подаваемые на модель извне.
  • Веса $w_1, w_2, \dots, w_n$ — вещественные числа, определяющие «значимость» каждого входа.
  • Выход $y$ — результат вычисления.

Модель вычисляет взвешенную сумму $s = w_1x_1 + w_2x_2 + \dots + w_nx_n$ (иногда с добавлением смещения $b$) и применяет пороговую функцию активации:

$$y = \begin{cases} 1, & s \geq \theta \\ 0, & s < \theta \end{cases}$$

Геометрически перцептрон разделяет пространство входных векторов гиперплоскостью $w \cdot x = \theta$. Точки по разные стороны от гиперплоскости относятся к разным классам. Именно поэтому одиночный перцептрон способен решать только линейно разделимые задачи.

Обучение

Алгоритм обучения перцептрона предложен Фрэнком Розенблаттом и получил название правило перцептрона (или правило Хебба в дискретной форме). Идея: если выход модели совпадает с целевым значением, веса не меняются; если не совпадает, веса корректируются пропорционально ошибке:

$$w_i \leftarrow w_i + \eta (t - y) x_i$$

где $t$ — желаемый выход, $y$ — фактический выход, $\eta$ — скорость обучения (положительное число). При корректно заданной задаче (линейно разделимые классы) этот алгоритм сходится за конечное число шагов — это доказано в теореме об окончательной сходимости перцептрона (Новикова, 1962; Мински, 1969).

История

Перцептрон был разработан Фрэнком Розенблаттом в 1957–1958 годах в Корнеллском аэронавтической лаборатории (США). Розенблатт, психолог по образованию, стремился создать вычислительную модель, воспроизводящую обучение биологических нейронных систем. Его первая аппаратная реализация — Mark I Perceptron — была собрана в 1958 году и представляла собой машину с фотоэлектрическими сенсорами, способную распознавать простые образы и обучаться на примерах.

Идея вызвала широкий интерес: в 1960-е годы перцептрон стал символом зарождающейся кибернетики и искусственного интеллекта. В 1962 году Розенблатт опубликовал книгу «Principles of Neurodynamics», где изложил теорию перцептронов.

Критика Мински и Паперта

В 1969 году Марвин Мински и Сеймур Паперт опубликовали книгу «Perceptrons: An Introduction to Computational Geometry», в которой строго показали ограничения однослойных перцептронов. Главный результат: однослойный перцептрон не может решать задачу «исключающее ИЛИ» (XOR), а также любые задачи, где классы не линейно разделимы. Авторы также указали на вычислительные сложности обучения многослойных вариантов.

Книга Мински и Паперта привела к резкому сокращению финансирования исследований нейронных сетей и вошла в историю как одна из причин так называемого «первого зимнего периода» искусственного интеллекта, продлившегося до конца 1970-х годов.

Многослойные перцептроны

Ответом на критику стало развитие многослойных перцептронов (multilayer perceptron, MLP) — сетей, состоящих из нескольких слоёв нейронов, соединённых последовательно. Многослойный перцептрон способен аппроксимировать произвольные непрерывные функции (универсальная теорема аппроксимации, 1989). Обучение таких сетей стало возможным после распространения алгоритма обратного распространения ошибки (backpropagation), популяризированного в 1986 году работами Дэвида Румелхарта, Джеффри Хинтона и Рональда Уильямса.

Современные глубокие нейронные сети — прямые потомки многослойного перцептрона, хотя в их архитектурах используются и более сложные элементы: свёрточные, рекуррентные, трансформерные слои.

Применение

Перцептрон и его обобщения применяются в задачах:

  • классификации изображений и текстов;
  • распознавания речи;
  • прогнозирования временных рядов;
  • медицинской диагностики;
  • обработки сигналов.

Однослойные перцептроны используются и сегодня там, где важны простота, скорость и интерпретируемость: например, в линейных классификаторах, близких к логистической регрессии и опорным векторным машинам.

См. также

Литература

  • Розенблатт Ф. Principles of Neurodynamics. — New York: Spartan Books, 1962.
  • Мински М., Паперт С. Perceptrons: An Introduction to Computational Geometry. — Cambridge: MIT Press, 1969.
  • Гудфеллоу И., Бенджио К., Курвилль А. Глубокое обучение. — М.: ДМК Пресс, 2018.
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru