Нейрокомпьютерная техника основы искусственных нейронных сетей

Содержание

Свойства и обучение искусственных нейронных сетей

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

Несмотря на такое функциональное сходство, даже самый оптимистичный их защитник не предположит, что в скором будущем искусственные нейронные сети будут дублировать функции человеческого мозга. Реальный «интеллект», демонстрируемый самыми сложными нейронными сетями, находится ниже уровня дождевого червя, и энтузиазм должен быть умерен в соответствии с современными реалиями. Однако равным образом было бы неверным игнорировать удивительное сходство в функционировании некоторых нейронных сетей с человеческим мозгом. Эти возможности, как бы они ни были ограничены сегодня, наводят на мысль, что глубокое проникновение в человеческий интеллект, а также множество революционных приложений, могут быть не за горами.

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

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

Некоторые из искусственных нейронных сетей обладают способностью извлекать сущность из входных сигналов. Например, сеть может быть обучена на последовательность искаженных версий буквы «А». После соответствующего обучения предъявление такого искаженного примера приведет к тому, что сеть породит букву совершенной формы. В некотором смысле она научится порождать то, что никогда не видела.

Эта способность извлекать идеальное из несовершенных входов ставит интересные философские вопросы. Она напоминает концепцию идеалов, выдвинутую Платоном в его «Республике». Во всяком случае способность извлекать идеальные прототипы является у людей весьма ценным качеством.

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

Обучение искусственных нейронных сетей

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

Сеть обучается, чтобы для некоторого множества входов давать желаемое (или, по крайней мере, сообразное с ним) множество выходов. Каждое такое входное (или выходное) множество рассматривается как вектор. Обучение осуществляется путем последовательного предъявления входных векторов с одновременной подстройкой весов в соответствии с определенной процедурой. В процессе обучения веса сети постепенно становятся такими, чтобы каждый входной вектор вырабатывал выходной вектор.

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

Для конструирования процесса обучения, прежде всего, необходимо иметь модель внешней среды, в которой функционирует нейронная сеть — знать доступную для сети информацию. Эта модель определяет парадигму обучения [3]. Во-вторых, необходимо понять, как модифицировать весовые параметры сети, — какие правила обучения управляют процессом настройки. Алгоритм обучения означает процедуру, в которой используются правила обучения для настройки весов.

Существуют три парадигмы обучения: «с учителем», «без учителя» (самообучение) и смешанная. В первом случае нейронная сеть располагает правильными ответами (выходами сети) на каждый входной пример. Веса настраиваются так, чтобы сеть производила ответы как можно более близкие к известным правильным ответам. Усиленный вариант обучения «с учителем» предполагает, что известна только критическая оценка правильности выхода нейронной сети, но не сами правильные значения выхода. Обучение без учителя не требует знания правильных ответов на каждый пример обучающей выборки. В этом случае раскрывается внутренняя структура данных или корреляции между образцами в системе данных, что позволяет распределить образцы по категориям. При смешанном обучении часть весов определяется посредством обучения с учителем, в то время как остальная получается с помощью самообучения.

Теория обучения рассматривает три фундаментальных свойства, связанных с обучением по примерам: емкость, сложность образцов и вычислительная сложность. Под емкостью понимается, сколько образцов может запомнить сеть, и какие функции и границы принятия решений могут быть на ней сформированы. Сложность образцов определяет число обучающих примеров, необходимых для достижения способности сети к обобщению. Слишком малое число примеров может вызвать «переобученность» сети, когда она хорошо функционирует на примерах обучающей выборки, но плохо — на тестовых примерах, подчиненных тому же статистическому распределению. Известны 4 основных типа правил обучения: коррекция по ошибке, машина Больцмана, правило Хебба и обучение методом соревнования.

Правило коррекции по ошибке. При обучении с учителем для каждого входного примера задан желаемый выход d. Реальный выход сети y может не совпадать с желаемым. Принцип коррекции по ошибке при обучении состоит в использовании сигнала (d-y) для модификации весов, обеспечивающей постепенное уменьшение ошибки. Обучение имеет место только в случае, когда персептрон ошибается. Известны различные модификации этого алгоритма обучения [2].

Обучение Больцмана. Представляет собой стохастическое правило обучения, которое следует из информационных теоретических и термодинамических принципов [10]. Целью обучения Больцмана является такая настройка весовых коэффициентов, при которой состояния видимых нейронов удовлетворяют желаемому распределению вероятностей. Обучение Больцмана может рассматриваться как специальный случай коррекции по ошибке, в котором под ошибкой понимается расхождение корреляций состояний в двух режимах.

Правило Хебба. Самым старым обучающим правилом является постулат обучения Хебба [13]. Хебб опирался на следующие нейрофизиологические наблюдения: если нейроны с обеих сторон синапса активизируются одновременно и регулярно, то сила синаптической связи возрастает. Важной особенностью этого правила является то, что изменение синаптического веса зависит только от активности нейронов, которые связаны данным синапсом. Это существенно упрощает цепи обучения в реализации VLSI.

Обучение методом соревнования. В отличие от обучения Хебба, в котором множество выходных нейронов могут возбуждаться одновременно, при соревновательном обучении выходные нейроны соревнуются между собой за активизацию. Это явление известно как правило «победитель берет все». Подобное обучение имеет место в биологических нейронных сетях. Обучение посредством соревнования позволяет кластеризовать входные данные: подобные примеры группируются сетью в соответствии с корреляциями и представляются одним элементом.

При обучении модифицируются только веса «победившего» нейрона. Эффект этого правила достигается за счет такого изменения сохраненного в сети образца (вектора весов связей победившего нейрона), при котором он становится чуть ближе к входному примеру. На рис. 3 дана геометрическая иллюстрация обучения методом соревнования. Входные векторы нормализованы и представлены точками на поверхности сферы. Векторы весов для трех нейронов инициализированы случайными значениями. Их начальные и конечные значения после обучения отмечены Х на рис. 6а и 6б соответственно. Каждая из трех групп примеров обнаружена одним из выходных нейронов, чей весовой вектор настроился на центр тяжести обнаруженной группы.

Рис. 6. Пример обучения методом соревнования: (а) перед обучением; (б) после обучения.

Можно заметить, что сеть никогда не перестанет обучаться, если параметр скорости обучения не равен 0. Некоторый входной образец может активизировать другой выходной нейрон на последующих итерациях в процессе обучения. Это ставит вопрос об устойчивости обучающей системы. Система считается устойчивой, если ни один из примеров обучающей выборки не изменяет своей принадлежности к категории после конечного числа итераций обучающего процесса. Один из способов достижения стабильности состоит в постепенном уменьшении до 0 параметра скорости обучения. Однако это искусственное торможение обучения вызывает другую проблему, называемую пластичностью и связанную со способностью к адаптации к новым данным. Эти особенности обучения методом соревнования известны под названием дилеммы стабильности-пластичности Гроссберга.

В Таблице 1 представлены различные алгоритмы обучения и связанные с ними архитектуры сетей (список не является исчерпывающим). В последней колонке перечислены задачи, для которых может быть применен каждый алгоритм. Каждый алгоритм обучения ориентирован на сеть определенной архитектуры и предназначен для ограниченного класса задач. Кроме рассмотренных, следует упомянуть некоторые другие алгоритмы: Adaline и Madaline [14], линейный дискриминантный анализ [15], проекции Саммона [15], анализ главных компонентов [2].

ГЛАВА 1. ОСНОВЫ ИСКУССТВЕННЫХ НЕЙРОННЫХ СЕТЕЙ. БИОЛОГИЧЕСКИЙ ПРОТОТИП

Искусственные нейронные сети чрезвычайно разнообразны по своим конфигурациям. Несмотря на такое разнообразие, сетевые парадигмы имеют много общего. В этой главе подобные вопросы затрагиваются для того, чтобы читатель был знаком с ними к тому моменту, когда позднее они снова встретятся в книге.

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

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

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

По нашей оценке, на 11.11.2020 г. лучшими брокерами являются:

• для торговли валютами – NPBFX;

• для торговли бинарными опционами – Intrade.bar;

• для инвестирования в ПАММы и др. инструменты – Альпари;

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

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

Нейрокомпьютерные технологии

Дата добавления: 2014-05-22 ; просмотров: 2827 ; Нарушение авторских прав

Нейрокомпьютерные технологии используют взаимодействующие друг с другом специальные нейрокомпоненты на базе микропроцессоров. Такой подход основан на моделировании поведения нервных клеток (нейронов).

Нейрон (биологический) – одна из 1015 клеток мозга, способная генерировать электрический импульс, в случае, когда суммарный потенциал превысит критическую величину. Соединяясь друг с другом, нейроны образуют сеть, по которой путешествуют электрические импульсы. Контакты между нейронами (синапсы), могут менять эффективность передачи сигналов (вес связи) от нейрона к нейрону. Самая популярная на сегодняшний день гипотеза основана на том, что именно нейронные сети мозга обрабатывают информацию. При этом «обучение» сети и запоминание информации базируется на настройке значений весов связей между нейронами [8].

С самого начала развития компьютерной техники были намечены два принципиально разных подхода к обработке информации: принцип последовательной обработки сигналов и параллельное распознавание образов. Последовательная обработка была реализована в виде общераспространенных процессоров электронно-вычислительных машин, что определило основное занятие ЭВМ на десятилетия вперед — решение задач с помощью запрограммированных человеком алгоритмов.

В то же время описание операций над многобитовыми образами при использовании последовательного принципа обработки команд оказалось невозможным, из-за большой сложности описания образов. Требовались качественно другие подходы и модели обработки информации. За основу новых решений были приняты принципы функционирования биологических нейронных сетей, которые составляют основу деятельности человеческого мозга с «образами» внешнего мира — распознавание сенсорной информации и выработка адекватной реакции на внешние воздействия. Появились аналоги биологических нейронных сетей в виде искусственных нейросетей, реализуемых на компьютерах. Основная задача нейросетей — не выполнение внешних алгоритмов, а выработка собственных в процессе обучения — отбраковки неверных решений, т.е. устранения ошибок каждого нейрона.

В настоящее время нейрокомпьютерная технология является одним из наиболее перспективных направлений развития вычислительной техники, основой которой являются искусственные нейронные сети (рис. 17), представляющие собой устройства параллельных вычислений, состоящие из множества простых процессоров. Для представления и обработки данных в искусственных нейронных сетях могут быть использованы позиционные и непозиционные системы счисления. Позиционные системы являются традиционными и для согласования их с нейронными сетями используются искусственные приемы, которые снижают положительные свойства нейронных сетей, связанные с параллельными вычислениями. Непозиционные системы счисления, в частности, система остаточных классов, является параллельной системой и обеспечивает параллелизм на уровне выполнения элементарных операций, т.е. система остаточных классов является естественной основой представления данных в нейронных сетях, обеспечивая их новыми свойствами и возможностями.

Рис. 17. Архитектура нейронной сети

Искусственная нейронная сеть (artificial neural network) – это параллельная система обработки информации, состоящая из обрабатывающих элементов (нейронов), которые локально выполняют операции над поступающими сигналами и могут обладать локальной памятью. Элементы связаны друг с другом однонаправленными каналами передачи сигналов. Каждый обрабатывающий элемент имеет единственный выход, иногда разветвляющийся на несколько каналов (связей), по каждому из которых передается один и тот же выходной (результирующий) сигнал обрабатывающего элемента. Правила образования результирующего сигнала (правила обработки информации внутри элемента) могут варьироваться в широких пределах, важно лишь, чтобы обработка была локальной. Это означает, что обработка должна зависеть от текущих значений входных сигналов, поступающих на элемент через связи и от значений, хранящихся в локальной памяти элемента.

Считается, что теория нейронных сетей, как научное направление, впервые была обозначена в классической работе МакКаллока и Питтса 1943 г., в которой утверждалось, что, в принципе, любую арифметическую или логическую функцию можно реализовать с помощью простой нейронной сети. В 1958 г. Фрэнк Розенблатт придумал нейронную сеть, названную перцептроном, и построил первый нейрокомпьютер Марк-1 . Перцептрон был предназначен для классификации объектов. На этапе обучения «учитель» сообщает перцептрону к какому классу принадлежит предъявленный объект. Обученный перцептрон способен классифицировать объекты, в том числе не использовавшиеся при обучении, делая при этом очень мало ошибок [31].

Новый взлет теории нейронных сетей начался в 1983-1986 г. г. При этом важную роль сыграли работы группы PDP (Parallel Distributed Processing) . В них рассматривались нейронные сети, названные многослойными перцептронами, которые оказались весьма эффективными для решения задач распознавания, управления и предсказания. (Многослойные перцептроны занимают ведущее положение, как по разнообразию возможностей использования, так и по количеству успешно решенных прикладных задач).

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

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

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

Привлекательные черты обработки информации в нейросетях:

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

2. Единый и эффективный принцип обучения нейросетей — минимизация эмпирической ошибки методом ее обратного распространения по сети. Извне задается лишь цель обучения — сеть сама себя конфигурирует, минимизируя эту ошибку.

3. Нейросети могут вырабатывать собственные, достаточно сложные алгоритмы обработки данных и, таким образом, решать неформализованные задачи.

Детальный анализ разработок нейрокомпьютеров [26; 41; 42; 43] позволяет выделить основные перспективные направления современного развития нейрокомпьютерных технологий: нейропакети, нейросетевые экспертные системы, СУБД с включением нейросетевых алгоритмов, обработка изображений, управление динамическими системами и обработка сигналов, управление финансовой деятельностью, оптические нейрокомпьютеры, виртуальная реальность. Разработками в этой области занимается более 300 заграничных компаний, причем число их постоянно увеличивается. Среди них такие гиганты, как Intel, IBM и Motorolla. Сегодня наблюдается тенденция перехода от программных реализаций к программно-аппаратной реализации нейросетевых алгоритмов с резким увеличением числа разработок нейрочипів с нейросетевой архитектурой. Резко выросло количество военных разработок, в основном направленных на создание сверхскоростных, «умных» супервычислителей.

Если говорить про основное направление — интеллектуализацию вычислительных систем, придание им свойств человеческого мышления и восприятия, то здесь нейрокомпьютеры — практически единственный путь развития вычислительной техники. Большинство неудач на пути усовершенствования искусственного интеллекта на протяжении последних 30 лет связано с тем, что для решения важных и сложных по постановке задач выбирались вычислительные средства, не адекватные по возможностям решаемой задаче, в основном из числа традиционных компьютеров. При этом, как правило, не решалась задача, а показывалась принципиальная возможность ее решения. Сегодня активное развитие компьютерных технологий создал объективные условия для построения вычислительных систем, адекватных по возможностям и архитектуре практически любым задачам искусственного интеллекта.

В Японии с 1993 года принята программа «Real world computing program». Ее основная цель — создание эволюционирующей адаптивной ЭВМ. Проект рассчитан на 10 лет. Основой разработки является нейротехнология, которая используется для распознавания образов, обработки семантической информации, управления информационными потоками и роботами, способных адаптироваться к окружающей среде. Только в 1996 году было проведено около сотни международных конференций по нейрокомпьютерам и смежным проблемам. Разработки нейрокомпьютеров ведутся в многих странах мира, в частности, в Австрали создан образец коммерческого супернейрокомпьютера.

Для какого класса задач эффективно применение вычислительного устройства, построенного по новой технологии? Относительно нейрокомпьютеров ответ на этот вопрос постоянно меняется на протяжении 50 лет.

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

Общие задачисводятся к обработке нейронною сетью многомерных массивов переменных, например:

— контроль кредитных карточек. Сегодня 60% кредитных карточек в США обрабатываются с помощью нейросетевых технологий;

— система выявления скрытых веществ с помощью системы на базе тепловых нейронов и с помощью нейрокомпьютера на заказанных цифровых нейрочипах. Подобная система фирмы SAIC эксплуатируется во многих аэропортах США при обзоре багажа для выявления наркотиков, взрывных веществ, ядерных и других материалов;

— система автоматизированного контроля безопасного сохранения ядерных изделий.

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

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

— прогнозирование финансовых показателей;

— прогнозирование надежности электродвигателей;

— предвидение мощности АЭС и прогнозирование надежности систем электропитания на самолетах.

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

Системы управления динамическими объектами.Это одна из самых перспективных, областей применения нейрокомпьютеров. В США и Финляндия ведут работы по использованию нейрокомпьютеров для управления химическими реакторами. В странах СНГ этим не занимались, в частности, через моральное устарение существующих реакторов и нецелесообразность усовершенствования их систем управления.

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

Нейросетевые экспертные системы.Необходимость реализации экспертных систем с алгоритмом нейросетей возникает при значительном увеличении числа правил и выводов. Примерами реализации конкретных нейросетевых экспертных систем могут служить система выбора воздушных маневров в ходе воздушного боя и медицинская диагностическая экспертная система для оценки состояния летчика.

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

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

— это направление разрешает создавать уникальные суперкомпьютеры на имеющейся элементной базе;

— разработки нейрочипов и нейрокомпьютеров характеризуются переходом от цифровой обработки до аналого-цифровой и аналоговой;

— нейросетевые архитектуры по сравнению с другими приводят к активизации использования новых технологических направлений реализации: нейросистемы на пластмассе, оптоэлектронные и оптические нейрокомпьютеры, молекулярные нейрокомпьютеры и нанонейроэлементы; возникает потребность в универсализации САПР нейрочипов.

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

Таким образом, нейрокомпьютеры являются перспективным направлением развития современной высокопроизводительной вычислительной техники, а теория нейронных сетей представляет собой приоритетные направления вычислительной науки, и при соответствующей поддержке интенсивно развиваются.

Искусственные нейронные сети

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

История ИНС начинается с 40- годов 20 века, когда двое американских исследователей – У. Маккалок и У. Питтс – предложили модель нейрона и сформулировали основные положения теории функционирования человеческого мозга.

Существует множество задач, для решения которых может быть использован аппарат искусственных нейронных сетей.

Рассмотрим в качестве примера задачу распознавания образов. Пусть имеется некоторое изображение. Необходимо определить, что на нем изображено и где. Если написать программу, решающую данную задачу, придется последовательно, перебирая отдельные пиксели изображения в соответствии с некоторым критерием, решить, какие из них принадлежат определенному объекту. Сформулировать критерий, определяющий конкретный выбранный объект, является нетривиальной задачей.

На этом примере можно сформулировать несколько принципиальных отличий в обработке информации в мозге и в ЭВМ:

1. Способность к обучению на примерах.

2. Способность к обобщению, то есть мы не просто запомнили все примеры некоторого объекта, но и создали некоторый идеальный образ абстрактного объекта. Сравнивая с ним множество других объектов, можно определить, похож он на него или нет.

3. Параллельность обработки информации. Данное отличие означает, что картинка не считывается по пикселям, мы видим ее целиком и наш мозг целиком ее обрабатывает.

5. Ассоциативность памяти – способность находить нужную информацию по ее малой части.

Мозг человека состоит из нервных клеток – нейронов. Всего их 10 12 штук. Каждый нейрон мозга имеет один длинный ветвящийся отросток – аксон и множество мелких ветвящихся отростков – дендритов.

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

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

Когда суммарный сигнал, приходящий от других нейронов, превышает некоторое пороговое значение, генерируется стандартный импульс. В противном случае нейрон остается в состоянии покоя.

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

Поэтому вместо точных математических моделей нейронов используется простая модель так называемого формального нейрона. Он имеет входы, куда подаются некоторые числа: x1, …, xn. Затем стоит блок, называемый адаптивным сумматором. На его выходе мы имеем взвешенную схему входов: S=Sn i =1 xi*wi. Затем она подается на нелинейный преобразователь и на выходе мы имеем y=F(S).

Слева – адаптивный сумматор, справа – нелинейный преобразователь.

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

По аналогии с биологическим нейроном, когда суммарное воздействие на входе превысит критическое значение, генерируется импульс 1. Иначе нейрон остается в состоянии покоя, то есть выдается ноль.

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

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

Архитектуры нейронных сетей.

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

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

В многослойных нейронных сетях (их часто называют персептронами) нейроны объединяются в слои. Слой содержит совокупность нейронов с едиными входными сигналами. Число нейронов в слое может быть любым и не зависит от количества нейронов в других слоях.

В общем случае сеть состоит из нескольких слоев, пронумерованных слева направо. Внешние входные сигналы подаются на входе нейронов входного слоя (его часто нумеруют как нулевой), а выходами сети являются выходные сигналы последнего слоя. Кроме входного и выходного слоев, в многослойной нейронной сети есть один или несколько так называемых скрытых слоев.

В свою очередь, среди многослойных сетей выделяют:

1. Сети прямого распространения – сети без обратных связей. В таких сетях нейроны входного слоя получают входные сигналы, преобразуют их и передают нейронам первого скрытого слоя, и так далее вплоть до выходного, который выдает сигналы для интерпретатора и пользователя.

Если не оговорено противное, то каждый выходной сигнал n-ного слоя передастся на вход всех нейронов n+1 слоя.

Рисунок – Многослойная (трехслойная) сеть прямого распространения.

2. Сети с обратными связями (рекуррентные сети). В таких сетях информация передается с последующих слоев на предыдущие. Следует иметь в виду, что после введения обратных связей сеть уже не просто осуществляет отображение множества входных векторов на множество выходных, она превращается в динамическую систему и возникает вопрос об ее устойчивости.

Теоретически число слоев и число нейронов в каждом слое может быть произвольным. Однако фактически оно ограничивается ресурсами ЭВМ, на которой реализуется нейросеть.

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

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

y n j,p — реальный выход n-ного выходного слоя сети для p-того нейрона на j-том обучающем примере,

То есть минимизировав такой функционал, мы получим решение по методу наименьших квадратов.

Поскольку весовые коэффициенты в зависимость y ( N) j,p(х) входят нелинейно, воспользуемся для нахождения минимума методом наискорейшего спуска. То есть на каждом шаге обучения будем изменять весовые коэффициенты по формуле:

Дельта w ( n) ij= — η * dE/d w ( n) ij, где (3)

w ( n) ij – весовой коэффициент j-того нейрона n-ного слоя для связи с i-тым нейроном n-1-ого слоя. Параметра η называется параметром скорости обучения.

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

z n j взвешенная сумма входов j-того нейрона n-ного слоя.

Зная функцию активации, можно вычислить формулу 4.

Например, для сигмоида эта величина будет равняться: херня 5.

Третий сомножитель в формуле 3 есть не что иное, как выход i-того нейрона n-1-ого слоя. То есть:

херня 6 с номером 5

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

Производя дифференцирование 1 по херне 7 и учитывая выражения 3 и 5, получим херня 8 с номером 6.

Илон Маск рекомендует:  isindex в HTML

Херня 9 с номером 7

Тогда для нейрона выходного слоя получим:

Херня 10 с номером 8

Окончательную формулу 2 для модификации весовых коэффициентов можно записать в виде:

Херня 11 с номером 9

Таким образом, полный алгоритм обучения нейронной сети с помощью алгоритм обратного распространения строится следующим образом:

1. Присваиваем всем весовым коэффициентам сети случайные начальные значения. При этом сеть будет осуществлять какое-то случайное преобразование входных сигналов и значения целевой функции 1 будут велики.

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

3. Рассчитать значение величины херня 12, затем рекурсивно подсчитываются все остальные значения херня 13 и с помощью формулы 9 изменение весовых коэффициентов сети.

4. Скорректировать веса сети: херня 14.

5. Рассчитать целевую функцию, используя выражение 1. Если она достаточно мала, считать сеть успешно обучившейся. Иначе возвращаемся на шаг 2.

Основные проблемы, возникающие при применении данного метода:

1) Локальные минимумы. Алгоритм обратного распространения реализуется градиентный спуск по поверхности ошибки в пространстве весовых коэффициентов и поэтому может застревать в локальных минимумах. При этом рядом может иметься другой, значительно более глубокий минимум.

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

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

2) Паралич сети. В процесс обучения сети значения весов могут в результате коррекции стать очень большими величинами. Это может привести к тому, что все или большинство нейронов будут функционировать при очень больших аргументах функции активации херня 15 в области, где произвольная функции крайне мала, как например, для сигмоидной функции активации.

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

Не нашли то, что искали? Воспользуйтесь поиском:

Лучшие изречения: Увлечёшься девушкой-вырастут хвосты, займёшься учебой-вырастут рога 9791 — | 7666 — или читать все.

188.64.174.135 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.

Отключите adBlock!
и обновите страницу (F5)

очень нужно

2.1 Применение искусственных нейронных сетей в системах управления

В историческом плане можно утверждать, что разработка систем управления (СУ) всегда происходит поэтапно. В качестве таких этапов можно выделить:

— этап разработки концепции построения СУ;

— этап моделирования СУ, в соответствии с предлагаемой концепцией построения;

— этап анализа получаемых результатов; этап доработки (модернизации) концепции построения СУ. На протяжении всех этих этапов не прекращаются теоретические исследования, которые позволяют выбирать основные направления совершенствования первоначально сформулированной концепции построения СУ и распространять ее основные идеи на ряд смежных областей.

По аналогичной схеме происходит развитие СУ, использующих искусственные НС. Однако следует заметить, что большое количество разработанных аппаратных и программных моделей нейросетевых СУ часто опережают теоретическое понимание происходящих при этом процессов и имеющихся проблем С. 159 Потапов, И.В. Надежность нейрокомпьютерных систем. Модели и задачи: монография / И.В. Потапов. — Омск: Омский гос. технический ун-т, 2007. — 239 с. .

Необходимым этапом решения задач управления нелинейными динамическими системами является получение их адекватных математических моделей, базирующееся, как правило, на теоретическом и экспериментальном анализе свойств этих систем. Теоретический анализ процессов, происходящих в системе, позволяет получить математическое описание в виде, например, дифференциальных уравнений. При экспериментальном анализе на основе наблюдений входных и выходных сигналов системы получают либо ее параметрическую, либо непараметрическую модель. Наиболее широкое распространение получили параметрические модели, требующие решения задач структурной и параметрической идентификации и использующие ограниченное число параметров. Несмотря на огромное количество работ, многообразие видов нелинейностей не позволяет создать единую теорию идентификации нелинейных систем. Применяемый чаще всего классический подход основан на аппроксимации нелинейностей, например рядами Вольтера, Гаммерштейна, Винера, полиномами Колмогорова-Габора и др. Однако область применения таких моделей ограничена. Кроме того, дополнительные трудности получения адекватного математического описания обусловлено наличием в реальных сигналах помех С. 147 Павлов, А.Н. Интеллектуальные средства измерений [Электронный ресурс] / А.Н. Павлов. — Бийск: БТИ АлтГТУ, 2011. — 121 с. .

Одной из классических моделей СУ является модель с обратной связью с регулируемыми в реальном масштабе времени коэффициентами, например самонастраивающийся регулятор Астрома. Коэффициенты такого контроллера регулируются в течение каждого цикла управления в соответствии с оценкой параметров системы. Блок-схема управления с обратной связью и регулируемыми в реальном масштабе времени коэффициентами приведена на рис.22.

Размещено на http://www.allbest.ru/

Рис.22 Блок-схема управления с обратной связью и регулируемыми коэффициентами

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

Такая система должна быть асимптотически устойчивой, то есть управляемая система в итоге отслеживает эталонную модель с нулевой ошибкой. Более того, переходные процессы на этапе адаптивного управления или обучающего управления имеют гарантированные пределы. Блок-схема адаптивного управления с эталонной моделью представлена на рис.23.

Размещено на http://www.allbest.ru/

Рис.23 Блок-схема адаптивного управления с эталонной моделью

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

Одним из первых используемых методов построения нейросетевых СУ был метод, основанный на «копированиии» существующего контроллера. Применив этот метод в 1964 Уидроу назвал его методом построения экспертной системы за счет получения знаний от уже существующего эксперта. Архитектура такой СУ представлена на рис.21.

Размещено на http://www.allbest.ru/

Рис.24 Нейросетевая СУ, основанная на «копировании» существующего контролера

Глядя на этот рисунок 24 можно усомниться в полезности этого метода. Зачем нужно использовать еще один управляющий контроллер (в виде НС), если один уже существует. Однако, во-первых, существующий контроллер может быть неудобен при использовании (например, в роли такого контроллера может выступать человек), а во-вторых, для выработки эффективного управления НС может использовать отличную, от существующего контроллера, по способу представления (легче измерить, формализовать и т.д.) информацию о состоянии объекта управления.

В настоящее время достаточно хорошо разработан и широко используется целый ряд других возможных архитектур построения нейросетевых СУ. Во всех из них, назначением нейросетевого контроллера является выработка адекватного управляющего сигнала для управления динамикой состояний объекта управления от начального состояния до желаемого итогового состояния. Причем смена состояний должна происходить по оптимальной траектории. Организация контроля за состоянием объекта управления и реализация нейросетевого контроллера в значительной степени зависят от выбранного алгоритма обучения и используемой структуры управления. Наиболее широко используемыми являются схема прямого (непосредственного) управления и схема косвенного управления. При этом чаще всего в качестве алгоритма обучения используется алгоритм обратного распространения ошибки С. 95 Серов, В.А. Нейроуправление многокритериальными конфликтными системами [Текст]: монография / В.А. Серов, Ю.Н. Бабинцев, Н.С. Кондаков. — Москва: Изд-во Московского гуманитарного ун-та, 2011. — 135 с. .

В схеме косвенного управления параметры объекта управления определяются в каждый момент времени и затем используются для оценки параметров контроллера (рис.25). Таким образом, имеет место явно выраженный процесс идентификации.

Размещено на http://www.allbest.ru/

Рис.25 Схема косвенного управления

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

В схеме прямого управления параметры нейросетевого контроллера регулируются таким образом, чтобы уменьшить непосредственно ошибку выхода еу (рис.26).

Размещено на http://www.allbest.ru/

Рис.26 Схема прямого управления

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

Вопросы устойчивости и управляемости таких СУ подробно рассматриваются в работах.

Одной из областей теоретических исследований, рассматривающих проблемы использования НС в системах управления, является сравнение таких методов управления с другими известными типами СУ, выявление присущих нейросетевым методам особенностей и их анализ. Хотя каждый из рассмотренных методов имеет как хорошие, так и плохие характеристики следует заметить, что метод нейросетевого управления имеет такие полезные свойства, которые плохо реализуются в двух других методах.

Основные результаты, полученные при сравнении, приведены в табл.1.

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

Таблица 1 Обзор характеристик методов управления

Управление с обратной связью и регулируемыми коэффициентами

Адаптивное управление с эталонной моделью Ляпунова

Современные направления развития нейрокомпьютерных технологий в россии. Основы искусственных нейронных сетей. Применение нейрокомпьютеров в финансовой и экономической деятельности

Построение модели структуры расходов семьи.

4. Перспективы развития нейрокомпьютеров.

Многолетние усилия многих исследовательских групп привели к тому, что к настоящему моменту накоплено большое число различных «правил обучения» и архитектур нейронных сетей, их аппаратных реализаций и приёмов использования нейронных сетей для решения прикладных задач.

Эти интеллектуальные изобретения существуют в виде «зоопарка» нейронных сетей. Каждая сеть из зоопарка имеет свою архитектуру, правило обучения и решает конкретный набор задач. В последнее десятилетие прилагаются серьёзные усилия для стандартизации структурных элементов и превращений этого «зоопарка» в «технопарк»: каждая нейронная сеть из зоопарка реализована на идеальном универсальном нейрокомпьютере, имеющем заданную структуру.

Основные правила выделения функциональных компонентов идеального нейрокомпьютера (по Миркесу):

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

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

Постепенно складывается рынок нейрокомпьютеров. В настоящее время широко распространены различные высокопараллельные нейро-ускорители (сопроцессоры) для различных задач. Моделей универсальных нейрокомпьютеров на рынке мало отчасти потому, что большинство из них реализованы для спецприменений. Примерами нейрокомпьютеров являются нейрокомпьютер Synapse (Siemens, Германия), процессор NeuroMatrix. Издаётся специализированный научно-технический журнал «Нейрокомпьютеры: разработка, применение». С технической точки зрения сегодняшние нейрокомпьютеры — это вычислительные системы с параллельными потоками одинаковых команд и множественным потоком данных (MSIMD-архитектура). Это одно из основных направлений развития вычислительных систем с массовым параллелизмом.

Искусственная нейронная сеть может передаваться от (нейро)компьютера к (нейро)компьютеру, так же как и компьютерная программа. Более того, на её основе могут быть созданы специализированные быстродействующие аналоговые устройства. «Выделяются несколько уровней отчуждения нейронной сети от универсального (нейро)компьютера: от сети, обучающейся на универсальном устройстве и использующей богатые возможности в манипулировании задачником, алгоритмами обучения и модификации архитектуры, до полного отчуждения без возможностей обучения и модификации, только функционирование обученной сети.»

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

В нейрокомпьютинге постепенно созревает новое направление, основанное на соединении биологических нейронов с электронными элементами. По аналогии с Software (программное обеспечение — «мягкий продукт») и Hardware (электронное аппаратное обеспечение — «твёрдый продукт»), эти разработки получили наименование Wetware «влажный продукт».

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

(Распространено также и другое определение термина «Wetware» — человеческий компонент в системах «человек-компьютер».)

5. Заключение

Нейронные сети возникли из исследований в области искусственного интеллекта, а именно, из попыток воспроизвести способность биологических нервных систем обучаться и исправлять ошибки.

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

Естественным продолжением аппаратного и программного подхода к реализации нейрокомпьютера является программно-аппаратный подход.

Аппаратный подход связан с созданием нейрокомпьютеров в виде нейроподобных структур (нейросетей) электронно-аналогового, оптоэлектронного и оптического типов. Для таких компьютеров разрабатываются специальные СБИС (нейрочипы).

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

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

Список используемой литературы

1. Галушкин А.И. Некоторые исторические аспекты развития элементной базы вычислительных систем с массовым параллелизмом (80- и 90-е годы) // Нейрокомпьютер. 2000. № 1

2. Власов А.И. Нейросетевая реализация микропроцессорных систем активной акусто- и виброзащиты // Нейрокомпьютеры: разработка и применение. 2000. № 1.

2. История нейрокомпьютеров

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

К концу 50-х гг. сформировался логико-символьный подход к моделированию интеллекта. Его развитие создало такие направления, как эвристическое программирование и машинный интеллект, и способствовало угасанию интереса к нейронным сетям. К началу 80-х гг. были созданы условия для возрождения интереса к нейросетевым моделям. Это было связано с накоплением новых данных при экспериментальных исследованиях мозга.

К настоящему времени сформировался обширный рынок нейросетевых продуктов. Подавляющее большинство продуктов представлено в виде моделирующего программного обеспечения. Ведущие фирмы разрабатывают также и специализированные нейрочипы или нейроплаты в виде приставок персональным ЭВМ. Наиболее ярким прототипом супернейрокомпьютера является система обработки аэрокосмических изображений, разработанная в США по программе «Силиконовый мозг». Объявленная производительность супернейрокомпьютера составляет 80 PFLOPS (80∙1015 операций с плавающей точкой в 1 с) при физическом объёме, равном объёму человеческого мозга, и потребляемой мощности 20 Вт.

В июле 1992 г. в Японии была принята Пятая Программа (действующая и поныне), связанная с созданием координационного исследовательского центра по реализации международного проекта Real World Computing Partnership (RWCP), основной целью которого являлась разработка практических методов решения реальных задач на основе гибких и перспективных информационных технологий.

В настоящее время в рамках развития этого проекта создана трансконтинентальная сеть на базе гетерогенной вычислительной среды, объединяющей Суперкомпьютерный центр в Штутгарте (Германия), Компьютерный центр в Питсбурге (шт. Пенсильвания), Электротехническую лабораторию в Тшукубе (Япония), Компьютерный центр в Манчестере (Великобритания), в которой часть пользовательских компьютеров выполнена по нейросетевой технологии. Пиковая производительность образованного сверхсуперкомпьютера составила 2.2 TFLOPS.

Считается, что теория нейронных сетей, как научное направление, впервые была обозначена в классической работе МакКаллока и Питтса 1943 г., в которой утверждалось, что, в принципе, любую арифметическую или логическую функцию можно реализовать с помощью простой нейронной сети. В 1958 г. Фрэнк Розенблатт придумал нейронную сеть, названную перцептроном, и построил первый нейрокомпьютер Марк-1 . Перцептрон был предназначен для классификации объектов. На этапе обучения “учитель” сообщает перцептрону к какому классу принадлежит предъявленный объект. Обученный перцептрон способен классифицировать объекты, в том числе не использовавшиеся при обучении, делая при этом очень мало ошибок. Примерно в это же время вышла работа Минского и Пейперта, указавшая ограниченные возможности простейшего перцептрона. Результаты Минского и Пейперта погасили энтузиазм большинства исследователей, особенно тех, кто работал в области вычислительных наук.

С начала 80-х годов ИНС вновь привлекли интерес исследователей, что связано с энергетическим подходом Хопфилда и алгоритмом обратного распространения для обучения многослойного перцептрона (многослойные сети прямого распространения), впервые предложенного Вербосом . При этом важную роль сыграли работы группы PDP (Parallel Distributed Processing) . В них рассматривались нейронные сети, названные многослойными перцептронами, которые оказались весьма эффективными для решения задач распознавания, управления и предсказания. (Многослойные перцептроны занимают ведущее положение, как по разнообразию возможностей использования, так и по количеству успешно решенных прикладных задач.)

3. Преимущества нейрокомпьютеров.

По сравнению с обычными компьютерами нейрокомпьютеры обладают рядом преимуществ.

Во первых — высокое быстродействие, связанное с тем, что алгоритмы нейроинформатики обладают высокой степенью параллельности.

Во вторых — нейросистемы делаются очень устойчивыми к помехам и разрушениям.

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

4. Недостатки нейрокомпьютеров.

Несмотря на перечисленные выше преимущества эти устройства имеют ряд недостатков:

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

2. В силу своей уникальности эти устройства достаточно дорогостоящи.

5. Практическое применение нейрокомпьютеров.

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

Управление в режиме реального времени: самолетами, ракетами и технологическими процессами непрерывного производства (металлургического, химического и др.);

Распознавание образов: человеческих лиц, букв и иероглифов, сигналов радара и сонара, отпечатков пальцев в криминалистике, заболеваний по симптомам (в медицине) и местностей, где следует искать полезные ископаемые (в геологии, по косвенным признакам);

Прогнозы: погоды, курса акций (и других финансовых показателей), исхода лечения, политических событий (в частности результатов выборов), поведения противников в военном конфликте и в экономической конкуренции;

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

Этот список можно продолжать, но и сказанного достаточно для того, чтобы понять, что нейрокомпьютеры могут занять достойное место в современном обществе.

Что же представляет из себя нейрокомпьютер? Нейрокомпьютеры бывают двух типов:

1. Большие универсальные компьютеры построенные на множестве нейрочипов.

2. Нейроимитаторы, представляющие собой программы для обычных компьютеров, имитирующие работу нейронов. В основе такой программы заложен алгоритм работы нейрочипа с определенными внутренними связями. Что — то типа “Черного ящика”, по принципу которого он и работает. На вход такой программы подаются исходные данные и на основании закономерностей, связанных с принципом работы головного мозга, делаются выводы о правомерности полученных результатов.

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Электронная письменная предзащита

ЭВМ и вычислительные системы

Состояние и перспективы развития нейрокомпьютерных систем

Варакин Алексей Сергеевич

  • Введение
  • 2.2 Теория нейронных сетей
  • 2.3 Нейроматематика
  • 2.4 Прикладная нейроматематика
  • 2.5 Нейрочипы и нейрокомпьютеры
  • 2.6 Обзор зарубежных достижений нейрокомпьютерных систем
  • Заключение
  • Глоссарий
  • Список использованных источников

Введение

Актуальность исследования . Теория искусственных нейронных сетей (ИНС) благодаря фундаментальным работам зарубежных исследователей У. Мак-Каллока, У. Питтса, Ф. Розенблатта, М. Минского, Б. Уидроу, Т. Кохонена, Д. Хопфилда, С. Гроссберга, а также советских и российских ученых И.Б. Гутчина, A. C. Кузичева, Н.В. Позина, С.О. Мкртчяна, Н.М. Амосова, А.И. Галушкина, А.Н. Горбаня и др. получила широкое развитие. При этом основные направления исследований были связаны с разработкой моделей искусственных нейронов (ИН), изучением структуры и свойств различных моделей нейронных сетей, их обучением (настройкой) для решения поставленных задач и проектированием нейрокомпьютерных систем (НКС) на их основе. В настоящее время нейросетевая тематика стала междисциплинарной и. породила новые научные направления, такие как нейроинформатика, нейроматематика и др. В нашей стране и за рубежом издано большое количество монографий и учебников, посвященных основам и развитию теории ИНС и НКС, рассчитанных на максимально широкий круг читателей.

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

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

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

Объектом исследования выступают нейрокомпьютерные системы. Предметом исследования является процессы способствующих развитию нейрокомпьютерных систем.

Таким образом, целью данного исследования является исследование состояния и перспектив развития нейрокомпьютерных систем.

Основные задачи , поставленные и решенные в данной работе, следующие.

1 Теоретическое обосновать и исследовать нейрокомпьютерные системы;

2 Рассмотреть текущее состояние проблемы;

3 Определить перспективы развития нейрокомпьютерных систем.

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

1. Основы нейрокомпьютерных систем

1.1 Основы искусственных нейронных сетей

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

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

Основным элементом сети является искусственный нейрон (далее нейрон) (приложение А).

Нейроны представляют собой относительно простые, однотипные элементы, имитирующие работу нейронов мозга. Каждый нейрон характеризуется своим текущим состоянием по аналогии с нервными клетками головного мозга, которые могут быть возбуждены и заторможены. Искусственный нейрон, также как и его естественный прототип, имеет группу синапсов (входов), которые соединены с выходами других нейронов, а также аксон — выходную связь данного нейрона — откуда сигнал возбуждения или торможения поступает на синапсы других нейронов. Общий вид нейрона представлен на рис 1 С. 125 Бархатов, Н.А. Искусственные нейронные сети в задачах солнечно-земной физики [Текст]: монография / Н.А. Бархатов, С.Е. Ревунов. — Нижний Новгород: Нижегородский гос. пед. ун-т, 2010. — 407 Ч. .

нейронная сеть нейрокомпьютерная россия

Рис.1 Искусственный нейрон — простейший элемент искусственной нейронной сети

y j — сигнал, поступающий от нейрона j;

s k — скалярное произведение вектора входных сигналов и вектора весов;

f k — функция возбуждения;

y k — выходной сигнал нейрона

Каждый синапс характеризуется величиной синаптической связи или весом w i , который по своему физическому смыслу эквивалентен электрической проводимости.

Текущее состояние нейрона определяется как взвешенная сумма его входов:

где x — вход нейрона, а w — соответствующий этому входу вес.

Выход нейрона есть функция его состояния, т.е. Нелинейная функция f (s) называется активационной, сжимающей функцией или функцией возбуждения нейрона. Основные разновидности активационных функций, применяемых в нейронных сетях, представлены на рис.2.

Рис.2 Активационная функция

а) пороговая; b) полулинейная; c) сигмоидальная

В качестве активационной функции часто используется сигмоидальная (s-образная или логистическая) функция, показанная на рис.2. (приложение Б). Эта функция математически выражается по формуле

При уменьшении сигмоидальная функция становится более пологой, в пределе при =0 вырождаясь в горизонтальную линию на уровне 0,5; при увеличении сигмоидальная функция приближается по внешнему виду к функции единичного скачка с порогом T в точке x=0. Из выражения для сигмоидальной функции видно, что выходное значение нейрона лежит в диапазоне . Одно из полезных свойств сигмоидальной функции — простое выражение для ее производной, применение которого будет рассмотрено в дальнейшем:

Следует отметить, что сигмоидальная функция дифференцируема на всей оси абсцисс, что используется в некоторых алгоритмах обучения. Кроме того, сигмоидальная функция обладает свойством усиливать малые сигналы лучше, чем большие, тем самым предотвращая насыщение от больших сигналов, так как они соответствуют областям аргументов, где сигмоидальная функция имеет пологий наклон С. 98 Злобин, В.К. Нейросети и нейрокомпьютеры [Текст] / В.К. Злобин, В.Н. Ручкин. — Санкт-Петербург: БХВ-Петербург, 2011. — 252 с. .

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

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

Нейроны делятся на три типа (рис.3) в соответствии с функциями, выполняемыми ими в сети. Входные нейроны (нейроны входного слоя) принимают данные из внешней среды и определенным образом распределяют их далее по сети. На промежуточные нейроны (нейроны скрытого слоя) возлагается роль основных участников процесса решения задачи. Выходные же нейроны (нейроны выходного слоя) передают результаты работы сети во внешнюю среду (потребителю) С. 17 Малыхина, М.П. Нейросетевая экспертная система на основе прецедентов для решения проблем абонентов сотовой сети [Текст]: [монография] / М.П. Малыхина, Ю.В. Бегман. — Краснодар: Юг, 2011. — 148 с. .

Размещено на http://www.allbest.ru/

Рис.3 Типы нейронов в зависимости от их функций в сети

В зависимости от механизма обработки получаемых данных можно выделить целый ряд математических моделей нейронов (рис.4). Существует две группы моделей нейронов, которые принадлежат, соответственно, двум типам сетей: классическим и нечетким. Каждая из моделей нейронов обладает рядом присущих ей свойств, однако имеются и общие черты, к которым можно отнести наличие входного и выходного сигналов, а также блока их обработки.

Для решения конкретной задачи существует ряд наиболее предпочтительных моделей нейронов. Модель нейрона МакКаллока-Питса, сигмоидальный нейрон и нейрон типа «адалайн» имеют схожие структуры и отличаются лишь видами функций активации (реакции нейрона на входящий сигнал). Вышеприведенные модели нейронов могут обучаться только с учителем, то есть требуют наличия входного и выходного векторов (значений). Так как функция активации нейрона МакКаллока-Питса дискретна (выходной сигнал может принимать только два значения — 0 или 1), то невозможно проследить за изменением значения выхода. Достижение необходимого результата в некоторых задачах может оказаться невозможным. В этом случае более предпочтительной может являться сигмоидальная модель нейрона. Модели нейронов типа «инстар» и «оутстар Гроссберга» дополняют друг друга и отличаются от вышеуказанных трех типов нейронов тем, что могут обучаться и без учителя (имея только входной вектор) С. 114 Нейрокомпьютеры и их применение. Нейро-2007 [Текст]: материалы Международной научной молодежной школы, 24 сентября-29 сентября 2007, пос. Дивноморское, Геленджик, Россия / Российская акад. наук [и др.]; под ред.А.И. Галушкина. — Москва; Таганрог: Изд-во ТТИ ЮФУ, 2007. — 189 с. .

Нейроны типа WTA (от англ. — “победитель получает всё”) чаще всего используются в задачах классификации и распознавания данных и образов. Они, как и модели нейронов Гроссберга, в процессе обучения также не нуждаются в учителе. Однако существенным недостатком нейронов этого типа является значительно возрастающая погрешность распознавания данных вследствие наличия мертвых нейронов, которые не смогли выжить в конкурентной борьбе. Модель нейрона Хебба схожа с моделью нейрона обычной формы (вход — блок обработки — выход). Может обучаться как с учителем, так и без него. Особенностью данной модели является то, что вес связи нейрона изменяется пропорционально произведению его входного и выходного сигналов.

Размещено на http://www.allbest.ru/

Рис.4 Виды математических моделей нейронов

В стохастической модели выходное значение нейрона зависит еще и от некоторой случайной переменной, лежащей в интервале (0,1), что позволяет при подборе весов снизить до минимума среднеквадратичную погрешность. Модели нейронов нечетких сетей применяются главным образом для аппроксимации с произвольной точностью любой нелинейной функции многих переменных и используются там, где входные данные ненадежны и слабо формализованы.

Одна и та же модель нейрона в разных сетях может иметь разные функции активации (рис.5).

Размещено на http://www.allbest.ru/

Рис.5 Функции активации нейронов

Однако это высказывание справедливо не для всех типов нейронов. Так, например, персептрон может иметь только пороговую функцию активации (функция единичного скачка). Несмотря на все многообразие функций активации, наиболее распространенной является нелинейная функция активации с насыщением (сигмоидальная функция). Необходимо так же отметить, что нейроны входного слоя имеют тождественные функции активации, что позволяет им распределять полученные сигналы нейронам скрытого слоя без изменений С. 74 Осипов, Л.А. Искусственный интеллект и нейронные сети [Текст]: учебное пособие: для студентов высших учебных заведений, обучающихся по направлению подготовки 230400 — «Информационные системы и технологии» / Л.А. Осипов, С.А. Яковлев. — Санкт-Петербург: ГУАП, 2011. — 133 с. .

Совокупности нейронов образуют нейронные сети. НС различаются по архитектуре (рис.6), по типу входящих в нее нейронов (рис.7), по типу обрабатываемых ею сигналов (рис.8), по типу смены состояния нейронов в момент времени (рис.9). НС различаются так же топологией. Отметим, что статическими и динамическими НС являются однонаправленные и рекуррентные НС соответственно. Одним из отрицательных качеств динамических НС является их возможная неустойчивость при работе (приложение В).

Однородность НС (использование однотипных нейронов с единой функцией активации) в различных задачах по-разному влияет на производительность и скорость обучения НС.

Размещено на http://www.allbest.ru/

Рис.6 Обобщенная классификация нейронных сетей с точки зрения их архитектуры

Размещено на http://www.allbest.ru/

Рис.7Классификация нейронных сетей по типу входящих в нее нейронов

Размещено на http://www.allbest.ru/

Рис.8Классификация нейронных сетей по типу обрабатываемых сигналов

Размещено на http://www.allbest.ru/

Рис.9Классификация нейронных сетей по типу смены состояния в момент времени

Размещено на http://www.allbest.ru/

Рис.10 Топология (архитектура) нейронных сетей

Синхронность НС означает, что в каждый момент времени только один нейрон меняет свое состояние. Асинхронность подразумевает смену состояний у целого ряда нейронов (чаще всего — слоя). На практике большее предпочтение отдается синхронным НС.

Весьма обширна и топология (архитектура) НС, что говорит о довольно узкой направленности каждого типа НС для оптимального решения определенного круга задач. Однако для решения сложных задач наибольший интерес представляют многослойные однонаправленные (без обратных связей) и рекуррентные НС.

Размещено на http://www.allbest.ru/

Рис.11 Многослойные (слоистые) нейронные сети

Для выполнения сетью поставленной задачи ее необходимо обучить, то есть сообщить ей, каким образом она должна действовать, чтобы выдать разработчику желаемый результат. Стратегии обучения нейронных сетей представлены на рис.12. Особенностью обучения с учителем (обучение под надзором) является то, что наряду с входным вектором (значения элементов входа) априори известен и выходной вектор (соответствующие входам значения элементов выхода). Если значения выхода НС заранее не известны, то необходимо воспользоваться другой стратегией — обучение без учителя. Тогда подбор весовых коэффициентов (в этом и заключается суть обучения) осуществляется по соответствующим стратегиям обучения с использованием определенных алгоритмов С. 14 Потапов, И.В. Модели, методы и задачи прикладной теории надежности нейрокомпьютерных систем: автореферат дис. доктора технических наук: 05. 13. 15, 05. 13. 17 / Потапов Илья Викторович; [Место защиты: Сиб. гос. ун-т телекоммуникаций и информатики]. — Новосибирск, 2010. — 35 с. .

Размещено на http://www.allbest.ru/

Рис.12 Используемые типы решеток расположения нейронов в слабосвязных нейронных сетях

Для задач аппроксимации представляется целесообразным использование многослойной НС прямого распространения, либо нечеткой НС.

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

Задать НС, способную решить конкретную задачу, — это значит определить модель нейрона, топологию связей, веса связей. Нейронные сети различаются между собой меньше всего моделями нейрона, а в основном топологией связей и правилами определения весов или правилами обучения (рис.13), программирования.

Рис.13 Процесс обучения нейросети

Рис.14 Процесс применения нейросети

В настоящее время существует два подхода к решению задачи обучения НС решению задачи распознавания образов, оптимизации и т.д. Один, исторически более ранний, состоит в постепенной модификации весовых коэффициентов в процессе обучения (рис.15).

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

1.2 Алгоритм обратного распространения

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

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

Согласно методу наименьших квадратов минимизируемой целевой функцией ошибки нейронной сети является

где — реальное выходное состояние нейрона j выходного слоя n нейронной сети при подаче на ее входы p-го образа;

— идеальное (желаемое) выходное состояние этого нейрона С. 87 Павлов, А.Н. Интеллектуальные средства измерений [Электронный ресурс] / А.Н. Павлов. — Бийск: БТИ АлтГТУ, 2011. — 121 с. .

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

Где — весовой коэффициент синаптической связи, соединяющей i-й нейрон слоя n-1 с j-м нейроном слоя n, h — коэффициент скорости обучения, 0 N y .

Во-вторых, N w /N y >1000. Однако вышеприведенная оценка выполнялась для нейронных сетей с активационными функциями нейронов в виде порога, а емкость сетей с гладкими активационными функциями, обычно больше. Кроме того, фигурирующее в названии емкости прилагательное «детерминистский» означает, что полученная оценка емкости подходит абсолютно для всех возможных входных образов, которые могут быть представлены N x входами. Распределение входных образов, как правило, обладает некоторой регулярностью, что позволяет нейронной сети проводить обобщение и, таким образом, увеличивать реальную емкость. Так как распределение образов, в общем случае, заранее не известно, можно говорить о такой емкости только предположительно, но обычно она раза в два превышает емкость детерминистскую С. 74 Тарков М.С. Нейрокомпьютерные системы. — М.: Изд-во «Интернет-университет информационных технологий — ИНТУИТ. ру», 2006. — 144 c. .

Илон Маск рекомендует:  Что такое код domdocumenttype >internal_subset

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

Рис.16 Диаграмма сигналов при обучении нейронной сети по алгоритму обратного распространения

При этом каждый логический уровень — «1» и «0» — будет обозначать отдельный класс. На двух выходах можно закодировать 4 класса и так далее. Однако результаты работы нейронной сети, организованной таким образом, «под завязку», не очень надежны. Для повышения достоверности классификации желательно ввести избыточность путем выделения каждому классу одного нейрона в выходном слое или, что еще лучше, нескольких, каждый из которых обучается определять принадлежность образа к классу со своей степенью достоверности — высокой, средней или низкой, что позволит проводить классификацию входных образов, объединенных в нечеткие (размытые или пересекающиеся) множества. Это свойство приближает нейронные сети к естественному человеческому интеллекту.

Такая нейронная сеть имеет несколько ограничений. Во-первых, в процессе обучения может возникнуть ситуация, когда большие положительные или отрицательные значения весовых коэффициентов сместят рабочую точку на сигмоидальной функции многих нейронов в область насыщения. Малые величины производной от активационной функции в соответствии с (10) и (11) приведут к остановке обучения нейронной сети. Во-вторых, применение метода градиентного спуска не гарантирует, что будет найден глобальный, а не локальный минимум целевой функции. Эта проблема связана еще с одной, а именно — с выбором коэффициента скорости обучения. Доказательство сходимости обучения в процессе обратного распространения основано на производных, т.е. приращениях весов и, следовательно, скорость обучения должна быть бесконечно малой, однако в этом случае обучение будет происходить неприемлемо медленно. С другой стороны, слишком большие коррекции весов могут привести к постоянной неустойчивости процесса обучения С. 14 Трофимов, Я.А. Методы построения искусственных нейронных сетей для задач классификации на основе применения полигауссовских вероятностных моделей: автореферат дис. кандидата технических наук: 05. 13. 01 / Трофимов Ярослав Александрович. — Дубна, 2011. — 23 с. .

Поэтому, коэффициент обычно выбирается меньше 1, но не очень малым, например, 0,1, и он может постепенно уменьшаться в процессе обучения. Кроме того, для исключения случайных попаданий в локальные минимумы кратковременно можно значительно увеличить, чтобы начать градиентный спуск из новой точки. Если повторение этой процедуры несколько раз приведет алгоритм в одно и то же состояние нейронной сети, можно более или менее быть уверенным в том, что найден глобальный минимум ошибки, иногда, после того как значения весовых коэффициентов стабилизируются, кратковременно можно значительно увеличить, чтобы начать градиентный спуск из новой точки. Если повторение этой процедуры несколько раз приведет алгоритм в одно и то же состояние нейронной сети, можно более или менее быть уверенным в том, что найден глобальный минимум ошибки.

1.3 Нейронные сети Хопфилда и Хэмминга

Среди различных конфигураций искусственных нейронных сетей (НС) встречаются такие, при классификации которых по принципу обучения, строго говоря, не подходят ни обучение с учителем, ни обучение без учителя. В таких сетях весовые коэффициенты синапсов рассчитываются только однажды перед началом функционирования сети на основе информации об обрабатываемых данных, и все обучение сети сводится именно к этому расчету. С одной стороны, предъявление априорной информации можно расценивать, как помощь учителя, но с другой — сеть фактически просто запоминает образцы до того, как на ее вход поступают реальные данные, и не может изменять свое поведение, поэтому говорить о звене обратной связи с «миром» (учителем) не приходится. Из сетей с подобной логикой работы наиболее известны сеть Хопфилда и сеть Хэмминга, которые обычно используются для организации ассоциативной памяти. Далее речь пойдет именно о них С. 11 Синявский, О.Ю. Обучение спайковых нейронных сетей на основе минимизации их энтропийных характеристик в задачах анализа, запоминания и адаптивной обработки пространственно-временной информации: автореферат дис. кандидата технических наук: 05. 13. 17 / Синявский Олег Юрьевич. — Москва, 2011. — 20 с. .

Структурная схема сети Хопфилда приведена на рис.17. Она состоит из единственного слоя нейронов, число которых является одновременно числом входов и выходов сети. Каждый нейрон связан синапсами со всеми остальными нейронами, а также имеет один входной синапс, через который осуществляется ввод сигнала. Выходные сигналы, как обычно, образуются на аксонах.

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

Сеть должна уметь из произвольного неидеального сигнала, поданного на ее вход, выделить («вспомнить» по частичной информации) соответствующий образец (если такой есть) или «дать заключение» о том, что входные данные не соответствуют ни одному из образцов (приложение Г).

Рис.17 Структурная схема сети Хопфилда

В общем случае, любой сигнал может быть описан вектором, n — число нейронов в сети и размерность входных и выходных векторов. Каждый элемент x j равен либо +1, либо — 1. Обозначим вектор, описывающий k-ый образец, через Х к, а его компоненты, соответственно, — х> k=0. m-l, m — число образцов. Когда сеть распознает (или «вспомнит») какой-либо образец на основе предъявленных ей данных, ее выходы будут содержать именно его, то есть Y = Х к, где Y — вектор выходных значений сети: . В противном случае, выходной вектор не совпадет ни с одним образцовым.

Если, например, сигналы представляют собой некие изображения, то, отобразив в графическом виде данные с выхода сети, можно будет увидеть картинку, полностью совпадающую с одной из образцовых (в случае успеха) или же «вольную импровизацию» сети (в случае неудачи).

На стадии инициализации сети весовые коэффициенты синапсов устанавливаются следующим образом:

Здесь i и j — индексы, соответственно, предсинаптического и постсинаптического нейронов;

— i-ый и j-ый элементы вектора k-ого образца.

Алгоритм функционирования сети следующий (р — номер итерации):

1 На входы сети подается неизвестный сигнал. Фактически его ввод осуществляется непосредственной установкой значений аксонов:

поэтому обозначение на схеме сети входных синапсов в явном виде носит чисто условный характер.

Ноль в скобке справа от y i , означает нулевую итерацию в цикле работы сети.

2 Рассчитывается новое состояние нейронов

и новые значения аксонов

где f — активационная функция в виде скачка, приведенная на рис.18а.

Рис.18. Активные функции

3 Проверка, изменились ли выходные значения аксонов за последнюю итерацию. Если да — переход к пункту 2, иначе (если выходы застабилизировались) — конец. При этом выходной вектор представляет собой образец, наилучшим образом сочетающийся с входными данными.

Как говорилось выше, иногда сеть не может провести распознавание и выдает на выходе несуществующий образ. Это связано с проблемой ограниченности возможностей сети. Для сети Хопфилда число запоминаемых образов m не должно превышать величины, примерно равной 0.15*n. Кроме того, если два образа А и Б сильно похожи, они, возможно, будут вызывать у сети перекрестные ассоциации, то есть предъявление на входы сети вектора А приведет к появлению на ее выходах вектора Б и наоборот С. 54 Хаптахаева, Н.Б. Нейрокомпьютерные системы: курс лекций / Н.Б. Хаптахаева. — Улан-Удэ: Изд-во ВСГТУ, 2008. — 109 с. . Когда нет необходимости, чтобы сеть в явном виде выдавала образец, то есть достаточно, скажем, получать номер образца, ассоциативную память успешно реализует сеть Хэмминга.

Данная сеть характеризуется, по сравнению с сетью Хопфилда, меньшими затратами на память и объемом вычислений, что становится очевидным из ее структуры (рис. 19).

Рис. 19. Структурная схема сети Хэмминга

Сеть состоит из двух слоев. Первый и второй слои имеют по m нейронов, где m — число образцов. Нейроны первого слоя имеют по п синапсов, соединенных со входами сети (образующими фиктивный нулевой слой). Нейроны второго слоя связаны между собой ингибиторными (отрицательными обратными) синаптическими связями. Единственный синапс с положительной обратной связью для каждого нейрона соединен с его же аксоном.

Идея работы сети состоит в нахождении расстояния Хэмминга от тестируемого образа до всех образцов. Расстоянием Хэмминга называется число отличающихся битов в двух бинарных векторах. Сеть должна выбрать образец с минимальным расстоянием Хэмминга до неизвестного входного сигнала, в результате чего будет активизирован только один выход сети, соответствующий этому образцу.

На стадии инициализации весовым коэффициентам первого слоя и порогу активационной функции присваиваются следующие значения:

Здесь — i-й элемент к-ого образца. Весовые коэффициенты тормозящих синапсов во втором слое берут равными некоторой величине. Синапс нейрона, связанный с его же аксоном имеет вес +1.

Алгоритм функционирования сети Хэмминга следующий:

На входы сети подается неизвестный вектор исходя из которого рассчитываются состояния нейронов первого слоя (верхний индекс в скобках указывает номер слоя):

После этого полученными значениями инициализируются значения аксонов второго слоя:

2 Вычислить новые состояния нейронов второго слоя:

И значение аксионов

Активационная функция f имеет вид порога (рис.26), причем величина F должна быть достаточно большой, чтобы любые возможные значения аргумента не приводили к насыщению.

4 Проверить, изменились ли выходы нейронов второго слоя за последнюю итерацию. Если да — перейди к шагу 2. Иначе — конец.

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

Программная модель сети Хэмминга строится на основе набора специальных классов NeuronHN, LayerHN и NetHN — производных от классов, рассмотренных в предыдущих статьях цикла. Описания классов приведены в листинге 1. Реализации всех функций находятся в файле NEURO_HN (листинг 2). Классы NeuronHN и LayerHN наследуют большинство методов от базовых классов.

В классе NetHN определены следующие элементы:

Nin и Nout — соответственно размерность входного вектора с данными и число образцов;

d x и d y — размеры входного образа по двум координатам (для случая трехмерных образов необходимо добавить переменную dz), dx*dy должно быть равно Nin, эти переменные используются функцией загрузки данных из файла LoadNextPattern;

DX и DY — размеры выходного слоя (влияют только на отображение выходого слоя с помощью функции Show); обе пары размеров устанавливаются функцией SetDxDy;

Class — массив с данными об образцах, заполняется функцией SetClasses, эта функция выполняет общую инициализацию сети, сводящуюся к запоминанию образцовых данных.

Метод Initialize проводит дополнительную инициализацию на уровне тестируемых данных (шаг 1 алгоритма). Метод Cycle реализует шаг 2, а метод IsConverged проверят, застабилизировались ли состояния нейронов (шаг 3).

Из глобальных функций — SetSigmoidAlfaHN позволяет установить параметр F активационной функции, a SetLimitHN задает коэффициент, лежащий в пределах от нуля до единицы и определяющий долю величины 1/т, образующую с.

На листинге 3 приведена тестовая программа для проверки сети. Здесь конструируется сеть со вторым слоем из пяти нейронов, выполняющая распознавание пяти входных образов, которые представляют собой схематичные изображения букв размером 5 на 6 точек (рис. 20а). Обучение сети фактически сводится к загрузке и запоминанию идеальных изображений, записанных в файле «charh. img», приведенном на листинге 4. Затем на ее вход поочередно подаются зашумленные на 8/30 образы (рис. 20б) из файла «charhh. img» с листинга 5, которые она успешно различает.

Рис.20 Образцовые и тестовые образцы

Рис.21 Структурная схема ДАП

R проект кроме файлов NEURO_HN и NEUROHAM входят также SUBFUN и NEURO_FF. Программа тестировалась в среде Borland С++ 3.1.

Предложенные классы позволяют моделировать и более крупные сети Хэмминга. Увеличение числа и сложности распознаваемых образов ограничивается фактически только объемом ОЗУ. Следует отметить, что обучение сети Хэмминга представляет самый простой алгоритм из всех рассмотренных до настоящего времени алгоритмов в этом цикле статей. Обсуждение сетей, реализующих ассоциативную память, было бы неполным без хотя бы краткого упоминания о двунаправленной ассоциативной памяти (ДАП). Она является логичным развитием парадигмы сети Хопфилда, к которой для этого достаточно добавить второй слой. Структура ДАП представлена на рис.18. Сеть способна запоминать пары ассоциированных друг с другом образов. Пусть пары образов записываются в виде векторов и, где r — число пар. Подача на вход первого слоя некоторого вектора вызывает образование на входе второго слоя некоего другого вектора, который затем снова поступает на вход первого слоя. При каждом таком цикле вектора на выходах обоих слоев приближаются к парс образцовых векторов, первый из которых — X — наиболее походит на Р, который был подан на вход сети в самом начале, а второй — Y — ассоциирован с ним. Ассоциации между векторами кодируются в весовой матрице W (l) первого слоя. Весовая матрица второго слоя W (2) равна транспонированной первой (W (1)) T . Процесс обучения, также как и в случае сети Хопфилда, заключается в предварительном расчете элементов матрицы W (и соответственно W T) по формуле:

Эта формула является развернутой записью матричного уравнения

для частного случая, когда образы записаны в виде векторов, при этом произведение двух матриц размером соответственно и приводит к (11). В заключении можно сделать следующее обобщение. Сети Хопфилда, Хэмминга и ДАП позволяют просто и эффективно разрешить задачу воссоздания образов по неполной и искаженной информации. Невысокая емкость сетей (число запоминаемых образов) объясняется тем, что, сети не просто запоминают образы, а позволяют проводить их обобщение, например, с помощью сети Хэмминга возможна классификация по критерию максимального правдоподобия. Вместе с тем, легкость построения программных и аппаратных моделей делают эти сети привлекательными для многих применений С. 115 Ясницкий, Л.Н. Искусственный интеллект [Текст]: методическое пособие / Л.Н. Ясницкий, Ф.М. Черепанов. — Москва: Бином. Лаб. знаний, 2012. — 216 с. .

2. Современные направления развития нейрокомпьютерных технологий в России и зарубежом

2.1 Применение искусственных нейронных сетей в системах управления

В историческом плане можно утверждать, что разработка систем управления (СУ) всегда происходит поэтапно. В качестве таких этапов можно выделить:

Этап разработки концепции построения СУ;

Этап моделирования СУ, в соответствии с предлагаемой концепцией построения;

Этап анализа получаемых результатов; этап доработки (модернизации) концепции построения СУ. На протяжении всех этих этапов не прекращаются теоретические исследования, которые позволяют выбирать основные направления совершенствования первоначально сформулированной концепции построения СУ и распространять ее основные идеи на ряд смежных областей.

По аналогичной схеме происходит развитие СУ, использующих искусственные НС. Однако следует заметить, что большое количество разработанных аппаратных и программных моделей нейросетевых СУ часто опережают теоретическое понимание происходящих при этом процессов и имеющихся проблем С. 159 Потапов, И.В. Надежность нейрокомпьютерных систем. Модели и задачи: монография / И.В. Потапов. — Омск: Омский гос. технический ун-т, 2007. — 239 с. .

Необходимым этапом решения задач управления нелинейными динамическими системами является получение их адекватных математических моделей, базирующееся, как правило, на теоретическом и экспериментальном анализе свойств этих систем. Теоретический анализ процессов, происходящих в системе, позволяет получить математическое описание в виде, например, дифференциальных уравнений. При экспериментальном анализе на основе наблюдений входных и выходных сигналов системы получают либо ее параметрическую, либо непараметрическую модель. Наиболее широкое распространение получили параметрические модели, требующие решения задач структурной и параметрической идентификации и использующие ограниченное число параметров. Несмотря на огромное количество работ, многообразие видов нелинейностей не позволяет создать единую теорию идентификации нелинейных систем. Применяемый чаще всего классический подход основан на аппроксимации нелинейностей, например рядами Вольтера, Гаммерштейна, Винера, полиномами Колмогорова-Габора и др. Однако область применения таких моделей ограничена. Кроме того, дополнительные трудности получения адекватного математического описания обусловлено наличием в реальных сигналах помех С. 147 Павлов, А.Н. Интеллектуальные средства измерений [Электронный ресурс] / А.Н. Павлов. — Бийск: БТИ АлтГТУ, 2011. — 121 с. .

Одной из классических моделей СУ является модель с обратной связью с регулируемыми в реальном масштабе времени коэффициентами, например самонастраивающийся регулятор Астрома. Коэффициенты такого контроллера регулируются в течение каждого цикла управления в соответствии с оценкой параметров системы. Блок-схема управления с обратной связью и регулируемыми в реальном масштабе времени коэффициентами приведена на рис.22.

Размещено на http://www.allbest.ru/

Рис.22 Блок-схема управления с обратной связью и регулируемыми коэффициентами

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

Такая система должна быть асимптотически устойчивой, то есть управляемая система в итоге отслеживает эталонную модель с нулевой ошибкой. Более того, переходные процессы на этапе адаптивного управления или обучающего управления имеют гарантированные пределы. Блок-схема адаптивного управления с эталонной моделью представлена на рис.23.

Размещено на http://www.allbest.ru/

Рис.23 Блок-схема адаптивного управления с эталонной моделью

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

Одним из первых используемых методов построения нейросетевых СУ был метод, основанный на «копированиии» существующего контроллера. Применив этот метод в 1964 Уидроу назвал его методом построения экспертной системы за счет получения знаний от уже существующего эксперта. Архитектура такой СУ представлена на рис.21.

Размещено на http://www.allbest.ru/

Рис.24 Нейросетевая СУ, основанная на «копировании» существующего контролера

Глядя на этот рисунок 24 можно усомниться в полезности этого метода. Зачем нужно использовать еще один управляющий контроллер (в виде НС), если один уже существует. Однако, во-первых, существующий контроллер может быть неудобен при использовании (например, в роли такого контроллера может выступать человек), а во-вторых, для выработки эффективного управления НС может использовать отличную, от существующего контроллера, по способу представления (легче измерить, формализовать и т.д.) информацию о состоянии объекта управления.

В настоящее время достаточно хорошо разработан и широко используется целый ряд других возможных архитектур построения нейросетевых СУ. Во всех из них, назначением нейросетевого контроллера является выработка адекватного управляющего сигнала для управления динамикой состояний объекта управления от начального состояния до желаемого итогового состояния. Причем смена состояний должна происходить по оптимальной траектории. Организация контроля за состоянием объекта управления и реализация нейросетевого контроллера в значительной степени зависят от выбранного алгоритма обучения и используемой структуры управления. Наиболее широко используемыми являются схема прямого (непосредственного) управления и схема косвенного управления. При этом чаще всего в качестве алгоритма обучения используется алгоритм обратного распространения ошибки С. 95 Серов, В.А. Нейроуправление многокритериальными конфликтными системами [Текст]: монография / В.А. Серов, Ю.Н. Бабинцев, Н.С. Кондаков. — Москва: Изд-во Московского гуманитарного ун-та, 2011. — 135 с. .

В схеме косвенного управления параметры объекта управления определяются в каждый момент времени и затем используются для оценки параметров контроллера (рис.25). Таким образом, имеет место явно выраженный процесс идентификации.

Размещено на http://www.allbest.ru/

Рис.25 Схема косвенного управления

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

В схеме прямого управления параметры нейросетевого контроллера регулируются таким образом, чтобы уменьшить непосредственно ошибку выхода е у (рис.26).

Размещено на http://www.allbest.ru/

Рис.26 Схема прямого управления

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

Вопросы устойчивости и управляемости таких СУ подробно рассматриваются в работах.

Одной из областей теоретических исследований, рассматривающих проблемы использования НС в системах управления, является сравнение таких методов управления с другими известными типами СУ, выявление присущих нейросетевым методам особенностей и их анализ. Хотя каждый из рассмотренных методов имеет как хорошие, так и плохие характеристики следует заметить, что метод нейросетевого управления имеет такие полезные свойства, которые плохо реализуются в двух других методах.

Основные результаты, полученные при сравнении, приведены в табл.1.

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

Таблица 1 Обзор характеристик методов управления

Управление с обратной связью и регулируемыми коэффициентами

Адаптивное управление с эталонной моделью Ляпунова

Как работает нейронная сеть: алгоритмы, обучение, функции активации и потери

Нейронная сеть — попытка с помощью математических моделей воспроизвести работу человеческого мозга для создания машин, обладающих искусственным интеллектом.

Искусственная нейронная сеть обычно обучается с учителем. Это означает наличие обучающего набора (датасета), который содержит примеры с истинными значениями: тегами, классами, показателями.

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

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

Раньше люди генерировали признаки вручную. Чем больше признаков и точнее подобраны веса, тем точнее ответ. Нейронная сеть автоматизировала этот процесс.

Искусственная нейронная сеть состоит из трех компонентов:

  • Входной слой;
  • Скрытые (вычислительные) слои;
  • Выходной слой.

Обучение нейросетей происходит в два этапа:

  • Прямое распространение ошибки;
  • Обратное распространение ошибки.

Во время прямого распространения ошибки делается предсказание ответа. При обратном распространении ошибка между фактическим ответом и предсказанным минимизируется.

Прямое распространение ошибки

Зададим начальные веса случайным образом:

Умножим входные данные на веса для формирования скрытого слоя:

  • h1 = (x1 * w1) + (x2 * w1)
  • h2 = (x1 * w2) + (x2 * w2)
  • h3 = (x1 * w3) + (x2 * w3)

Выходные данные из скрытого слоя передается через нелинейную функцию (функцию активации), для получения выхода сети:

Обратное распространение

  • Суммарная ошибка (total_error) вычисляется как разность между ожидаемым значением «y» (из обучающего набора) и полученным значением «y_» (посчитанное на этапе прямого распространения ошибки), проходящих через функцию потерь (cost function).
  • Частная производная ошибки вычисляется по каждому весу (эти частные дифференциалы отражают вклад каждого веса в общую ошибку (total_loss)).
  • Затем эти дифференциалы умножаются на число, называемое скорость обучения или learning rate (η).

Полученный результат затем вычитается из соответствующих весов.

В результате получатся следующие обновленные веса:

  • w1 = w1 — (η * ∂(err) / ∂(w1))
  • w2 = w2 — (η * ∂(err) / ∂(w2))
  • w3 = w3 — (η * ∂(err) / ∂(w3))

То, что мы предполагаем и инициализируем веса случайным образом, и они будут давать точные ответы, звучит не вполне обоснованно, тем не менее, работает хорошо.

Популярный мем о том, как Карлсон стал Data Science разработчиком

Если вы знакомы с рядами Тейлора, обратное распространение ошибки имеет такой же конечный результат. Только вместо бесконечного ряда мы пытаемся оптимизировать только его первый член.

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

Частные производные

Частные производные можно вычислить, поэтому известно, какой был вклад в ошибку по каждому весу. Необходимость производных очевидна. Представьте нейронную сеть, пытающуюся найти оптимальную скорость беспилотного автомобиля. Eсли машина обнаружит, что она едет быстрее или медленнее требуемой скорости, нейронная сеть будет менять скорость, ускоряя или замедляя автомобиль. Что при этом ускоряется/замедляется? Производные скорости.

Разберем необходимость частных производных на примере.

Предположим, детей попросили бросить дротик в мишень, целясь в центр. Вот результаты:

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

Ошибка нескольких детей может уменьшиться, но общая ошибка все еще увеличивается.

Найдя частные производные, мы узнаем ошибки, соответствующие каждому весу в отдельности. Если выборочно исправить веса, можно получить следующее:

Гиперпараметры

Нейронная сеть используется для автоматизации отбора признаков, но некоторые параметры настраиваются вручную.

Скорость обучения (learning rate)

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

С другой стороны, если скорость обучения слишком высока, то сеть очень быстро выдаст ответы. Получится следующее:

Функция активации (activation function)

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

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

Функция потери (loss function)

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

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

Функция потерь одномерна и не является вектором, поскольку она оценивает, насколько хорошо нейронная сеть работает в целом.

Некоторые известные функции потерь:

  • Квадратичная (среднеквадратичное отклонение);
  • Кросс-энтропия;
  • Экспоненциальная (AdaBoost);
  • Расстояние Кульбака — Лейблера или прирост информации.

Cреднеквадратичное отклонение – самая простая фукция потерь и наиболее часто используемая. Она задается следующим образом:

Функция потерь в нейронной сети должна удовлетворять двум условиям:

  • Функция потерь должна быть записана как среднее;
  • Функция потерь не должна зависеть от каких-либо активационных значений нейронной сети, кроме значений, выдаваемых на выходе.

Глубокие нейронные сети

Глубокое обучение (deep learning) – это класс алгоритмов машинного обучения, которые учатся глубже (более абстрактно) понимать данные. Популярные алгоритмы нейронных сетей глубокого обучения представлены на схеме ниже.

Популярные алгоритмы нейронных сетей (http://www.asimovinstitute.org/neural-network-zoo)

Более формально в deep learning:

  • Используется каскад (пайплайн, как последовательно передаваемый поток) из множества обрабатывающих слоев (нелинейных) для извлечения и преобразования признаков;
  • Основывается на изучении признаков (представлении информации) в данных без обучения с учителем. Функции более высокого уровня (которые находятся в последних слоях) получаются из функций нижнего уровня (которые находятся в слоях начальных слоях);
  • Изучает многоуровневые представления, которые соответствуют разным уровням абстракции; уровни образуют иерархию представления.

Пример

Рассмотрим однослойную нейронную сеть:

Здесь, обучается первый слой (зеленые нейроны), он просто передается на выход.

В то время как в случае двухслойной нейронной сети, независимо от того, как обучается зеленый скрытый слой, он затем передается на синий скрытый слой, где продолжает обучаться:

Следовательно, чем больше число скрытых слоев, тем больше возможности обучения сети.

Не следует путать с широкой нейронной сетью.

В этом случае большое число нейронов в одном слое не приводит к глубокому пониманию данных. Но это приводит к изучению большего числа признаков.

Изучая английскую грамматику, требуется знать огромное число понятий. В этом случае однослойная широкая нейронная сеть работает намного лучше, чем глубокая нейронная сеть, которая значительно меньше.

В случае изучения преобразования Фурье, ученик (нейронная сеть) должен быть глубоким, потому что не так много понятий, которые нужно знать, но каждое из них достаточно сложное и требует глубокого понимания.

Главное — баланс

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

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

Проклятье размерности

Проклятие размерности относится к различным явлениям, возникающим при анализе и организации данных в многомерных пространствах (часто с сотнями или тысячами измерений), и не встречается в ситуациях с низкой размерностью.

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

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

Компромисс

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

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

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

Следовательно, как правило, невозможно иметь маленькое смещение и маленькую дисперсию одновременно.

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

Введение в искусственные нейронные сети

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

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

Интеллектуальные системы на основе искусственных нейронных сетей (ИНС) позволяют с успехом решать проблемы распознавания образов, выполнения прогнозов, оптимизации, ассоциативной памяти и управления. Известны и иные, более традиционные подходы к решению этих проблем, однако они не обладают необходимой гибкостью за пределами ограниченных условий. ИНС дают многообещающие альтернативные решения, и многие приложения выигрывают от их использования. Данная статья является введением в современную проблематику ИНС и содержит обсуждение причин их стремительного развития. Здесь описаны также основные принципы работы биологического нейрона и его искусственной вычислительной модели. Несколько слов будет сказано о нейросетевых архитектурах и процессах обучения ИНС. Венчает статью знакомство с проблемой распознавания текста — наиболее успешной реализацией ИНС.

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

  • массовый параллелизм;
  • распределенное представление информации и вычисления;
  • способность к обучению и способность к обобщению;
  • адаптивность;
  • свойство контекстуальной обработки информации;
  • толерантность к ошибкам;
  • низкое энергопотребление.

Можно предположить, что приборы, построенные на тех же принципах, что и биологические нейроны, будут обладать перечисленными характеристиками.

От биологических сетей к ИНС

Современные цифровые вычислительные машины превосходят человека по способности производить числовые и символьные вычисления. Однако человек может без усилий решать сложные задачи восприятия внешних данных (например, узнавание человека в толпе только по его промелькнувшему лицу) с такой скоростью и точностью, что мощнейший в мире компьютер по сравнению с ним кажется безнадежным тугодумом. В чем причина столь значительного различия в их производительности? Архитектура биологической нейронной системы совершенно не похожа на архитектуру машины фон Неймана (Таблица 1), существенно влияет на типы функций, которые более эффективно исполняются каждой моделью.

Таблица 1. Машина фон Неймана по сравнению с биологической нейронной системой

Машина фон Неймана <>Биологическая нейронная система
Процессор Сложный Простой
Высокоскоростной Низкоскоростной
Один или несколько Большое количество
Память Отделена от процессора Интегрирована в процессор
Локализована Распределенная
Адресация не по содержанию Адресация по содержанию
Вычисления Централизованные Распределенные
Последовательные Параллельные
Хранимые программы Самообучение
Надежность Высокая уязвимость Живучесть
Специализация Численные и символьные oперации Проблемы восприятия
Среда функционирования Строго определенная Плохо определенная
Строго ограниченная Без ограничений

Подобно биологической нейронной системе ИНС является вычислительной системой с огромным числом параллельно функционирующих простых процессоров с множеством связей. Модели ИНС в некоторой степени воспроизводят «организационные» принципы, свойственные мозгу человека. Моделирование биологической нейронной системы с использованием ИНС может также способствовать лучшему пониманию биологических функций. Такие технологии производства, как VLSI (сверхвысокий уровень интеграции) и оптические аппаратные средства, делают возможным подобное моделирование.

Глубокое изучение ИНС требует знания нейрофизиологии, науки о познании, психологии, физики (статистической механики), теории управления, теории вычислений, проблем искусственного интеллекта, статистики/математики, распознавания образов, компьютерного зрения, параллельных вычислений и аппаратных средств (цифровых/аналоговых/VLSI/оптических). С другой стороны, ИНС также стимулируют эти дисциплины, обеспечивая их новыми инструментами и представлениями. Этот симбиоз жизненно необходим для исследований по нейронным сетям.

Представим некоторые проблемы, решаемые в контексте ИНС и представляющие интерес для ученых и инженеров.

Классификация образов. Задача состоит в указании принадлежности входного образа (например, речевого сигнала или рукописного символа), представленного вектором признаков, одному или нескольким предварительно определенным классам. К известным приложениям относятся распознавание букв, распознавание речи, классификация сигнала электрокардиограммы, классификация клеток крови.

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

Аппроксимация функций. Предположим, что имеется обучающая выборка ((x 1 ,y 1 ), (x 2 ,y 2 ). (x n ,y n )) (пары данных вход-выход), которая генерируется неизвестной функцией (x), искаженной шумом. Задача аппроксимации состоит в нахождении оценки неизвестной функции (x). Аппроксимация функций необходима при решении многочисленных инженерных и научных задач моделирования.

Предсказание/прогноз. Пусть заданы n дискретных отсчетов 1 ), y(t 2 ). y(t n )> в последовательные моменты времени t 1 , t 2 . t n . Задача состоит в предсказании значения y(t n+1 ) в некоторый будущий момент времени t n+1 . Предсказание/прогноз имеют значительное влияние на принятие решений в бизнесе, науке и технике. Предсказание цен на фондовой бирже и прогноз погоды являются типичными приложениями техники предсказания/прогноза.

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

Память, адресуемая по содержанию. В модели вычислений фон Неймана обращение к памяти доступно только посредством адреса, который не зависит от содержания памяти. Более того, если допущена ошибка в вычислении адреса, то может быть найдена совершенно иная информация. Ассоциативная память, или память, адресуемая по содержанию, доступна по указанию заданного содержания. Содержимое памяти может быть вызвано даже по частичному входу или искаженному содержанию. Ассоциативная память чрезвычайно желательна при создании мультимедийных информационных баз данных.

Управление. Рассмотрим динамическую систему, заданную совокупностью , где u(t) является входным управляющим воздействием, а y(t) — выходом системы в момент времени t. В системах управления с эталонной моделью целью управления является расчет такого входного воздействия u(t), при котором система следует по желаемой траектории, диктуемой эталонной моделью. Примером является оптимальное управление двигателем.

Илон Маск рекомендует:  Что такое код is_object

Краткий исторический обзор

Исследования в области ИНС пережили три периода активизации. Первый пик в 40-х годах обусловлен пионерской работой МакКаллока и Питтса [4]. Второй возник в 60-х благодаря теореме сходимости перцептрона Розенблатта [5] и работе Минского и Пейперта [6], указавшей ограниченные возможности простейшего перцептрона. Результаты Минского и Пейперта погасили энтузиазм большинства исследователей, особенно тех, кто работал в области вычислительных наук. Возникшее в исследованиях по нейронным сетям затишье продлилось почти 20 лет. С начала 80-х годов ИНС вновь привлекли интерес исследователей, что связано с энергетическим подходом Хопфилда [7] и алгоритмом обратного распространения для обучения многослойного перцептрона (многослойные сети прямого распространения), впервые предложенного Вербосом [8] и независимо разработанного рядом других авторов. Алгоритм получил известность благодаря Румельхарту [9] в 1986году Андерсон и Розенфельд [10] подготовили подробную историческую справку о развитии ИНС.

Биологические нейронные сети

Нейрон (нервная клетка) является особой биологической клеткой, которая обрабатывает информацию (рис. 1). Она состоит из тела клетки (cell body), или сомы (soma), и двух типов внешних древоподобных ветвей: аксона (axon) и дендритов (dendrites). Тело клетки включает ядро (nucleus), которое содержит информацию о наследственных свойствах, и плазму, обладающую молекулярными средствами для производства необходимых нейрону материалов. Нейрон получает сигналы (импульсы) от других нейронов через дендриты (приемники) и передает сигналы, сгенерированные телом клетки, вдоль аксона (передатчик), который в конце разветвляется на волокна (strands). На окончаниях этих волокон находятся синапсы (synapses).

Рис. 1. Схема биологического нейрона

Синапс является элементарной структурой и функциональным узлом между двумя нейронами (волокно аксона одного нейрона и дендрит другого). Когда импульс достигает синаптического окончания, высвобождаются определенные химические вещества, называемые нейротрансмиттерами. Нейротрансмиттеры диффундируют через синаптическую щель, возбуждая или затормаживая, в зависимости от типа синапса, способность нейрона-приемника генерировать электрические импульсы. Результативность синапса может настраиваться проходящими через него сигналами, так что синапсы могут обучаться в зависимости от активности процессов, в которых они участвуют. Эта зависимость от предыстории действует как память, которая, возможно, ответственна за память человека.

Кора головного мозга человека является протяженной, образованной нейронами поверхностью толщиной от 2 до 3 мм с площадью около 2200 см 2 , что вдвое превышает площадь поверхности стандартной клавиатуры. Кора головного мозга содержит около 1011 нейронов, что приблизительно равно числу звезд Млечного пути [11]. Каждый нейрон связан с 103 — 104 другими нейронами. В целом мозг человека содержит приблизительно от 1014 до 1015 взаимосвязей.

Нейроны взаимодействуют посредством короткой серии импульсов, как правило, продолжительностью несколько мсек. Сообщение передается посредством частотно-импульсной модуляции. Частота может изменяться от нескольких единиц до сотен герц, что в миллион раз медленнее, чем самые быстродействующие переключательные электронные схемы. Тем не менее сложные решения по восприятию информации, как, например, распознавание лица, человек принимает за несколько сотен мс. Эти решения контролируются сетью нейронов, которые имеют скорость выполнения операций всего несколько мс. Это означает, что вычисления требуют не более 100 последовательных стадий. Другими словами, для таких сложных задач мозг «запускает» параллельные программы, содержащие около 100 шагов. Это известно как правило ста шагов [12]. Рассуждая аналогичным образом, можно обнаружить, что количество информации, посылаемое от одного нейрона другому, должно быть очень маленьким (несколько бит). Отсюда следует, что основная информация не передается непосредственно, а захватывается и распределяется в связях между нейронами. Этим объясняется такое название, как коннекционистская модель, применяемое к ИНС.

Основные понятия

Модель технического нейрона

МакКаллок и Питтс [4] предложили использовать бинарный пороговый элемент в качестве модели искусственного нейрона. Этот математический нейрон вычисляет взвешенную сумму n входных сигналов x j , j = 1, 2. n, и формирует на выходе сигнал величины 1, если эта сумма превышает определенный порог u, и 0 — в противном случае.

Часто удобно рассматривать u как весовой коэффициент, связанный с постоянным входом x = 1. Положительные веса соответствуют возбуждающим связям, а отрицательные — тормозным. МакКаллок и Питтс доказали, что при соответствующим образом подобранных весах совокупность параллельно функционирующих нейронов подобного типа способна выполнять универсальные вычисления. Здесь наблюдается определенная аналогия с биологическим нейроном: передачу сигнала и взаимосвязи имитируют аксоны и дендриты, веса связей соответствуют синапсам, а пороговая функция отражает активность сомы.

Архитектура нейронной сети

ИНС может рассматриваться как направленный граф со взвешенными связями, в котором искусственные нейроны являются узлами. По архитектуре связей ИНС могут быть сгруппированы в два класса (рис. 2): сети прямого распространения, в которых графы не имеют петель, и рекуррентные сети, или сети с обратными связями.

Рис. 2. Систематизация архитектур сетей прямого распространения и рекуррентных (с обратной связью)

В наиболее распространенном семействе сетей первого класса, называемых многослойным перцептроном, нейроны расположены слоями и имеют однонаправленные связи между слоями. На рис. 2 представлены типовые сети каждого класса. Сети прямого распространения являются статическими в том смысле, что на заданный вход они вырабатывают одну совокупность выходных значений, не зависящих от предыдущего состояния сети. Рекуррентные сети являются динамическими, так как в силу обратных связей в них модифицируются входы нейронов, что приводит к изменению состояния сети.

Обучение

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

Для конструирования процесса обучения, прежде всего, необходимо иметь модель внешней среды, в которой функционирует нейронная сеть — знать доступную для сети информацию. Эта модель определяет парадигму обучения [3]. Во-вторых, необходимо понять, как модифицировать весовые параметры сети — какие правила обучения управляют процессом настройки. Алгоритм обучения означает процедуру, в которой используются правила обучения для настройки весов.

Существуют три парадигмы обучения: «с учителем», «без учителя» (самообучение) и смешанная. В первом случае нейронная сеть располагает правильными ответами (выходами сети) на каждый входной пример. Веса настраиваются так, чтобы сеть производила ответы как можно более близкие к известным правильным ответам. Усиленный вариант обучения с учителем предполагает, что известна только критическая оценка правильности выхода нейронной сети, но не сами правильные значения выхода. Обучение без учителя не требует знания правильных ответов на каждый пример обучающей выборки. В этом случае раскрывается внутренняя структура данных или корреляции между образцами в системе данных, что позволяет распределить образцы по категориям. При смешанном обучении часть весов определяется посредством обучения с учителем, в то время как остальная получается с помощью самообучения.

Теория обучения рассматривает три фундаментальных свойства, связанных с обучением по примерам: емкость, сложность образцов и вычислительная сложность. Под емкостью понимается, сколько образцов может запомнить сеть, и какие функции и границы принятия решений могут быть на ней сформированы. Сложность образцов определяет число обучающих примеров, необходимых для достижения способности сети к обобщению. Слишком малое число примеров может вызвать «переобученность» сети, когда она хорошо функционирует на примерах обучающей выборки, но плохо — на тестовых примерах, подчиненных тому же статистическому распределению. Известны 4 основных типа правил обучения: коррекция по ошибке, машина Больцмана, правило Хебба и обучение методом соревнования.

Правило коррекции по ошибке. При обучении с учителем для каждого входного примера задан желаемый выход d. Реальный выход сети y может не совпадать с желаемым. Принцип коррекции по ошибке при обучении состоит в использовании сигнала (d-y) для модификации весов, обеспечивающей постепенное уменьшение ошибки. Обучение имеет место только в случае, когда перцептрон ошибается. Известны различные модификации этого алгоритма обучения [2].

Обучение Больцмана. Представляет собой стохастическое правило обучения, которое следует из информационных теоретических и термодинамических принципов [10]. Целью обучения Больцмана является такая настройка весовых коэффициентов, при которой состояния видимых нейронов удовлетворяют желаемому распределению вероятностей. Обучение Больцмана может рассматриваться как специальный случай коррекции по ошибке, в котором под ошибкой понимается расхождение корреляций состояний в двух режимах .

Правило Хебба. Самым старым обучающим правилом является постулат обучения Хебба [13]. Хебб опирался на следующие нейрофизиологические наблюдения: если нейроны с обеих сторон синапса активизируются одновременно и регулярно, то сила синаптической связи возрастает. Важной особенностью этого правила является то, что изменение синаптического веса зависит только от активности нейронов, которые связаны данным синапсом. Это существенно упрощает цепи обучения в реализации VLSI.

Обучение методом соревнования. В отличие от обучения Хебба, в котором множество выходных нейронов могут возбуждаться одновременно, при соревновательном обучении выходные нейроны соревнуются между собой за активизацию. Это явление известно как правило «победитель берет все». Подобное обучение имеет место в биологических нейронных сетях. Обучение посредством соревнования позволяет кластеризовать входные данные: подобные примеры группируются сетью в соответствии с корреляциями и представляются одним элементом.

При обучении модифицируются только веса «победившего» нейрона. Эффект этого правила достигается за счет такого изменения сохраненного в сети образца (вектора весов связей победившего нейрона), при котором он становится чуть ближе ко входному примеру. На рис. 3 дана геометрическая иллюстрация обучения методом соревнования. Входные векторы нормализованы и представлены точками на поверхности сферы. Векторы весов для трех нейронов инициализированы случайными значениями. Их начальные и конечные значения после обучения отмечены Х на рис. 3а и 3б соответственно. Каждая из трех групп примеров обнаружена одним из выходных нейронов, чей весовой вектор настроился на центр тяжести обнаруженной группы.

Рис. 3. Пример обучения методом соревнования: (а) перед обучением; (б) после обучения

Можно заметить, что сеть никогда не перестанет обучаться, если параметр скорости обучения не равен 0. Некоторый входной образец может активизировать другой выходной нейрон на последующих итерациях в процессе обучения. Это ставит вопрос об устойчивости обучающей системы. Система считается устойчивой, если ни один из примеров обучающей выборки не изменяет своей принадлежности к категории после конечного числа итераций обучающего процесса. Один из способов достижения стабильности состоит в постепенном уменьшении до 0 параметра скорости обучения. Однако это искусственное торможение обучения вызывает другую проблему, называемую пластичностью и связанную со способностью к адаптации к новым данным. Эти особенности обучения методом соревнования известны под названием дилеммы стабильности-пластичности Гроссберга.

В Таблице 2 представлены различные алгоритмы обучения и связанные с ними архитектуры сетей (список не является исчерпывающим). В последней колонке перечислены задачи, для которых может быть применен каждый алгоритм. Каждый алгоритм обучения ориентирован на сеть определенной архитектуры и предназначен для ограниченного класса задач. Кроме рассмотренных, следует упомянуть некоторые другие алгоритмы: Adaline и Madaline [14], линейный дискриминантный анализ [15], проекции Саммона [15], анализ главных компонентов [2].

Таблица 2. Известные алгоритмы обучения

Парадигма Обучающее правило Архитектура Алгоритм обучения Задача
С учителем Коррекция ошибки Однослойный и многослойный перцептрон Алгоритмы обучения перцептрона
Обратное распространение
Adaline и Madaline
Классификация образов
Аппроксимация функций
Предскащание, управление
Больцман Рекуррентная Алгоритм обучения Больцмана Классификация образов
Хебб Многослойная прямого распространения Линейный дискриминантный анализ Анализ данных
Классификация образов
Соревнование Соревнование Векторное квантование Категоризация внутри класса Сжатие данных
Сеть ART ARTMap Классификация образов
Без учителя Коррекция ошибки Многослойная прямого распространения Проекция Саммона Категоризация внутри класса Анализ данных
Хебб Прямого распространения или соревнование Анализ главных компонентов Анализ данных
Сжатие данных
Сеть Хопфилда Обучение ассоциативной памяти Ассоциативная память
Соревнование Соревнование Векторное квантование Категоризация
Сжатие данных
SOM Кохонена SOM Кохонена Категоризация
Анализ данных
Сети ART ART1, ART2 Категоризация
Смешанная Коррекция ошибки и соревнование Сеть RBF Алгоритм обучения RBF Классификация образов
Аппроксимация функций
Предсказание, управление

Многослойные сети прямого распространения

Стандартная L-слойная сеть прямого распространения состоит из слоя входных узлов (будем придерживаться утверждения, что он не включается в сеть в качестве самостоятельного слоя), (L-1) скрытых слоев и выходного слоя, соединенных последовательно в прямом направлении и не содержащих связей между элементами внутри слоя и обратных связей между слоями. На рис. 4 приведена структура трехслойной сети.

Рис. 4. Типовая архитектура трехслойной сети прямого распространения

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

Наиболее популярный класс многослойных сетей прямого распространения образуют многослойные перцептроны, в которых каждый вычислительный элемент использует пороговую или сигмоидальную функцию активации. Многослойный перцептрон может формировать сколь угодно сложные границы принятия решения и реализовывать произвольные булевы функции [6]. Разработка алгоритма обратного распространения для определения весов в многослойном перцептроне сделала эти сети наиболее популярными у исследователей и пользователей нейронных сетей. Геометрическая интерпретация [14] объясняет роль элементов скрытых слоев (используется пороговая активационная функция).

RBF-сети

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

Существуют различные алгоритмы обучения RBF-сетей [3]. Основной алгоритм использует двушаговую стратегию обучения, или смешанное обучение. Он оценивает позицию и ширину ядра с использованием алгоритма кластеризации «без учителя», а затем алгоритм минимизации среднеквадратической ошибки «с учителем» для определения весов связей между скрытым и выходным слоями. Поскольку выходные элементы линейны, применяется неитерационный алгоритм. После получения этого начального приближения используется градиентный спуск для уточнения параметров сети.

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

Нерешенные проблемы

Существует множество спорных вопросов при проектировании сетей прямого распространения — например, сколько слоев необходимы для данной задачи, сколько следует выбрать элементов в каждом слое, как сеть будет реагировать на данные, не включенные в обучающую выборку (какова способность сети к обобщению), и какой размер обучающей выборки необходим для достижения «хорошей» способности сети к обобщению.

Хотя многослойные сети прямого распространения широко применяются для классификации и аппроксимации функций [2], многие параметры еще должны быть определены путем проб и ошибок. Существующие теоретические результаты дают лишь слабые ориентиры для выбора этих параметров в практических приложениях.

Самоорганизующиеся карты Кохонена

Самоорганизующиеся карты Кохонена (SOM) [16] обладают благоприятным свойством сохранения топологии, которое воспроизводит важный аспект карт признаков в коре головного мозга высокоорганизованных животных. В отображении с сохранением топологии близкие входные примеры возбуждают близкие выходные элементы. На рис. 2 показана основная архитектура сети SOM Кохонена. По существу она представляет собой двумерный массив элементов, причем каждый элемент связан со всеми n входными узлами.

Такая сеть является специальным случаем сети, обучающейся методом соревнования, в которой определяется пространственная окрестность для каждого выходного элемента. Локальная окрестность может быть квадратом, прямоугольником или окружностью. Начальный размер окрестности часто устанавливается в пределах от 1/2 до 2/3 размера сети и сокращается согласно определенному закону (например, по экспоненциально убывающей зависимости). Во время обучения модифицируются все веса, связанные с победителем и его соседними элементами.

Самоорганизующиеся карты (сети) Кохонена могут быть использованы для проектирования многомерных данных, аппроксимации плотности и кластеризации. Эта сеть успешно применялась для распознавания речи, обработки изображений, в робототехнике и в задачах управления [2]. Параметры сети включают в себя размерность массива нейронов, число нейронов в каждом измерении, форму окрестности, закон сжатия окрестности и скорость обучения.

Модели теории адаптивного резонанса

Напомним, что дилемма стабильности-пластичности является важной особенностью обучения методом соревнования. Как обучать новым явлениям (пластичность) и в то же время сохранить стабильность, чтобы существующие знания не были стерты или разрушены?

Карпентер и Гроссберг, разработавшие модели теории адаптивного резонанса (ART1, ART2 и ARTMAP) [17], сделали попытку решить эту дилемму. Сеть имеет достаточное число выходных элементов, но они не используются до тех пор, пока не возникнет в этом необходимость. Будем говорить, что элемент распределен (не распределен), если он используется (не используется). Обучающий алгоритм корректирует имеющийся прототип категории, только если входной вектор в достаточной степени ему подобен. В этом случае они резонируют. Степень подобия контролируется параметром сходства k, 0

Рис. 5. Сеть ART1

Направленный сверху вниз весовой вектор w j соответствует элементу j входного слоя, а направленный снизу вверх весовой вектор i связан с выходным элементом i; i является нормализованной версией w i . Векторы w j сохраняют прототипы кластеров. Роль нормализации состоит в том, чтобы предотвратить доминирование векторов с большой длиной над векторами с малой длиной. Сигнал сброса R генерируется только тогда, когда подобие ниже заданного уровня.

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

Сеть Хопфилда

Хопфилд использовал функцию энергии как инструмент для построения рекуррентных сетей и для понимания их динамики [7]. Формализация Хопфилда сделала ясным принцип хранения информации как динамически устойчивых аттракторов и популяризовала использование рекуррентных сетей для ассоциативной памяти и для решения комбинаторных задач оптимизации.

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

Ассоциативная память

Если хранимые в сети образцы являются аттракторами, она может использоваться как ассоциативная память. Любой пример, находящийся в области притяжения хранимого образца, может быть использован как указатель для его восстановления.

Ассоциативная память обычно работает в двух режимах: хранения и восстановления. В режиме хранения веса связей в сети определяются так, чтобы аттракторы запомнили набор p n-мерных образцов 1 , x 2 . x p ), которые должны быть сохранены. Во втором режиме входной пример используется как начальное состояние сети, и далее сеть эволюционирует согласно своей динамике. Выходной образец устанавливается, когда сеть достигает равновесия.

Сколько примеров могут быть сохранены в сети с n бинарными элементами? Другими словами, какова емкость памяти сети? Она конечна, так как сеть с n бинарными элементами имеет максимально 2n различных состояний, и не все из них являются аттракторами. Более того, не все аттракторы могут хранить полезные образцы. Ложные аттракторы могут также хранить образцы, но они отличаются от примеров обучающей выборки. Показано, что максимальное число случайных образцов, которые может хранить сеть Хопфилда, составляет Pmax ( 0.15 n. Когда число сохраняемых образцов p ( 0.15 n, достигается наиболее успешный вызов данных из памяти. Если запоминаемые образцы представлены ортогональными векторами (в отличие от случайных), то количество сохраненных в памяти образцов будет увеличиваться. Число ложных аттракторов возрастает, когда p достигает емкости сети. Несколько правил обучения предложено для увеличения емкости памяти сети Хопфилда [2]. Заметим, что в сети для хранения p n-битных примеров требуется реализовать 2n связей.

Минимизация энергии

Сеть Хопфилда эволюционирует в направлении уменьшения своей энергии. Это позволяет решать комбинаторные задачи оптимизации, если они могут быть сформулированы как задачи минимизации энергии. В частности, подобным способом может быть сформулирована задача коммивояжера.

Приложения

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

Система OCR

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

Схемы вычислений

На рис. 6 представлены две основные схемы использования ИНС в OCR системах. Первая выполняет явное извлечение характерных признаков (не обязательно на нейронной сети). Например, это могут быть признаки обхода по контуру. Выделенные признаки подаются на вход многослойной сети прямого распространения [19]. Эта схема отличается гибкостью в отношении использования большого разнообразия признаков. Другая схема не предусматривает явного выделения признаков из исходных данных. Извлечение признаков происходит неявно в скрытых слоях ИНС. Удобство этой схемы состоит в том, что выделение признаков и классификация объединены и обучение происходит одновременно, что дает оптимальный результат классификации. Однако схема требует большего размера сети, чем в первом случае.

Рис. 6. Две схемы применения ИНС в системах OCR

Типичный пример подобной интегрированной схемы рассмотрен Куном [20] для распознавания zip-кода.

Результаты

ИНС очень эффективно применяются в OCR-приложениях. Однако, нет убедительных доказательств их превосходства над соответствующими статистическими классификаторами. На первой конференции по OCR-системам в 1992 г. [18] более 40 систем распознавания рукописного текста были сопоставлены для одних и тех же данных. Из них 10 лучших использовали вариант многослойной сети прямого распространения или классификатор «ближайшего соседа». ИНС имеют тенденцию к превосходству по скорости и требуемой памяти по сравнению с методом «ближайшего соседа», в отличие от которого скорость классификации с применением ИНС не зависит от объема обучающей выборки. Точность распознавания лучших OCR-систем на базе данных предварительно сегментированных символов составила около 98% для цифр, 96% для заглавных букв и 87 — для строчных. (Низкая точность для строчных букв вызвана в значительной степени тем, что тестовые данные существенно отличались от тренировочных.) По данным теста можно сделать вывод, что на изолированных символах OCR система близка по точности к человеку. Однако человек опережает системы OCR на свободных от ограничений и рукописных документах.

Развитие ИНС вызвало немало энтузиазма и критики. Некоторые сравнительные исследования оказались оптимистичными, другие — пессимистичными. Для многих задач, таких как распознавание образов, пока не создано доминирующих подходов. Выбор лучшей технологии должен диктоваться природой задачи. Нужно пытаться понять возможности, предпосылки и область применения различных подходов и максимально использовать их дополнительные преимущества для дальнейшего развития интеллектуальных систем. Подобные усилия могут привести к синергетическому подходу, который объединяет ИНС с другими технологиями для существенного прорыва в решении актуальных проблем. Как недавно заметил Минский, пришло время строить системы за рамками отдельных компонентов. Индивидуальные модули важны, но мы также нуждаемся в методологии интеграции. Ясно, что взаимодействие и совместные работы исследователей в области ИНС и других дисциплин позволят не только избежать повторений, но и (что более важно) стимулируют и придают новые качества развитию отдельных направлений.

Литература

1. DARPA Neural Network Study, AFCEA Int’l Press, Fairfax, Va., 1988.
2. J. Hertz, A. Krogh, and R.G. Palmer, Introduction to the Theory of Neural Computation, Addison-Wesley, Reading, Mass., 1991.
3. S. Haykin, Neural Networks: A Comprehensive Foundation, MacMillan College Publishing Co., New York, 1994.
4. W.S. McCulloch and W. Pitts, «A logical Calculus of Ideas Immanent in Nervous Activity», Bull. Mathematical Biophysics, Vol. 5, 1943, pp. 115-133.
5. R.Rosenblatt, «Principles of Neurodynamics», Spartan Books, New York, 1962.
6. M. Miтnsky and S. Papert, «Perceptrons: An Introduction to Computational Geometry», MIT Press, Cambridge, Mass., 1969.
7. J.J. Hopfield, «Neural Networks and Physical Systems with Emergent Collective Computational Abilities», in Proc. National Academy of Sciencies, USA 79, 1982, pp. 2554-2558.
8. P. Werbos, «Beyond Regression: New Tools for Prediction and Analysis in the Behavioral Sciences», Phd Thesis, Dept. of Applied Mathematics, Harvard University, Cambridge, Mass., 1974.
9. D.E. Rumelhart and J.L. McClelland, Parallel Distributed Processing: Exploration in the Microstructure of Cognition, MIT Press, Cambridge, Mass., 1986.
10. J.A. Anderson and E. Rosenfeld, «Neurocomputing: Foundation of Research», MIT Press, Cambridge, Mass., 1988.
11. S. Brunak and B. Lautrup, Neural Networks, Computers with Intuition, World Scientific, Singapore, 1990.
12. J. Feldman, M.A. Fanty, and N.H. Goddard, «Computing with Structured Neural Networks», Computer, Vol. 21, No. 3, Mar.1988, pp. 91-103.
13. D.O. Hebb, The Organization of Behavior, John Wiley & Sons, New York, 1949.
14. R.P.Lippmann, «An Introduction to Computing with Neural Nets», IEEE ASSP Magazine, Vol.4, No.2, Apr. 1987, pp. 4-22.
15. A.K. Jain and J. Mao, «Neural Networks and Pattern Recognition», in Computational Intelligence: Imitating Life, J.M. Zurada, R.J. Marks II, and C.J. Robinson, eds., IEEE Press, Piscataway, N.J., 1994, pp. 194-212.
16. T. Kohonen, SelfOrganization and Associative Memory, Third Edition, Springer-Verlag, New York, 1989.
17. G.A.Carpenter and S. Grossberg, Pattern Recognition by SelfOrganizing Neural Networks, MIT Press, Cambridge, Mass., 1991.
18. «The First Census Optical Character Recognition System Conference», R.A.Wilkinson et al., eds., . Tech. Report, NISTIR 4912, US Deop. Commerse, NIST, Gaithersburg, Md., 1992.
19. K. Mohiuddin and J. Mao, «A Comparative Study of Different Classifiers for Handprinted Character Recognition», in Pattern Recognition in Practice IV, E.S. Gelsema and L.N. Kanal, eds., Elsevier Science, The Netherlands, 1994, pp. 437-448.
20. Y.Le Cun et al., «Back-Propagation Applied to Handwritten Zip Code Recognition», Neural Computation, Vol 1, 1989, pp. 541-551.
21. M. Minsky, «Logical Versus Analogical or Symbolic Versus Connectionist or Neat Versus Scruffy», AI Magazine, Vol. 65, No. 2, 1991, pp. 34-51.

Анил К. Джейн (jain@cps.msu.edu) — Мичиганский университет; Жианчанг Мао, К М. Моиуддин — Исследовательский Центр IBM в Альмадене.

Поделитесь материалом с коллегами и друзьями

Искусственные нейронные сети (стр. 1 из 7)

1. Искусственные нейронные сети

1.1 Параллели из биологии

1.2 Определение ИНС

1.3 Архитектура нейронной сети

1.4 Сбор данных для нейронной сети

2.1 Алгоритм обратного распространения

2.2 Переобучение и обобщение

2.3 Модели теории адаптивного резонанса

3 Многослойный персептрон (MLP)

3.1 Обучение многослойного персептрона

4. Вероятностная нейронная сеть

5. Обобщенно-регрессионная нейронная сеть

6. Линейная сеть

7. Сеть Кохонена

8.1 Оценка качества кластеризации

8.2 Процесс кластеризации

8.3 Применение кластерного анализа

1. Искусственные нейронные сети

Иску́сственные нейро́нные се́ти (ИНС) — математические модели, а также их программные или аппаратные реализации, построенные по принципу организации и функционирования биологических нейронных сетей — сетей нервных клеток живого организма. Это понятие возникло при изучении процессов, протекающих в мозге, и при попытке смоделировать эти процессы. Первой такой попыткой были нейронные сети Маккалока и Питтса. Впоследствии, после разработки алгоритмов обучения, получаемые модели стали использовать в практических целях: в задачах прогнозирования, для распознавания образов, в задачах управления и др.

ИНС представляют собой систему соединённых и взаимодействующих между собой простых процессоров (искусственных нейронов). Такие процессоры обычно довольно просты, особенно в сравнении с процессорами, используемыми в персональных компьютерах. Каждый процессор подобной сети имеет дело только с сигналами, которые он периодически получает, и сигналами, которые он периодически посылает другим процессорам. И тем не менее, будучи соединёнными в достаточно большую сеть с управляемым взаимодействием, такие локально простые процессоры вместе способны выполнять довольно сложные задачи.

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

Нейронные сети не программируются в привычном смысле этого слова, они обучаются. Возможность обучения — одно из главных преимуществ нейронных сетей перед традиционными алгоритмами. Технически обучение заключается в нахождении коэффициентов связей между нейронами. В процессе обучения нейронная сеть способна выявлять сложные зависимости между входными данными и выходными, а также выполнять обобщение. Это значит, что, в случае успешного обучения, сеть сможет вернуть верный результат на основании данных, которые отсутствовали в обучающей выборке, а также неполных и/или «зашумленных», частично искаженных данных.

1.1 Параллели из биологии

Нейронные сети возникли из исследований в области искусственного интеллекта, а именно, из попыток воспроизвести способность биологических нервных систем обучаться и исправлять ошибки, моделируя низкоуровневую структуру мозга (Patterson, 1996). Основной областью исследований по искусственному интеллекту в 60-е — 80-е годы были экспертные системы. Такие системы основывались на высокоуровневом моделировании процесса мышления (в частности, на представлении, что процесс нашего мышления построен на манипуляциях с символами). Скоро стало ясно, что подобные системы, хотя и могут принести пользу в некоторых областях, не ухватывают некоторые ключевые аспекты человеческого интеллекта. Согласно одной из точек зрения, причина этого состоит в том, что они не в состоянии воспроизвести структуру мозга. Чтобы создать искусственных интеллект, необходимо построить систему с похожей архитектурой.

Мозг состоит из очень большого числа (приблизительно 10,000,000,000) нейронов, соединенных многочисленными связями (в среднем несколько тысяч связей на один нейрон, однако это число может сильно колебаться). Нейроны — это специальная клетки, способные распространять электрохимические сигналы. Нейрон имеет разветвленную структуру ввода информации (дендриты), ядро и разветвляющийся выход (аксон). Аксоны клетки соединяются с дендритами других клеток с помощью синапсов. При активации нейрон посылает электрохимический сигнал по своему аксону. Через синапсы этот сигнал достигает других нейронов, которые могут в свою очередь активироваться. Нейрон активируется тогда, когда суммарный уровень сигналов, пришедших в его ядро из дендритов, превысит определенный уровень (порог активации).

Интенсивность сигнала, получаемого нейроном (а следовательно и возможность его активации), сильно зависит от активности синапсов. Каждый синапс имеет протяженность, и специальные химические вещества передают сигнал вдоль него. Один из самых авторитетных исследователей нейросистем, Дональд Хебб, высказал постулат, что обучение заключается в первую очередь в изменениях «силы» синаптических связей. Например, в классическом опыте Павлова, каждый раз непосредственно перед кормлением собаки звонил колокольчик, и собака быстро научилась связывать звонок колокольчика с пищей. Синаптические связи между участками коры головного мозга, ответственными за слух, и слюнными железами усилились, и при возбуждении коры звуком колокольчика у собаки начиналось слюноотделение.

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

Искусственная нейронная сеть (ИНС, нейронная сеть) — это набор нейронов, соединенных между собой. Как правило, передаточные функции всех нейронов в нейронной сети фиксированы, а веса являются параметрами нейронной сети и могут изменяться. Некоторые входы нейронов помечены как внешние входы нейронной сети, а некоторые выходы — как внешние выходы нейронной сети. Подавая любые числа на входы нейронной сети, мы получаем какой-то набор чисел на выходах нейронной сети. Таким образом, работа нейронной сети состоит в преобразовании входного вектора в выходной вектор, причем это преобразование задается весами нейронной сети.

Искусственная нейронная сеть это совокупность нейронных элементов и связей между ними.

Основу каждой искусственной нейронной сети составляют относительно простые, в большинстве случаев — однотипные, элементы (ячейки), имитирующие работу нейронов мозга (далее под нейроном мы будем подразумевать искусственный нейрон, ячейку искусственной нейронной сети).

Рис. 2 — Искусственный нейрон

· Нейрон обладает группой синапсов — однонаправленных входных связей, соединенных с выходами других нейронов. Каждый синапс характеризуется величиной синоптической связи или ее весом wi .

· Каждый нейрон имеет текущее состояние, которое обычно определяется, как взвешенная сумма его входов:

· Нейрон имеет аксон — выходную связь данного нейрона, с которой сигнал (возбуждения или торможения) поступает на синапсы следующих нейронов. Выход нейрона есть функция его состояния:

Функция f называется функцией активации.

Рис. 3 — Функция активации

Функция активации может иметь разный вид :

· пороговый ( рис. 3.a),

· кусочно-линейный ( рис. 3.б),

· сигмоид( рис. 3.в, 3.г ).

Множество всех нейронов искусственной нейронной сети можно разделить на подмножества — т.н. слои. Взаимодействие нейронов происходит послойно.

Слой искусственной нейронной сети — это множество нейронов на которые в каждый такт времени параллельно поступают сигналы от других нейронов данной сети

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

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

1.3 Архитектура нейронной сети

ИНС может рассматриваться как направленный граф со взвешенными связями, в котором искусственные нейроны являются узлами. По архитектуре связей ИНС могут быть сгруппированы в два класса (рис. 4): сети прямого распространения, в которых графы не имеют петель, и рекуррентные сети, или сети с обратными связями.

Основы искусственных нейронных сетей

Биологический прототип

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

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

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

На рис. 1.1 показана структура пары типичных биологических нейронов . Дендриты идут от тела нервной клетки к другим нейронам , где они принимают сигналы в точках соединения, называемых синапсами . Принятые синапсом входные сигналы передаются к телу нейрона . Здесь они суммируются, причем одни входы стремятся возбудить нейрон , другие — воспрепятствовать его возбуждению.

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

Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL