| |
| | | | |
Руслан Гримов дата публикации 25-08-2004 14:40 Библиотека NeuroNet
Уважаемые жители Королевства, вашему вниманию предлагается библиотека NeuroNet, реализующая обучение нейронной сети методом обратного распространения ошибки.
Библиотека позволяет:
- Обучать многослойную нейронную сеть методом обратного распространения ошибки;
- Изменять параметры обучения;
- Сохранять в файл обученную сеть.
В качестве активационной функции нейрона используется сигмоида 1 / ( 1 + exp ( -α * NET ) ), где α - крутизна функции, NET - взвешенная сумма входных сигналов и порогового уровня нейрона.
Для повышения эффективности обучения нейронной сети в библиотеке применены:
- Расписание обучения - скорость изменения весовых коэффициентов равномерно уменьшается на всем этапе обучения от начальной скорости до конечной;
- Инерционность изменения весов - при коррекции веса учитывается его изменение в предыдущей итерации. Это позволяет избежать локальных минимумов.
Описание функций и структур библиотеки |
Структура TNeuroNet - структура содержащая описание нейронной сети. Основные свойства:
- Alpha - альфа (крутизна функции активации);
- Moment - момент (инерционность);
- StartSpeed - начальная скорость обучени;
- FinishSpeed - конечная скорость обучения;
- Функция Teach
- - обучение нейронной сети методом обратного распространения ошибки. В качестве параметров использует указать на структуру TNeuroNet, указатели на массивы входных и выходных примеров, количество периодов обучения. Также данной функции может быть передан адрес функции обратного вызова, которая в качестве параметров будет получать среднеквадратичную ошибку и номер текущего периода обучения (это может пригодиться для отображения хода процесса обучения сети).
- Функция Calculate
- - рассчёт результата с помощью обученной сети. Параметры: указатель на структуру TNeuroNet, указатели на массив входных значений и массив выходных значений, в который будет записан результат.
- Функция DeleteNet
- - обновляет нейронную сеть перед новым обучением. В качестве параметра использует указатель на структуру TNeuroNet.
- Функция SaveNet
- - сохраняет обученную нейронную сеть в файл. Параметры: указатель на структуру TNeuroNet, указатель на строку с именем файла.
- Функция LoadNet
- - загружает нейронную сеть из файла. Параметры: указатель на структуру TNeuroNet, указатель на строку с именем файла.
Более подробная информация о структурах и функциях находится в заголовочных файлах.
Библиотека и заголовочные файлы
- neuronet.dll - файл библиотекти,
- neuronet.lib - файл библиотекти,
- neuronet.h - заголовочный файл для C++,
- neuronet.pas - заголовочный файл для Object Pascal.
Скачать библиотеку: neuronet.zip (35 K)
Примеры использования библиотеки
- Пример для Borland C++ Builder 6,
- Пример для Borland C++ Builder 6 (консольный),
- Пример для Borland Delphi 5.
Скачать примеры: neuronetdemo.zip (80 K)
[Нейронные сети]
Обсуждение материала [ 19-12-2006 08:48 ] 4 сообщения |
|
| | | | |
| |
Время на сайте: GMT минус 5 часов
Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter.
Функция может не работать в некоторых версиях броузеров.
©
При использовании любых материалов «Королевства Delphi»
необходимо указывать источник информации.
Перепечатка авторских статей возможна только при согласии всех авторов и администрации сайта.
Все используемые на сайте торговые марки являются
собственностью их производителей.