Адаптируемый линейный слой

Автор работы: Пользователь скрыл имя, 23 Декабря 2012 в 17:38, курсовая работа

Краткое описание

Целью выполнения данного курсового проекта является расширение теоретических и закрепление практических знаний, полученных в ходе аудиторных и самостоятельных занятий.
Следовательно, можно выделить следующие задачи написания данной работы:
Описать возможности ПС MATLAB 6.1 и тулбокса NNT.
Описать возможности и особенности использования приложений Notebook....

Содержание

Введение…………………………………………………………………………..3
2. Аналитическая часть…………………………………………………………..5
2.1 Содержательная и математическая постановка решаемой задачи………..5
2.2 Модель линейного нейрона……………………………………………….....6
2.3 Архитектура линейной сети…………………………………………………7
2.4 Обучение линейной сети…………………………………………………….7
2.5 Применение линейных сетей………………………………………………….8
2.6 Краткое описание возможностей и особенностей среды Matlab 2006a и тулбокса NNT (Neural Network ToolBox)………………………………………10
2.7 Краткое описание возможностей и особенностей использования приложений Notebook и ExcelLink……………………………………………..15
2.8 Формирование требований к разрабатываемому приложению…………..20
3. Проектная часть……………………………………………………………….21
3.1 Описание назначения, состава и функций разработанного приложения...21
3.2 Рассмотрение особенностей реализации приложения…………………….24
3.3 Детальное описание особенностей выполнения демонстрационного примера…………………………………………………………………………...24
3.4 Анализ возможности и целесообразности использования разработанного приложения в составе интеллектуальных ЭИС………………………………..28
4. Заключение…………………………………………………………………….30
Список литературы………………………………………………………………31

Прикрепленные файлы: 1 файл

sam_kursach.doc

— 1,022.50 Кб (Скачать документ)


МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное  образовательное учреждение

высшего профессионального  образования

«Тверской Государственный Технический  Университет»

 

 

 

 

 

 

 

Факультет   Информационных технологий     

Специальность  080801, Прикладная информатика (в экономике) 

Кафедра     ИНФОРМАЦИОННЫЕ СИСТЕМЫ    

Курсовая  работа

 

 

 

 

Студента  Перепадя Василия Сергеевича 

На тему «Адаптируемый линейный слой»

 

Проверила Конькова Ирина Сергеевна

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Тверь, 2012

Содержание.

Введение…………………………………………………………………………..3

2. Аналитическая часть…………………………………………………………..5

2.1 Содержательная и математическая постановка решаемой задачи………..5

2.2 Модель линейного  нейрона……………………………………………….....6

2.3 Архитектура линейной  сети…………………………………………………7

2.4 Обучение линейной сети…………………………………………………….7

2.5 Применение  линейных сетей………………………………………………….8

2.6 Краткое описание  возможностей и особенностей  среды Matlab 2006a и тулбокса NNT (Neural Network ToolBox)………………………………………10

2.7  Краткое описание  возможностей и особенностей использования приложений Notebook и ExcelLink……………………………………………..15

2.8 Формирование требований  к разрабатываемому приложению…………..20

3. Проектная часть……………………………………………………………….21

3.1 Описание назначения, состава и функций разработанного  приложения...21

3.2 Рассмотрение особенностей  реализации приложения…………………….24

3.3  Детальное описание  особенностей выполнения демонстрационного  примера…………………………………………………………………………...24

3.4 Анализ возможности  и целесообразности использования  разработанного приложения в составе интеллектуальных ЭИС………………………………..28

4. Заключение…………………………………………………………………….30

Список литературы………………………………………………………………31

 

 

 

 

 

 

 

 

 

1. Введение.

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

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

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

 

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

Линейная сеть – это  самая простая модель нейронной  сети.

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

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

    1. Описать возможности ПС MATLAB 6.1 и тулбокса NNT.
    2. Описать возможности и особенности использования приложений Notebook.
    3. Описать особенности функционирования и программной реализации  демонстрационного примера.
    4. Сформировать требования к приложению и выполнить его реализацию.
    5. Проанализировать возможность и целесообразность использования рассматриваемого приложения в составе интеллектуальных ИС.

 

 

 

 

 

 

2. Аналитическая часть.

    1. Содержательная и математическая постановка решаемой задачи.

 

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

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

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

К примеру, линейные  динамические  нейронные  сети  могут быть  адаптированы  для  решения  задач фильтрации  временных  сигналов.  Для  сетей  такого  класса  часто  используется  название ADALINE (ADaptive LInear NEtwork) – адаптируемые линейные сети.

 

    1.  Модель линейного нейрона.

Модель нейрона. На рисунке 1 показан линейный нейрон с двумя входами. Он имеет структуру, сходную со структурой персептрона; единственное отличие состоит в том, что используется линейная функция активации purelin. Персептрон - математическая и компьютерная модель восприятия информации мозгом (кибернетическая модель мозга).

 

Входы   Линейный нейрон

 

 pw11         n   a


    Σ    


pw12         b

 

 

a = pureline(wp+b)

Рис.1  

Весовая матрица W в этом случае имеет только одну строку и выход сети определяется выражением:

A = purelin(n) = purelin(wp + b) =  wp + b=w11p1 + w12p2 + b

Подобно персептрону, линейная сеть задает в пространстве входов разделяющую линию, на которой функция  активации n равна 0 (рисунок 2).

   a < 0


-b/w12

       w


   


wp + b = 0

                p1


-b/w11    Рис.2

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

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

Архитектура сети. Линейная сеть, показанная на рисунке 3а, включает S нейронов, размещенных в одном слое и связанных с R входами через матрицу весов W.

Слой линейных нейронов

Входы    a = pureline(IW11p + b1)  Входы         Слой линейных нейронов

         w11    n1  a1        p


p1                R>1        n1


p2    1  n2  a2        S>R              +


p3               1                S=1


.       b2            S=1

ps   ns  as   a = purelin(IW11p + b1)


 w1s


  1  bs

a      б

Рис. 3 

На рисунке 3б показана укрупненная структурная схема этой сети, вектор выхода а которой имеет размер Sх1. [6]

 

    1.  Обучение линейной сети.

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

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

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

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

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

где p1, p2, … , pQ – входы сети; t1, t2, … , tQ – соответствующие целевые выходы.

Требуется минимизировать следующую функцию средней квадратичной ошибки:

mse = 1/Q Σ e(k)2 = 1/Q Σ (t(k) – a(k))2

 

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

 

    1.  Применение линейных сетей.

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

1. Задача классификации векторов

Линейные сети могут быть применены для решения задач классификации. Если используется процедура обучения train, то параметры сети настраиваются с учетом суммарного значения функции ошибки. Это отличается от процедуры адаптации adapt, для работы которой характерна настройка параметров с учетом ошибки при представлении каждого вектора входа. Затем обучение применяется к скорректированной сети, вычисляются выходы, сравниваются с соответствующими целями и вновь вычисляется ошибка обучения. Если достигнута допустимая погрешность или превышено максимальное число циклов (эпох) обучения, то процедура настройки прекращается. Алгоритм обучения и настройки сходится, если задача классификации разрешима. [3]

2. Фильтрация сигнала

На рисунке 4 представлена структурная схема цифрового фильтра, отличительной особенностью которого является то, что он включает динамический компонент — линию задержки (ЛЗ) и 1 слой линейной нейронной сети.

ЛЗ    Линейный слой

pd1

 p(k)    w11


    pd2          n(k)    a(k)


 p(k-1)


     w12  b


               1 


p(k-N-1)  pdN


w1N

N    a = purelin(Wp+b)

Рис. 4 

Последовательность  значений входного сигнала {p(k)} поступает  на ЛЗ, состоящую из N-1 блока запаздывания; выход ЛЗ – N-мерный вектор pd, составленный из значений входа в моменты времени k, k-1, ... , k-N-1.

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

a(k) = purelin(Wp + b) = Σ w1i a(k – i + 1) + b.

3.Подавление шумов  

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

Информация о работе Адаптируемый линейный слой