Реферат: Нейронные сети

Задание 1. Нейронные сети

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

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

Что касается нейросетевой архитектуры, то, несмотря на многочисленныереверансы в сторону нейронных сетей со стороны классиков кибернетики, ихвлияние на промышленные разработки вплоть до недавнего времени быломинимальным. Хотя в конце 50-х — начале 60-х с этим направлением связывалибольшие надежды, в основном благодаря Фрэнку Розенблатту, разработавшему первоеобучаемое нейросетевое устройство для распознавания образов, персептрон (отанглийского perception — восприятие).

Персептрон был впервые смоделирован в 1958 году, причем его обучениетребовало около получаса машинного времени на одной из самых мощных в то времяЭВМ IBM-704. Аппаратный вариант — Mark I Perceptron — был построен в 1960 г. и предназначался дляраспознавания зрительных образов. Его рецепторное поле состояло из матрицыфотоприемников 20х20, и он успешно справлялся с решением ряда задач.

Тогда же возникли первые коммерческие нейрокомпьютинговые компании. В 1969году Марвин Минский выпустил вместе с южноафриканским математиком Пейпертомкнигу «Персептроны». В этой роковой для нейрокомпьютинга книге быластрого доказана принципиальная ограниченность персептронов. Исследования в этомнаправлении были свернуты вплоть до 1983 года, когда они, наконец, получилифинансирование от Агентства перспективных военных исследований США (DARPA). Этот факт стал сигналом к началу нового нейросетевого бума.

Интерес широкой научной общественности к нейросетям пробудился после теоретическойработы физика Джона Хопфилда (1982 г), предложившего модель ассоциативнойпамяти в нейронных ансамблях. Холфилд и его многочисленные последователиобогатили теорию нейросетей многими идеями из арсенала физики, такими какколлективные взаимодействия нейронов, энергия сети, температура обучения и т.д.Однако настоящий бум практического применения нейросетей начался послепубликации в 1986 году Давидом Румельхартом с соавторами метода обучениямногослойного персептрона, названного ими методом обратного распространенияошибки (error back-propagation). Ограничения персептронов, о которых писалиМинский и Пейперт, оказались преодолимыми, а возможности вычислительнойтехники-достаточными для решения широкого круга прикладных задач. В 90-х годахпроизводительность последовательных компьютеров возросла настолько, что этопозволило моделировать с их помощью работу параллельных нейронных сетей счислом нейронов от нескольких сотен до десятков тысяч. Такие эмуляторынейросетей способны решать многие интересные с практической точки зрениязадачи.

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

простой обрабатывающий элемент — нейрон (рис.1.1);

очень большое число нейронов участвует в обработке информации;

один нейрон связан с большим числом других нейронов (глобальные связи);

изменяющиеся по весу связи между нейронами;

массированная параллельность обработки информации.

Прототипом для создания нейрона послужил биологический нейрон головногомозга. Биологический нейрон имеет тело, совокупность отростков — дендритов, покоторым в нейрон поступают входные сигналы, и отросток — аксон, передающийвыходной сигнал нейрона другим клеткам. Точка соединения дендрита и аксона называетсясинапсом. Упрощенно функционирование нейрона можно представить следующимобразом (рис.1.2):

1) нейрон получает от дендритов набор (вектор) входных сигналов;

2) в теле нейрона оценивается суммарное значение входных сигналов.

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

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

/>

Рис.1.1 Биологический нейрон


/>

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

3) нейрон формирует выходной сигнал, интенсивность которого зависит отзначения вычисленного скалярного произведения. Если оно не превышает некоторогозаданного порога, то выходной сигнал не формируется вовсе — нейрон «несрабатывает»;

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

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

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

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

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

/>

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

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


/>

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

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

Самый заслуженный и, вероятно,наиболее важный элемент нейросистем — это адаптивный сумматор. Адаптивныйсумматор вычисляет скалярное произведение вектора входного сигнала x на векторпараметров a. На схемах будемобозначать его так, как показано на рис.1.5 Адаптивным называем его из-заналичия вектора настраиваемых параметров a.Для многих задач полезно иметь линейную неоднородную функцию выходных сигналов.Ее вычисление также можно представить с помощью адаптивного сумматора, имеющегоn+1 вход и получающего на 0-й вход постоянный единичныйсигнал (рис.1.6).

Нелинейный преобразовательсигнала изображен на рис.1.7 Он получает скалярный входной сигнал x и переводитего в j (x).

Точка ветвления служит длярассылки одного сигнала по нескольким адресам (рис.1.8). Она получает скалярныйвходной сигнал x и передает его всем своим выходам.


/> />

Рис.1.5 Адаптивный сумматорРис.1.6Неоднородный адаптивный сумматор

/> />

Рис.1.7 Нелинейныйпреобразователь сигнала

/>

Рис.1.8 Точка ветвления

/>

Рис.1.9 Формальный нейронРис.1.10Линейная связь (синапс)

Элементы слоистых и полносвязныхсетей могут выбираться по-разному. Существует, впрочем, стандартный выбор — нейрон с адаптивным неоднородным линейным сумматором на входе (рис.1.9).

Линейная связь — синапс — отдельно от сумматоров не встречается, однако для некоторых рассуждений бываетудобно выделить этот элемент (рис.1.10). Он умножает входной сигнал x на «вес синапса» a.

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

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

Слоистые сети: нейронырасположены в несколько слоев (рис.1.11). Нейроны первого слоя получают входныесигналы, преобразуют их и через точки ветвления передают нейронам второго слоя.Далее срабатывает второй слой и т.д. до k-го слоя, который выдает выходныесигналы. Если не оговорено противное, то каждый выходной сигнал i-го слояподается на вход всех нейронов i+1-го. Число нейронов в каждом слое может бытьлюбым и никак заранее не связано с количеством нейронов в других слоях.Стандартный способ подачи входных сигналов: каждый нейрон первого слоя получаетвсе входные сигналы. Особое распространение получили трехслойные сети, вкоторых каждый слой имеет свое наименование: первый — входной, второй — скрытый, третий — выходной.

/>

Рис.1.11 Слоистая сеть

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

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

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

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

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

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

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

отсутствует алгоритм или неизвестны принципы решения задач, но накоплено достаточное число примеров;

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

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

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

еще рефераты
Еще работы по информатике, программированию