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

Автор работы: Пользователь скрыл имя, 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 Кб (Скачать документ)

Голос пилота,    Восстановленный

Голос пилота   смешанный с шумом    сигнал

  v     +


 m     – 


Возмущающий

 шум    Отфильтрованный


шум для удаления

  помех


 n             a



       Шум двигателя


Рис. 5

Используя адаптируемую нейронную сеть ADALINE, построим такой фильтр, который позволит удалить шум n из зашумленною сигнала m. Рассмотрим подробнее структурную схему, представленную на рис 5. Голос пилота v смешан с помехой от шумов двигателя, которая формируется фильтром шума по известным записям сигнала  n. Зашумленный сигнал m моделирует искаженную речь пилота. Задача состоит в том, чтобы с помощью адаптивного фильтра сформировать такую модель шума а, которая при вычитании из зашумленного сигнала позволила бы выделить речь пилота.

Адаптивный  фильтр, построенный на базе линейной нейронной сети ADALINE, должен быть настроен так, чтобы убирать шум двигателя. Заметим, что такая адаптивная фильтрация предпочтительнее классического фильтра, в котором шум не вычитается, а отфильтровывается от сигнала m. [3]

 

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

 

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

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

Neural Network Toolbox (v.4.0) MATLAB (v.6.0, v.6.1) - пакет программ, ориентированный на решение широкого спектра задач с использованием нейронно-сетевых алгоритмов. В пакете предусмотрена реализация практически всех типов нейронных сетей, описанных в литературе (15 разновидностей), а также предусмотрена возможность создания пользовательских сетей практически любой конфигурации. Нейронная сеть представлена в пакете как объект, включающий подобъекты и свойства, к большинству из которых имеется доступ из командного окна, что позволяет контролировать поведение сети и гибко управлять свойствами сети. Сеть может быть сохранена в виде .mat - файла. Богатый набор функций активации, алгоритмов обучения, функций тренировки, инициализации, предварительной и пост-обработки, а также ряд вспомогательных функций, делают Neural Network Toolbox универсальным инструментальным средством для решения задач в самых разных областях науки и техники, а также в экономических и финансовых приложениях.

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

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

    • доведенное до более чем 600 число встроенных функций и команд;
    • новый интерфейс с набором инструментов для управления средой, включающий в себя окно команд (Command Window), окно истории команд (Command History), браузер рабочей области (Workspace Browser) и редактор массивов (Array Editor);
    • новые инструменты, позволяющие при помощи мыши интерактивно редактировать и форматировать графики, оптимизировать их коды и затраты памяти на графические команды и атрибуты;
    • улучшенные алгоритмы на основе оптимизированной библиотеки LAPACK;
    • новая библиотека FFTW (быстрых преобразований Фурье) Массачусетского технологического института Кембриджского университета (США);
    • ускоренные методы интегральных преобразований;
    • новые, более мощные и точные, алгоритмы интегрирования дифференциальных уравнений и квадратур;
    • новые современные функции визуализации: вывод на экран двумерных изображений, поверхностей и объемных фигур в виде прозрачных объектов;
    • новая инструментальная панель Camera для управления перспективой и ускорение вывода графики с помощью OpenGL;
    • новый интерфейс для вызова Java-процедур и использования Java-объектов непосредственно из MATLAB;
    • новые, современные инструменты проектирования графического пользовательского интерфейса;
    • обработка (регрессия, интерполяция, аппроксимация и вычисление основных статистических параметров) графических данных прямо из окна графики;
    • новое приложение MATLAB для системы разработки Visual Studio, позволяющее автоматически, непосредственно из Microsoft Visual Studio, преобразовывать Си и Си++ коды в выполняемые MATLAB файлы (МЕХ-файлы);
    • интеграция с системами контроля версий кода, такими как Visual Source Safe;
    • новый интерфейс (последовательный порт) для обмена данными с внешним оборудованием из MATLAB;
    • новый пакет управления измерительными приборами (Instrument Control ToolBox) для обмена информацией с приборами, подключенными к Каналу общего пользования (GPIB, HP-IB, IEEE-488)[ Существует аналогичные международные МЭК (IEC) 625.1 и российские государственные стандарты. Несмотря на логическую и электрическую совместимость, международные и отечественные стандарты предполагают использование других разъемов.
    • существенно обновленные пакеты расширения, в частности новые версии пакета моделирования динамических систем Simulink 4 и Real Time Workshop 4;
    • интеграция с системами управления потребностями, например DOORS.

Поставляемый с системой MATLAB 6.0 новый пакет расширения Simulink 4 также имеет ряд новинок. Они  перечислены ниже по категориям.

Усовершенствование пользовательского  интерфейса:

  • новый графический отладчик для интерактивного поиска и диагностики ошибок в модели;
  • усовершенствован навигатор моделей (Model Browser, Windows 95/98/Me/ 2000/NT4);
  • новый однооконный режим для открытия подсистем;
  • контекстное меню для блок-диаграмм (открывается щелчком правой кнопки мыши) как в Windows, так и в Unix версиях;
  • новый диалог Finder для поиска моделей и библиотек.

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

Все это говорит о  том, что двенадцатый выпуск системы (MATLAB 6.0 + Simu-link 4.0 + Stateflow 4.0 + ...) подвергся  не косметической, а самой серьезной  переработке, выдвигающей эту систему на абсолютно новый уровень развития и применения.

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

К числу подобных пакетов  относится пакет Neural Networks Toolbox (NNT) системы  математического моделирования MATLAB 6 фирмы Math Works.

Пакет прикладных программ NNT содержит средства для построения нейронных сетей, базирующихся на поведении  математического аналога нейрона. Пакет обеспечивает эффективную  поддержку проектирования, обучения, анализа и моделирования множества известных типов сетей – от базовых моделей персептрона до самых современных ассоциативных и самоорганизующихся сетей. В пакете имеется более 15 таких типов. Для каждого типа архитектуры и обучающих правил имеются М-функции инициализации, обучения, адаптации, создания, моделирования, отображения, оценки и демонстрации, а также примеры применения. Обеспечена возможность генерации переносимого кода с помощью пакета Real Time Workshop, также входящего в систему MATLAB 6. [7]

 

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

 

В состав программного обеспечения системы MATLAB включено инструментальное средство Notebook  (ИС Notebook) для создания записных книжок, содержимое которых  может быть прочитано, вычислено и модифицировано в среде редактора Microsoft Word.

Понятие М-книги. Документ, созданный в среде ИС Notebook, называется М-книгой. Она включает текст, команды системы MATLAB и результаты их выполнения. Ее можно представлять себе либо как запись результатов интерактивного сеанса работы, сопровождаемую текстом, либо как документ, в который помещены исполняемые команды системы MATLAB и их результаты.

При создании или  редактировании М-книги редактор Word использует специальный шаблон M-book. Этот шаблон позволяет получить доступ к системе MATLAB из документа редактора Word и управлять его форматированием.

Когда создается  или открывается М-книга, шаблон:

    • запускает систему MATLAB, если она не была стартована, и поддерживает   динамический обмен данными между Word и MATLAB на основе DDE  (Dynamic Data Exchange) интерфейса;
    • содержит макрокоманды, которые позволяют системе MATLAB обрабатывать специальные типы ячеек, в которые записываются команды и операторы языка MATLAB и результаты их исполнения;
    • поддерживает в редакторе Word меню Notebook;
    • поддерживает стили для текста и ячеек. [3]

 

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

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

    1. Ввести команду в виде текста и не нажимая клавиши Enter оставить курсор в конце текста.
    2. Выбрать команду Define Input Cell из меню Notebook, либо использовать комбинацию клавиш Alt-D.
    3. ИС Notebook определяет команду как ячейку ввода, помещая ее в специальные скобки и форматируя специальным стилем. Все входные ячейки отмечаются жирными скобками серого цвета, которые существенно отличаются от скобок, используемых для обозначения матриц размером и шириной; для изображения символов - жирный шрифт темно-зеленого цвета.

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

    1. Ввести команду как текст, оставить курсор на этой строке в конце текста и не нажимать клавишу Enter.
    2. Ввести команду в виде текста и не нажимая клавиши Enter оставить курсор в конце текста. Выбрать команду Evaluate Cell из меню Notebook, либо использовать комбинацию клавиш Ctrl-Enter.
    3. ИС Notebook кроме ячеек ввода использует также ячейки вывода, чтобы сохранить вычисленные результаты. Ячейки вывода следуют непосредственно за ячейками ввода и помечаются специальными скобками; для вывода чисел и текста используются символы синего цвета; сообщения об ошибках выводятся символами красного цвета.

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

Для автоматической инициализации команд при открытии М-книги необходимо определить команды как ячейки автостарта (autoinit cells). Это наиболее быстрый и простой способ формирования рабочей области. Ячейки автостарта - это те же ячейки ввода со следующими дополнительными свойствами:

    • ИС Notebook вычисляет ячейки автостарта при открытии М-книги;
    • команды в ячейках автостарта изображаются символами темно-синего цвета.

Создать ячейки автостарта можно двумя способами:

    • Ввести команды в виде текста, а затем определить их как ячейку автостарта, используя команду Define AutoInit Cell.
    • Если команды определены как ячейка ввода, то ее можно конвертировать в ячейку автовызова, используя команду Define AutoInit Cell .

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