Автоматизированная система построения нейронной сети методом обратного распространения ошибки

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 02.03.2010
Размер файла 3,0 M

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

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

Реализация ALM-стратегии в исполнении Borland заключается в предоставлении комплекса взаимосвязанных инструментов для всех этапов жизненного цикла приложений, таких, как определение требований, анализ и проектирование, разработка, тестирование, развертывание и управление[17]. В рамках данной стратегии компания выпустила ряд продуктов, часть которых мы собираемся использовать в своей работе, главным преимуществом которых является тесная интеграция друг с другом:

· Borland CaliberRM 2006

· Borland Together Designer 2006

· Borland StartTeam 2006

· Borland Developer Studio 2006

Borland Developer Studio 2006, как и вся линейка ALM инструментов является новейшим решением Borland в своем сегменте[18].

Как известно, корпорация Borland еще в 2001 году одной из первых среди независимых поставщиков подключалась к программе Visual Studio .NET Integration Partner и, более того, первой получила лицензию на SDK .NET Framework, объявив о намерении создания собственных средств разработки для новой по тем временам платформы Microsoft .NET.

В 2003 г. Borland представила C#Builder и Delphi 8 -- первые два инструмента для создания .NET-приложений, реализованные на базе нового ядра IDE(Integrated Development Environment) для Windows, поддерживающего несколько различных систем разработки для Win32 и .NET (проект с кодовым названием Gallileo). Потом на смену им пришел новый пакет Delphi 2005, объединивший оба средства (для .NET) с возможностями Delphi 7 (Win32).

По мнению представителей Borland, нынешний вариант инструмента -- это самое значительное обновление Delphi за последние годы, выполненное в полном соответствии со стратегией оптимизации процесса создания программного обеспечения Software Delivery Optimization, разработанной корпорацией.

Среда Delphi 2006 не только поддерживает несколько языков, SDK Win32 и .NET, но и обладает целым рядом принципиально новых усовершенствований. В ее состав входит большое количество принципиально новых функциональных возможностей IDE, призванных упростить выполнение разработчиками своих повседневных задач, повысить производительность их труда и оптимизировать работу с исходными текстами программ.[19]

В числе этих возможностей:

Продуктивность работы в cреде

§ Интеллектуальный редактор кода (история изменений, свертывание кода, подсказки)

§ Шаблоны кода

§ Рефакторинг (изменение структуры кода без влияния на функциональность)

§ Отладка (в т.ч. удаленная, включая Web-приложений)

§ Модульное тестирование (Unit-testing)

Прозрачность работы с СУБД

§ Работа с базами данных через разные механизмы
(BDE, IB Express, dbExpress, ADO, ADO.NET, BDP - Borland Data Providers)

ECO: высокоуровневая прикладная разработка для .NET

§ Объектный подход при работе с СУБД (Object-Relational Mapping)

§ Модели бизнес-сущностей и состояний - первичны и обновляемы

ALM-интеграция: эффективная командная работа

§ CaliberRM: управление требованиями

§ StarTeam: управление версиями, изменениями/дефектами, задачами

§ Together: моделирование (бизнес) и проектирование (код)

Новый менеджер памяти

§ Качественно сокращено время загрузки среды, ускорена работа IDE

Новая система шаблонов кода

§ Для всех поддерживаемых языков

§ Возможна “обертка” выделенного кода через вызов меню Surround

§ Возможно редактирование шаблонов “на лету”

Block Completion

§ Автоматическое завершение блоков код (напр. begin … end)

Diff highlighting

§ Подсветка изменений в коде, сделанных после последнего сохранения в текущей сессии редактирования

Удаленная отладка для Win32-приложений

Sort by load order

CPU view

Правила визуального размещения визуальных элементов в формах

Новые компоненты и классы VCL

§ TGridPanel, TFlowPanel, TCustomTransparetControl

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

Borland Together Designer 2006 - CASE-средство, предназначенное для визуального моделирования и проектирования программных систем на основе стандарта UML, позволяющая моделировать как компоненты программного обеспечения, так и бизнес-процессы. Borland Together обладает открытой архитектурой и предоставляет уникальный уровень интеграции инструментов моделирования и анализа со средой управления требованиями Borland CaliberRM, средством конфигурационного управления Borland StarTeam, а также с такими средами разработки и проектирования приложений, как Borland JBuilder, Borland C++ BuilderX, Microsoft Visual Studio .NET и Eclipse.

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

Технологии Borland Together 2006 помогают:

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

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

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

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

Технологии Borland Together 2006 используют передовые методы проектирования с возможностью визуализации IT-архитектуры:

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

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

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

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

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

· Поддержка стандартов Компания Borland предлагает заказчикам возможность взаимодействия, а не аналитические патентованные методы, и является приверженцем указанных ниже стандартов моделирования. Эта приверженность очевидна в семействе продуктов Together, в которых обеспечивается согласование с ключевыми стандартами MDA: UML, XMI и OCL. На ранней стадии обсуждения сейчас находятся стандарты для четвертой технологии MDA - преобразование модели (QVT); Компания Borland занимает лидирующие позиции в области разработки QVT с помощью технологии преобразования моделей. На сегодняшний день эта технология позволяет разработчикам создавать сложные платформенно-зависимые коды из обычных моделей UML.

Borland укрепляет свою приверженность стандартам MDA, участвуя в разработке важных спецификаций. Сотрудничая с другими участниками и ведущими пользовательскими организациями, компания Borland играла ключевую роль в последнем успешном завершении определений стандарта UML 2.0 и стала лидером в специальной группе OMG по разработке спецификаций OCL 2. Среди сопредседателей подкомитета OMG, занятого разработкой руководства по MDA, есть представители компании Borland.

· Поддержка на протяжении жизненного цикла приложения Технологии проектирования и моделирования Together предоставляют поддержку на протяжении всего жизненного цикла приложения и обеспечивают плавный переход от одной фазы к другой. Интеграция с Borland CaliberRM обеспечивает соответствие проектных моделей требованиям, а поддержка ведущих IDE, таких как Borland JBuilder, Borland C++BuilderX, Microsoft Visual Studio for.NET и Eclipse позволяет разработчикам преобразовывать модели в конкретные платформы. Более того, технологии Together интегрированы с Borland StarTeam и другими системами управления версиями программного обеспечения, позволяя гибко управлять конфигурацией при выборе репозитария.

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

Borland Together обладает следующими ключевыми функциями:

· LiveSource (Class-диаграммы)- two-way - изменения в коде отображаются в модели и наоборот

· Базовый набор UML 1.5 и UML 2.0 диаграмм - Class, Use Case, Sequence, Collaboration, State Chars, Deployment, Activity, Component

· Design Patterns (шаблоны проектирования)

· Refactorings (рефакторинг)

· Audits & Metrics (аудит и метрики)-оценка качества кода по заданным критериям

· Генерация документации

2.3 Проектирование функциональной структуры

Визуальное моделирование в UML можно представить, как некоторый процесс поуровневого спуска от наиболее обшей и абстрактной концептуальной модели исходной системы к логической, а затем и к физической модели соответствующей программной системы. Для достижения этих целей вначале строится модель в форме так называемой диаграммы вариантов использования (use case diagram), которая описывает функциональное назначение системы или, другими словами, то, что система будет делать в процессе своего функционирования. Диаграмма вариантов использования является исходным концептуальным представлением или концептуальной моделью системы в процессе ее проектирования и разработки. [7]

Разработка диаграммы вариантов использования преследует цели:

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

· Сформулировать общие требования к функциональному поведению проектируемой системы.

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

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

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

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

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

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

1

Детализированные диаграммы использования представлены в приложении 1.

2.4 Описание и иерархия основных классов

Центральное место в ООП занимает разработка логической модели системы в виде диаграммы классов. Нотация классов в языке UML проста и интуитивно понятна всем, кто когда-либо имел опыт работы с CASE-инструментариями. Схожая нотация применяется и для объектов - экземпляров класса, с тем различием, что к имени класса добавляется имя объекта и вся надпись подчеркивается.

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

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

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

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

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

1

Рис. 2.5.Общая диаграмма классов иерархии нейронной сети

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

· TNeuron -Базовый класс нейрона, несет основную функциональность, состоит из весов, сумматора и выхода.

- Output: double- Свойство содержит выход нейрона (результат вычисления).

- Weights[Index: integer]: double - Индексированное свойство, содержит значения весовых коэффициентов нейрона.

- Create(ALayer: TLayer) -Конструктор нейрона, в качестве параметра передается номер слоя, в котором он находится.

- ComputeOut(const AInputs: TVectorFloat) - Виртуальный метод, вычисляет выход нейрона, фактически это взвешенная сумма нейрона так как в базовом классе активационная функция не используется.

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

- WeightCount: integer - Свойство устанавливает размерность вектора весовых коэффициентов.

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

· TNeuronBP - Класс-потомок нейрона для многослойной нейронной сети, обучаемой по алгоритму обратного распространения (Back Propagation)

- OnActivationD: TSigmoid - Свойство процедурного типа, реализующее производную активационной функции.

- OnActivationF: TSigmoid - Свойство процедурного типа, реализующее активационную функцию.

- ComputeOut(const AInputs: TVectorFloat) - Вычисляет выход нейрона, используя нелинейную активационную функцию.

- Delta: double - Свойства содержит локальную ошибку при обратном распространении.

· TLayer - Базовый класс слоя нейронной сети.

- NeuronCount: integer - Свойство содержит количество нейронов в текущем слое нейронной сети.

- Neurons[Index: integer]: TNeuron - Индексированное свойство содержит нейроны слоя, индекс указывает на соответствующий нейрон в текущем слое.

Create(ALayerNumber: integer; ANeuronCount: integer) - Конструктор слоя нейронной сети. В качестве параметров, соответственно, передаются порядковый номер слоя и количестве нейронов в создаваемом слое.

Destroy - Деструктор слоя нейронной сети. При разрушении нейронной сети вызывается автоматически. Использование напрямую нежелательно.

· TLayerBP- Класс-потомок слоя для многослойной нейронной сети, содержащий нейроны класса TNeuronBP.

NeuronsBP[Index: integer]: TneuronBP - Индексированное свойство содержит нейроны слоя, индекс указывает на соответствующий нейрон в текущем слое.

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

- InputNeuronCount: integer -Свойство содержит количество нейронов в первом слое нейронной сети.

- LayerCount: integer - Свойство содержит количество слоев нейронной сети.

- Layers[Index: integer]: TLayer - Индексированное свойство, индекс указывает на соответствующий слой нейронной сети.

- OutputNeuronCount: integer - Свойство содержит количество нейронов в выходном (последнем) слое.

- AddPattern(const AInputs: TVectorFloat; const AOutputs: TVectorFloat) - Метод добавляет пример в обучающую выборку.

- DeletePattern(Index: integer) - Метод удаляет пример из обучающей выборки.

- Init(const ANeuronsInLayer: TVectorInt) - Метод инициализирует нейронную сеть, фактически это построитель заданной конфигурации сети.

- ResetPatterns - Метод удаляет все примеры из обучающей выборки.

- Input[Index: integer]: double - Индексированное свойство устанавливает выходные значения нейронной сети, индекс указывает на соответствующий вход.

· TNeuralNetBP - Класс-потомок многослойной нейронной сети, обучаемой по алгоритму обратного распространения.

- Alpha: double - Свойство задает крутизну сигмоиды (активационной функции), и является одним из глобальных параметров нейронной сети.

AutoInit: boolean - При установлении этого свойства в True, происходит инициализация многослойной нейронной сети.

- ContinueTeach: Boolean - При установлении значения этого свойства в True, сеть будет дообучаться, т.е. не вызывается метод InitWeights.

- Epoch: boolean - При установлении этого свойства в True, процесс обучения остановится при достижении числа эпох равного EpochCount.

- EpochCount: integer - Свойства задает необходимое количество эпох для обучения многослойной нейронной сети.

- EpochCurrent: integer - Свойство содержит номер текущей эпохи при обучении.

- LayersBP[Index: integer]: TLayerBP - Индексированное свойство, индекс указывает на соответствующий слой нейронной сети.

Рис 2.6. Диаграмма основных классов TNeuralNetBP и TNeuralNetExtand

- Momentum: double - Свойство задает величину момента, один из глобальных параметров параметр нейронной сети. Данный параметр оптимизирует процесс обучения нейронной сети.

- Output[Index: integer]: double - Свойство содержит результат работы нейронной сети, индекс указывает на соответствующий нейрон выходного слоя.

- PatternCount: integer -Свойство задает количество примеров в обучающем множестве.

- TestSetPatternCount: integer - Свойство задает количество примеров в тестовом множестве.

- StopTeach: boolean - При установлении значения этого свойства в True, останавливается процесс обучения.

- TeachError: double - Свойства содержит ошибку нейронной сети на всем обучающем множестве.

- MaxTeachResidual: integer -Свойство содержит максимальную ошибку нейронной сети на обучающем множестве.

- MidTeachResidual: integer - Свойство содержит среднюю ошибку нейронной сети на обучающем множестве.

- MaxTestResidual: integer - Свойство содержит максимальную ошибку нейронной сети на тестовом множестве.

- TeachRate: double - Значением этого свойства, является параметр нейронной сети, определяющий скорость обучения. Определяет насколько сильно веса корректируются после каждой итерации.

- MaxTestResidual: integer - Свойство содержит среднюю ошибку нейронной сети на тестовом множестве.

- RecognizedTeachCount: integer - Свойство содержит количество распознанных примеров из обучающего множества.

- RecognizedTestCount: integer - Свойство содержит количество разпознанных примеров из тестового множества.

- ActivationD(Value: double): double -Производная сигмоидальной функции.

ActivationF(Value: double): double - Активационная функция - сигмоида.

AddLayer(ANeurons: integer) - Метод добавляет слой с указанным количеством нейронов. Добавленный слой будет являться выходным.

Compute(AVector: TVectorFloat) - Метод вычисляет выход нейронной сети, выполняя проход вперед.

Init - Инициализирует многослойную нейронную сеть, фактически это построитель заданной конфигурации сети.

ResetLayers - Метод удаляет все слои многослойной нейронной сети.

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

OnAfterInit: TNotifyEvent - Событие происходит после инициализации нейронной сети.

OnAfterTeach: TNotifyEvent - Событие происходит после обучения нейронной сети.

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

AvailableFieldsCount: integer - Свойство задает количество полей в наборе данных.

Fields[Index]: integer: TNeuroField - Индексированное свойство, содержит поля набора данных, индекс указывает на соответствующее поле в наборе данных.

FileName: TFileName - Свойство задаёт имя файла с сохранённой нейронной сетью

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

InputFieldCount: integer - Значением этого свойства, является количество входных полей из набора данных.

MaxTeachError: Boolean - При значении True, процесс обучения останавливается, если максимальная ошибка MaxTeachErrValue, при обучении стала меньше определенного значения.

- MaxTeachErrValue: double - Свойство задает максимальную ошибку при обучении.

MaxTestError: Boolean - При значении True, процесс обучения останавливается, если максимальная ошибка MaxTestErrValue, при тестировании стала меньше определенного значения.

- MaxTestErrValue: double - Свойство задает максимальную ошибку при тестировании.

MidTeachError: Boolean -При значении True, процесс обучения останавливается, если средняя ошибка MidTeachErrValue, при обучении стала меньше определенного значения.

- MidTeachErrValue: double - Свойство задает среднюю ошибку при обучении.

- MidTestError: Boolean - При значении True, процесс обучения останавливается, если средняя ошибка MidTestErrValue, при тестировании стала меньше определенного значения.

- MidTestErrValue: double - Свойство задает среднюю ошибку при тестировании.

- OutputFieldCount: integer - Свойство определяет количество выходных полей из набора данных.

- SourceFileName: TFileName - Имя файла, содержащего набор данных.

- TeachIdent: boolean - При значении True, процесс обучения останавливается, если при обучении стала распознано определенное количество примеров.

- TeachIdentCount: integer - Свойство определяет какой процент примеров при обучении должен быть распознан.

- TestAsValid: Boolean - При значении True, тестовое множество будет используется как валидационное. Обучение будет прекращено с выдачей сообщения как только ошибка на тестовом множестве начнет увеличиваться. Это помогает избежать ситуации переобучения нейросети.

При значении True, процесс обучения останавливается, если при тестировании стала распознано определенное количество примеров.

- TestIdentCount: integer - Свойство определяет какой процент какой процент примеров при тестировании должно быть распознано.

- UseForTeach: integer - Свойство определяет сколько процентов набора данных используется для обучения.

- LoadDataFrom - Загружает данные из текстового файла

- LoadNetwork - Метод загружает из файла конфигурацию нейронной сети.

- LoadPhaseX - Метод загружает из файла настройки сети, секцию PhaseX.

- SaveNetwork - Метод сохраняет в файл конфигурацию нейронной сети.

- SavePhaseX - Метод сохраняет настройки сети, в секцию PhaseX файла.

- ComputeUnPrepData - Метод предварительно нормализует входные значения, вычисляет выход нейронной сети, выполняя проход вперед. Результат работы сети также денормализуется.

- Train - Метод обучающий/дообучающий нейронную сеть.

2.5 Проектирование экранных форм системы

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

Если же пользователь собирается создать новую сеть, то он должен пройти следующие шаги:

- Импорт данных

- Обработка данных

- Настройка параметров архитектуры сети

- Настройка параметров обучения сети

- Обучение сети

- Эксперимент

1

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

База данных - импорт данных из баз данных различных типов

Прямой доступ к файлам:

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

- Импорт из DBF - прямой доступ к файлам плоских баз данных типа DBF, который поддерживается такими приложениями как dBase, FoxBase, FoxPro.

Механизм MS ADO:

- Microsoft Excel - книга Microsoft Excel (*.xls).

- Microsoft Access - файл СУБД Microsoft Access (*.mdb).

- Импорт из DBF (ADO) - доступ через ADO к файлам плоских баз данных типа DBF, который поддерживается такими приложениями как dBase, FoxBase, FoxPro.

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

1

- Восстановление, сглаживание и редактирование аномальных данных.

- Понижение размерности входных факторов.

- Устранение незначащих факторов.

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

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

1

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

1

После этого пользователь настраивает параметры обучения сети. Он указывает скорость обучения, величину ошибки при распознавании примера, момент(учитывает величину последнего изменения веса при коррекции весов (задается в интервале 0…1)) и условия остановки обучения.

1

1

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

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

1

Глава 3. Экспериментальная проверка программного обеспечения

3.1 Постановка задачи и подготовка тестовых данных для эксперимента

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

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

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

Таблица 3. 1

Параметр

Цифровой вид

1) Материал

· Другой

· Панель

· Кирпич

0

1

2

2) Этаж

· Первые и последние этажи

· Остальные

0

1

3) Наличие лифта

· Есть + 1 грузовой

· Есть

· Нет

2

1

0

4) Эксплуатационное состояние

· Новая

· Уже жилая

1

0

5) Расстояние до центра

· Центр

· Средняя полоса

· Окраина

2

1

0

6) Состояние квартиры

· Голые стены

· Обычное

· Ремонт

· Евроремонт

0

1

2

3

7) Наличие балкона

· Есть

· Нет

1

0

8) Возраст квартиры

9) Год купли-продажи(этот показатель введён для того чтобы учитывать ежегодное повышение цен на недвижимость)

10) Площадь квартиры

11) Количество комнат

После этого была поднята документация о сделках купли-продажи за последние 5 лет, выписаны интересующие нас параметры и цены квартир(см. Приложение 2).

3.2 Тестирование и анализ результатов эксперимента

В тестировании участвовало 104 записи о сделках купли-продажи за последние 5 лет. После импортирования данных, поля: «Материал», «Этаж», «Возраст квартиры», «Наличие лифта», «Эксплуатационное состояние», «Расстояние до центра», «Состояние квартиры», «Наличие балкона», «Год купли-продажи», «Площадь квартиры», «Количество комнат», были отнесены к входным параметрам, а поле «Цена» к результирующему(выходному). Выборка разделилась на обучающую и тестовую в соотношении 9:1. Было выделено 2 скрытых слоя по 11 нейронов в каждом, % распознавания примера был выставлен на 4%, остальные параметры остались по умолчанию. Обучение прошло за 54356 эпох(циклов) при распознавании 100% и тестовой и обучающей выборки.

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

Таблица 3. 2

Материал

Возраст квартиры

Этаж

Наличие лифта

Эксплуатационное состояние

Расстояние до центра

Состояние квартиры

Наличие балкона

Год купли-продажи

Площадь квартиры

Количество комнат

Реальная Цена

Цена Эксперимента

Разница в %

1

4

1

0

0

1

1

1

2001

44

2

516000

497246

3.7

2

0

0

1

1

1

0

1

2002

81

4

717000

696732

2.9

1

1

1

1

0

0

1

1

2003

44

2

741000

734312

1

1

7

1

1

0

2

2

1

2004

61

3

996000

968604

2.8

1

5

1

2

0

1

2

1

2005

23

1

728000

738410

1.4

Как видно из таблицы разница цен не превышает 4%, что считается вполне хорошим результатом. Однако заметим что разница реальной и экспериментальной цены за 2001 год заметно выше по сравнению с другими годами, что объясняется неоднородностью выборки. То есть, как видно из таблицы исходных данных количество сделок за 2001 год заметно меньше чем за другие годы, поэтому сеть как бы «недообучилась» определять цену за 2001 год с такой же точностью, как и в другие годы. Что в очередной раз доказывает знаменитую фразу специалистов в области нейронных технологий: «Качество входных данных на 90% гарантирует успех».

Глава 4. Расчет экономической эффективности проекта

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

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

К единовременным затратам разработчика относятся:

· теоретические исследования;

· разработка алгоритмов и программ;

· отладка;

· опытная эксплуатация;

· исследование рынка;

· реклама.

Таблица 4.1 представляет фактическую трудоемкость работ по стадиям проектирования.

Таблица 4.1 Содержание стадий научно-исследовательской работы

Стадия

Трудоемкость, дн.

Трудоемкость, %

Техническое задание

11

5,4

эскизный проект

28

13,7

технический проект

54

26,3

рабочий проект

106

51,7

внедрение

6

2,9

Итого

205

100,0

К затратам на научно-исследовательские работы относятся:

- материальные затраты;

- основная и дополнительная заработная плата;

- отчисления на социальные нужды;

- стоимость машинного времени на подготовку и отладку программ;

- стоимость инструментальных средств;

- накладные расходы.

1. Материальные затраты

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

В процессе работы использовались материалы и принадлежности, представленные в табл. 4.2

Таблица 4. 2 Использованные материалы и принадлежности

Наименование

Цена

Количество

Стоимость

Бумага

120

1

120

Диски CD-RW

35

2

70

Flsh накопитель

1200

1

1242

Итого

1432

2. Основная и дополнительная заработная плата

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

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

Основная заработная плата (Зосн) при выполнении научно-исследовательских работ рассчитывается по формуле:

,

где

Зсрднj - зарплата j-го сотрудника, руб.;

n - количество сотрудников, принимающих непосредственное участие в разработке программного продукта.

Для расчета заработной платы разработчика (Зраз) необходимо сразу указать, что всего научно-исследовательские работы производились в течение 205 дней. Среднедневная зарплата разработчика определена из расчета 7000 руб. в месяц и равна:

Заработная плата исполнителя в целом составляет:

Зраз=205 дн.*350 руб./день=71750 руб.

На консультации запланировано: 23 часов - дипломный руководитель и 3 часа - консультант по экономике.

Заработная плата дипломного руководителя составляет 45 руб./час. Следовательно, среднедневная зарплата дипломного руководителя равна:

Зрук=23*45=1035 руб.

Заработная плата консультанта по экономике составляет 40 руб./час. Следовательно, среднедневная зарплата равна:

Зконс=3*40=120 руб.

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

Зоснразрукконс=71750+1035+120=72905 руб.

Дополнительная заработная плата составляет 10 % от основной:

Здоп=0,1*Зосн=0,1*72905=7290,5 руб.

Итого основная и дополнительная заработная плата составляют:

Зобщосндоп=72905+7290,5=80195,5 руб.

3. Отчисления на социальные нужды

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

Осоц=0,26*Зобщ=80195,5*0,26=20850,83 руб.

4. Затраты на оплату машинного времени

Затраты на оплату машинного времени (Зомв) зависят от времени работы на ЭВМ (Тэвм), себестоимости машино-часа работы ЭВМ (Смч) и включают в себя амортизацию ЭВМ и оборудования, затраты на электроэнергию. Стоимость одного машинного часа работы равна:

Смч=0,24 кВт/час*1,16 руб./кВт=0,28 руб./час

Время работы ЭВМ:

Тэвм=0,35*Тэск+0,6*Ттех пр+

+0,8*Траб пр+0,6*Твн=0,35*25+0,6*30+0,8*39+0,6*10=131 день,

где

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

С учетом того, что ЭВМ работала по восемь часов в сутки получаем:

Тэвм=131 дн*8ч=1048 ч

Себестоимость электроэнергии рассчитывается следующим образом:

Сэл= Тэвммч=1048*0,28=293,44 руб.

Затраты на амортизацию (Ам) ЭВМ и оборудование - это затраты на приобретение оборудования и его эксплуатацию, причем в статью расходов включают только амортизацию, начисленную за время работы над проектом. Имеем формулу:

Ам=(Офамэвм)/(365*100),

где

Оф - персональная стоимость оборудования, руб.;

Нам - норма амортизации, % (принято 20%);

Тэвм - время использования оборудования, дн.

Таблица 4. 3 Себестоимость оборудования и амортизационные отчисления

Наименование оборудования

Количество, шт.

Первоначальная стоимость, руб.

Общая стоимость, руб.

Компьютер Pentium IV (3GHz)

1

23000

23000

Принтер HP 1020

1

6840

6840

Итого

29840

Согласно таблице 4 первоначальная стоимость оборудования составила 29840 руб. Произведем расчет затрат на амортизацию:

Ам=(29840*20*131)/(365*100)=2135,40 руб.

Затраты на оплату машинного времени (Зовм) включают:

1. Затраты на оборудование в размере 2135,40 руб.

2. Затраты на электроэнергию в размере 290,87 руб.

Получаем, что стоимость машинного времени составляет:

Зовм=2135,40+290,87=2426,27 руб.

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

Стоимость инструментальных средств включает стоимость системного программного обеспечения, использованного при разработке программного продукта в размере износа за этот период. Норма амортизации для системного программного обеспечения - 30%, а время использования 131 день.

Таблица 4. 4 Стоимость системного программного обеспечения

Наименование продукта

Первоначальная стоимость, руб.

Delphi 2006 Professional

12586

Borland Together 2006(с академической скидкой)

18339

Итого

30925

Амортизационные отчисления, входящие в стоимость разрабатываемого программного обеспечения, рассчитываются по формуле:

Аис=(Офамэвм)/(365*100),

где

Оф - первоначальная стоимость инструментальных средств, руб.;

Нам - норма амортизации, % (принято 30%);

Тэвм - время использования оборудования, дней.

Аис=(30925*30*131)/( 365*100)= 3319,57 руб.

6. Накладные расходы

Накладные расходы составляют 30 % от суммы основной заработной платы:

Рносн*0,3=72905*0,3=21871,5 руб.

Далее в таблицу 6 заносится смета затрат на программное обеспечение.

Таблица 4. 5 Смета затрат на программное обеспечение

Элемент затрат

Сметная стоимость, руб.

Материальные затраты

1432

Основная и доп. з/п

80195,5

Отчисления на соц. нужды

20850,83

Затраты на оплату машинного времени

2426,27

Амортизация стоимости инструментальных средств

3319,57

Накладные расходы

21871,5

Итого затраты:

130095,67

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

Таблица 4. 6 План инвестиций

Этапы реализации проекта

Полугодия

2 полугодие 2005

1 полугодие 2006

Техническое задание

6980,74

 

эскизный проект

17769,16

 

технический проект

34269,10

 

рабочий проект

36807,55

30461,42

внедрение

 

3807,68

Итого:

95826,56

34269,10

II. Тиражирование и реализация программного обеспечения

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

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

Таблица 4. 7 Смета затрат

Показатели

Период

2 полугодие 2005

1 полугодие 2006

2 полугодие 2006

1 полугодие 2007

2 полугодие 2007

1 полугодие 2008

2 полугодие 2008

1 полугодие 2009

Затраты на тиражирование:

 

 

 

 

 

 

 

 

-стоимость документации

0

1125

3125

2275

1975

1675

800

625

-затраты на копирование

0

675

1875

1365

1185

1005

480

375

-стоимость машинных носителей и упаковочных материалов

0

1800

5000

3640

3160

2680

1280

1000

-затраты на рассылку

0

1350

3750

2730

2370

2010

960

750

-амортизация ЭВМ и оборудования

0,00

0,93

2,60

1,89

1,64

1,39

0,66

0,52

Итого:

0,00

4950,93

13752,60

10011,89

8691,64

7371,39

3520,66

2750,52

Затраты на рекламу

0,00

13009,57

10407,65

10407,65

6504,78

5203,83

2601,91

1300,96

Затраты на сопровождение ПО

0

6300

15000

10920

9480

7370

3520

2500

Итого затраты:

0,00

24260,50

39160,25

31339,54

24676,42

19945,22

9642,58

6551,48

III. План прибыли от продаж

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

Таблица 4. 8 План прибыли

Показатели

Период

2 полу-годие 2005

1 полугодие 2006

2 полугодие 2006

1 полугодие 2007

2 полугодие 2007

1 полугодие 2008

2 полугодие 2008

1 полугодие 2009

Выручка от реализации и сопровождения

0

141120

336000

244608

212352

165088

78848

56000

Затраты на тиражирование и сопровождение

0,00

24260,50

39160,25

31339,54

24676,42

19945,22

9642,58

6551,48

Процентные платежи за кредит

0

0

0

0

0

0

0

0

Прибыль валовая

0,00

116859,50

296839,75

213268,46

187675,58

145142,78

69205,42

49448,52

Налог (24%)

0,00

28046,28

71241,54

51184,43

45042,14

34834,27

16609,30

11867,65

Прибыль чистая

0,00

88813,22

225598,21

162084,03

142633,44

110308,51

52596,12

37580,88

I. IV. Финансовый план проекта

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

Из таблицы видно, что данный проект потребует 95826,56 рублей инвестиций в первое полугодие, так как в этот период продажа программного продукта не осуществляется. Эти средства можно получить вложив собственные средства, как в представленном случае, либо взяв банковский кредит. За второе полугодие планируется осуществить продажу сорока пяти копий программы и прибыль от продажи покроет появившиеся на данном периоде затраты.

V. Определение экономической эффективности проекта

Таблица 4.9 отражает денежные потоки за весь период жизненного цикла программного продукта. Здесь определяется чистый денежный поток (ЧДП), дисконтированный денежный поток (ДДП) и чистая текущая стоимость проекта (NPV).

Таблица 4. 9 Денежные потоки

Показатели

Период

2 полугодие 2005

1 полугодие 2006

2 полугодие 2006

1 полугодие 2007

2 полугодие 2007

1 полугодие 2008

2 полугодие 2008

1 полугодие 2009

Эффект от инвестиционной деятельности

95826,56

34269,10

0,00

0,00

0,00

0,00

0,00

0,00

Эффект от операционной, деятельности

0,00

88813,22

225598,21

162084,03

142633,44

110308,51

52596,12

37580,88

Чистый денежный поток

-95826,56

54544,12

225598,21

162084,03

142633,44

110308,51

52596,12

37580,88

Коэффициент дисконтирования (б)

0,92

0,85

0,79

0,72

0,67

0,62

0,57

0,52

Дисконтированный денежный поток (ДДП=ЧДП*б)

-88400,16

46417,54

177107,51

117383,93

95292,10

67984,78

29903,60

19710,78

Дисконтированный денежный поток нарастающим итогом (NPV)

-88400,16

-41982,61

135124,89

252508,83

347800,92

415785,70

445689,30

465400,08

Ставка дисконтирования (r) рассчитывается по формуле:

При этом ставка рефинансирования равна 13%, инфляция - 11%, а риск - 13%. Таким образом, получаем:

Коэффициент дисконтирования (б) рассчитывается по формуле:

,

где

r - ставка дисконтирования,

t - период времени.

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

Индекс доходности (SRR) определяется как отношение суммарного дисконтированного дохода к суммарным дисконтированным капитальным вложениям:

,

где

Пчt - прибыль чистая,

At - амортизационные отчисления,

Kt - капитальные вложения в основные и оборотные фонды,

бt - коэффициент дисконтирования.

Таким образом, индекс доходности равен:

.

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

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

где

r1 - исходная ставка дисконтирования,

r2 - ставка дисконтирования, при которой NPV меньше нуля,

rпор - внутренний коэффициент эффективности проекта,

NPVr1 и NPVr2 - NPV соответственно при r1 и r2

Для определения внутреннего коэффициента эффективности проекта возьмем такую ставку дисконтирования (r2=2,40), при которой NPV станет меньше нуля. Полученные результаты сводятся в таблицу 4.10.

Таблица 4. 10 Нахождение отрицательной чистой текущей стоимости проекта

Показатели

Период

2 полугодие 2005

1 полугодие 2006

2 полугодие 2006

1 полугодие 2007

2 полугодие 2007

1 полугодие 2008

2 полугодие 2008

1 полугодие 2009

NPVr1 =

-88400,16

-41982,61

135124,9

252508,83

347800,92

415785,70

445689,30

465400,08

б2=

0,45

0,21

0,09

0,04

0,02

0,01

0,00

0,00

ДДП2=

-43557,53

11269,45

21186,91

6919,10

2767,63

972,91

210,86

68,48

NPVr2=

-43557,53

-32288,08

-11101,17

-4182,08

-1414,45

-441,54

-230,68

-162,19

Рассчитаем пороговое значение рентабельности:

(239,2 % в полугодие или 572,3% в год)

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

Срок окупаемости проекта находится по формуле:

где

tx - количество периодов, при которых NPV меньше нуля,

NPVt - последнее отрицательное значение NPV,

ДДПt+1 - величина ДДП в t+1 периоде.

Получим:

полугодия (1,12 года)

Такое значение срока окупаемости проекта говорит о том, что через 1,12 года проект окупит денежные средства, вложенные в него, а затем начнет приносить доход.

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


Подобные документы

  • Обучение простейшей и многослойной искусственной нейронной сети. Метод обучения перцептрона по принципу градиентного спуска по поверхности ошибки. Реализация в программном продукте NeuroPro 0.25. Использование алгоритма обратного распространения ошибки.

    курсовая работа [1019,5 K], добавлен 05.05.2015

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

    реферат [654,2 K], добавлен 09.06.2014

  • Общие сведения о принципах построения нейронных сетей. Искусственные нейронные системы. Математическая модель нейрона. Классификация нейронных сетей. Правила обучения Хэбба, Розенблатта и Видроу-Хоффа. Алгоритм обратного распространения ошибки.

    дипломная работа [814,6 K], добавлен 29.09.2014

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

    курсовая работа [515,4 K], добавлен 19.06.2010

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

    дипломная работа [2,6 M], добавлен 23.09.2013

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

    дипломная работа [2,2 M], добавлен 07.06.2012

  • Разработка систем автоматического управления. Свойства нейронных сетей. Сравнительные оценки традиционных ЭВМ и нейрокомпьютеров. Формальная модель искусственного нейрона. Обучение нейроконтроллера при помощи алгоритма обратного распространения ошибки.

    реферат [1,4 M], добавлен 05.12.2010

  • Прогнозирование на фондовом рынке с помощью нейронных сетей. Описание типа нейронной сети. Определение входных данных и их обработка. Архитектура нейронной сети. Точность результата. Моделирование торговли. Нейронная сеть прямого распространения сигнала.

    дипломная работа [2,7 M], добавлен 18.02.2017

  • Модель и задачи искусственного нейрона. Проектирование двуслойной нейронной сети прямого распространения с обратным распространением ошибки, способной подбирать коэффициенты ПИД-регулятора, для управления движения робота. Комплект “LEGO Mindstorms NXT.

    отчет по практике [797,8 K], добавлен 13.04.2015

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

    курсовая работа [249,3 K], добавлен 22.06.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.