Введение

Математическая функция, задуманная как упрощенная модель.
Искусственный нейрон – это математическая функция, задуманная как модель биологических нейронов в нейронной сети. Искусственные нейроны являются элементарными единицами искусственных нейронных сетей. Искусственный нейрон – это функция, которая принимает один или несколько входных сигналов, применяет к ним веса и суммирует их для получения выходного сигнала. Конструкция искусственного нейрона была вдохновлена нейронными цепями. Его входы аналогичны возбуждающим и тормозным постсинаптическим потенциалам на дендритах нейрона, а его веса аналогичны синаптическому весу, а выход – потенциалу действия нейрона, передаваемому по его аксону. Обычно каждый вход взвешивается отдельно, и сумма часто добавляется к величине, известной как смещение (приблизительно соответствующей пороговому потенциалу), прежде чем пройти через нелинейную функцию, известную как функция активации или функция переноса. Функции переноса обычно имеют сигмоидальную форму, но могут также принимать вид других нелинейных функций, кусочно-линейных функций или пороговых функций. Они также часто монотонно возрастают, непрерывны, дифференцируемы и ограничены. Недавно также изучались немонотонные, неограниченные и колеблющиеся функции активации с несколькими нулями, которые превосходят сигмоидальные и ReLU-подобные функции активации во многих задачах. Функция порогового значения послужила основой для создания логических элементов, называемых пороговой логикой, применимой для построения логических схем, имитирующих обработку в мозге. Например, новые устройства, такие как мемристоры, в последнее время широко используются для разработки такой логики. Функцию переноса искусственного нейрона не следует путать с функцией передачи линейной системы. Искусственный нейрон может называться полулинейным элементом, Nv-нейроном, бинарным нейроном, линейной пороговой функцией или нейроном Маккалоха-Питтса (MCP), в зависимости от используемой структуры. Простые искусственные нейроны, такие как модель Маккалоха-Питтса, иногда описываются как «карикатурные модели», поскольку они предназначены для отражения одного или нескольких нейрофизиологических наблюдений, но без учета реалистичности. Искусственные нейроны также могут относиться к искусственным клеткам в нейроморфной инженерии, которые аналогичны естественным физическим нейронам.

Нейрон Маккалоха-Питтса (МКП)

Нейрон MCP – это разновидность ограниченного искусственного нейрона, работающего в дискретные моменты времени. Каждый нейрон имеет ноль или более входов, обозначаемых как , и один выход, обозначаемый как . Каждый вход может быть возбуждающим или тормозящим. Выход нейрона может быть либо неактивным, либо активным. Нейрон MCP также имеет порог.

В нейронной сети MCP все нейроны работают синхронно в дискретные моменты времени . В момент времени , выход нейрона равен , если число активных возбуждающих входов больше или равно порогу и ни один тормозящий вход не активен; в противном случае – . Каждый выход может быть подключен к произвольному числу нейронов, включая сам себя (то есть возможны самопетли). Однако один выход не может быть соединен с одним нейроном более одного раза. Самопетли не приводят к противоречиям, поскольку сеть работает в синхронные дискретные моменты времени. В качестве простого примера рассмотрим один нейрон с порогом 0 и одну тормозящую самопетлю. Его выход будет колебаться между 0 и 1 на каждом шаге, функционируя как "часы". Любой конечный автомат может быть смоделирован нейронной сетью MCP. Оснащенные бесконечной лентой, нейронные сети MCP могут имитировать любую машину Тьюринга.

Биологические модели

Искусственные нейроны созданы для имитации аспектов их биологических аналогов. Однако существует значительный разрыв в производительности между биологическими и искусственными нейронными сетями. В частности, были обнаружены отдельные биологические нейроны в мозге человека с осциллирующей функцией активации, способные к обучению функции XOR. Дендриты – В биологическом нейроне дендриты выполняют роль входного вектора. Эти дендриты позволяют клетке принимать сигналы от большого (>1000) числа соседних нейронов. Как и в вышеприведенном математическом описании, каждый дендрит способен выполнять "умножение" на "весовое значение" этого дендрита. Умножение достигается за счет изменения соотношения синаптических нейротрансмиттеров к сигнальным химическим веществам, поступающим в дендрит в ответ на синаптический нейротрансмиттер. Отрицательный эффект умножения достигается путем передачи ингибиторов сигнала (то есть ионов с противоположным зарядом) вдоль дендрита в ответ на прием синаптических нейротрансмиттеров. Сома – В биологическом нейроне сома выполняет функцию суммирования, как видно из вышеприведенного математического описания. По мере поступления в сому положительных и отрицательных сигналов (возбуждающих и тормозных, соответственно), положительные и отрицательные ионы эффективно суммируются, просто в силу их смешивания в растворе внутри тела клетки. Аксон – Аксон получает сигнал от суммирующего процесса, происходящего внутри сомы. Отверстие аксона по сути отражает электрический потенциал раствора внутри сомы. Как только сома достигает определенного потенциала, аксон передает полный сигнал в виде импульса по всей своей длине. В этом отношении аксон обеспечивает возможность соединения нашего искусственного нейрона с другими искусственными нейронами. Однако, в отличие от большинства искусственных нейронов, биологические нейроны генерируют импульсы дискретно. Каждый раз, когда электрический потенциал внутри сомы достигает определенного порога, по аксону передается импульс. Этот импульс может быть преобразован в непрерывные значения. Частота (активаций в секунду и т. д.), с которой аксон генерирует импульсы, напрямую преобразуется в частоту, с которой соседние клетки получают сигнальные ионы. Чем быстрее генерирует импульсы биологический нейрон, тем быстрее соседние нейроны накапливают (или теряют) электрический потенциал, в зависимости от "веса" дендрита, соединяющего их с этим нейроном. Именно это преобразование позволяет ученым в области компьютерных наук и математикам моделировать биологические нейронные сети с использованием искусственных нейронов, способных выдавать различные значения (часто от -1 до 1).

Кодирование

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

Физические искусственные клетки

Проводятся исследования и разработки в области физических искусственных нейронов – органических и неорганических. Например, некоторые искусственные нейроны способны принимать и высвобождать дофамин (химические, а не электрические сигналы) и взаимодействовать с естественными мышечными и мозговыми клетками крыс, что открывает возможности для использования в интерфейсах мозг-компьютер/протезах. Биосовместимые мемристоры с низким энергопотреблением могут позволить создать искусственные нейроны, функционирующие при напряжениях, близких к биологическим потенциалам действия, и использовать их для прямой обработки биосенсорных сигналов, нейроморфных вычислений и/или непосредственной коммуникации с биологическими нейронами. Органические нейроморфные схемы, изготовленные из полимеров и покрытые ион-содержащим гелем для обеспечения способности материала проводить электрический заряд подобно настоящим нейронам, были интегрированы в робота, что позволило ему обучаться посредством сенсомоторного взаимодействия в реальном мире, а не в симуляциях или виртуальной среде. Более того, искусственные спайковые нейроны, созданные из мягких материалов (полимеров), могут функционировать в биологически релевантных условиях и обеспечивать синергетическое взаимодействие между искусственной и биологической системами.

История

Первым искусственным нейроном была логическая единица порога (TLU) или линейная единица порога, впервые предложенная Уорреном Маккалохом и Уолтером Питсом в 1943 году. Модель была специально разработана как вычислительная модель "нервной сети" в мозге. В качестве функции активации использовался порог, эквивалентный функции Хевисайда. Изначально рассматривалась простая модель с бинарными входами и выходами, некоторыми ограничениями на возможные веса и более гибким значением порога. С самого начала было замечено, что любую булеву функцию можно реализовать сетями из таких устройств, что легко увидеть, поскольку можно реализовать функции AND и OR и использовать их в дизъюнктивной или конъюнктивной нормальной форме. Исследователи вскоре также поняли, что циклические сети с обратной связью могут определять динамические системы с памятью, но большая часть исследований сосредоточена (и продолжает сосредотачиваться) на строго прямосвязных сетях из-за их меньшей сложности. Важной и одной из первых искусственных нейронных сетей, использовавших линейную пороговую функцию, был перцептрон, разработанный Фрэнком Розенблатом. Эта модель уже учитывала более гибкие значения весов в нейронах и применялась в машинах с адаптивными возможностями. Представление пороговых значений в виде смещения было введено Бернардом Видроу в 1960 году – см. ADALINE. В конце 1980-х годов, когда исследования нейронных сетей вновь активизировались, стали рассматриваться нейроны с более гладкими функциями активации. Возможность дифференцирования функции активации позволила напрямую использовать метод градиентного спуска и другие алгоритмы оптимизации для настройки весов. Нейронные сети также начали использоваться как общая модель аппроксимации функций. Наиболее известный алгоритм обучения, известный как обратное распространение ошибки, был открыт заново несколько раз, но его первая разработка восходит к работам Пола Вербоса.

Типы передаточных функций

Функция передачи (функция активации) нейрона выбирается таким образом, чтобы обладать рядом свойств, которые либо усиливают, либо упрощают сеть, содержащую этот нейрон. Важно, например, то, что любой многослойный перцептрон, использующий линейную функцию передачи, эквивалентен однослойной сети; следовательно, для получения преимуществ многослойной сети необходима нелинейная функция. Далее, u во всех случаях обозначает взвешенную сумму всех входов нейрона, то есть для n входов,

где w — вектор синаптических весов, а x — вектор входов.

Шаговая функция

Выход y этой передаточной функции является бинарным, в зависимости от того, превышает ли вход заданный порог, θ. "Сигнал" передается, то есть выход устанавливается в 1, если активация превышает порог. Эта функция используется в перцептронах и часто встречается во многих других моделях. Она разделяет пространство входов гиперплоскостью. Она особенно полезна в последнем слое сети, предназначенной для бинарной классификации входных данных. Её можно приблизить с помощью других сигмоидальных функций, назначая весам большие значения.

Линейная комбинация

В этом случае, выходной блок является просто взвешенной суммой его входов плюс смещение. Ряд таких линейных нейронов выполняет линейное преобразование входного вектора. Это обычно более полезно в первых слоях сети. Существует ряд инструментов анализа, основанных на линейных моделях, таких как гармонический анализ, и все они могут быть использованы в нейронных сетях с этим линейным нейроном. Смещение позволяет нам выполнять аффинные преобразования данных. См.: Линейное преобразование, Гармонический анализ, Линейный фильтр, Вейвлет, Анализ главных компонент, Анализ независимых компонент, Деконволюция.

Сигмоидный

Довольно простая нелинейная функция, такая как сигмоидная функция (например, логистическая функция), также имеет легко вычисляемую производную, что может быть важно при вычислении обновлений весов в сети. Это делает сеть более удобной для математических манипуляций и привлекала ранних ученых в области компьютерных наук, которым необходимо было минимизировать вычислительную нагрузку их симуляций. Ранее она часто использовалась в многослойных перцептронах. Однако, недавние исследования показали, что сигмоидные нейроны менее эффективны, чем нейроны с функцией ReLU (ректифицированной линейной функцией). Причина в том, что градиенты, вычисляемые алгоритмом обратного распространения ошибки, имеют тенденцию затухать до нуля при распространении активаций через слои сигмоидных нейронов, что затрудняет оптимизацию нейронных сетей с использованием нескольких слоев сигмоидных нейронов.