Александр Кириченко - Нейросетевое программирование. Инструментарий нейрокомпьютинга

Тут можно читать онлайн Александр Кириченко - Нейросетевое программирование. Инструментарий нейрокомпьютинга - бесплатно ознакомительный отрывок. Жанр: Прочая околокомпьтерная литература. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.

Александр Кириченко - Нейросетевое программирование. Инструментарий нейрокомпьютинга краткое содержание

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

Нейросетевое программирование. Инструментарий нейрокомпьютинга - читать онлайн бесплатно ознакомительный отрывок

Нейросетевое программирование. Инструментарий нейрокомпьютинга - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Александр Кириченко
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

// Здесь указано, что ожидается 4 урока

/*В данном примере предусмотрено 4 урока:

– training lesson (исходный обучающий урок) – исходные файлы mbn & training lesson. mbl

– validate lesson (исходный контролирующий урок) – исходный файл validate lesson. mbl

– активация выходных нейронов (реакция сети на тренировочные данные 1 к уроку №3) – вывод в файл TrainResult. csv

– результаты урока 2 на данные validate lesson (2 к уроку №3) – вывод в файл ValidateResult. csv

их адреса высвечиваются на экране после входа в Lesson Editor —> Lesson Files —> Урок №1. В скрипт – программе это записывается в виде крманды:

*/

SelectLesson (1); //начинается с меню Lesson Editor:

Рис6 Загрузка урока 1 Выполняется загрузка необходимых для работы данных - фото 6

Рис.6 Загрузка урока 1

//

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

LoadLesson («Decoder4To16_Training. mbl»); // Загрузите обучающий урок

//Чтобы полностью просмотреть сеть (последней командой она была закрыта редактором уроков), уберите с экрана редактор урока, чтобы полностью стала видна сеть.

ShowLessonEditor (false);

//Установите учителя, который будет использоваться. Используйте имя учителя, который вы хотите установить в качестве активного.

SelectTeacher («RPROP»); // Используйте учителя с именем «RPROP»

//Настройте учителя (Adjust the teacher) – настройку можно произвести через окно //Teacher Manager:

Рис7 Настройка учителя Или с помощью команл TeacherSetting LEARNRATE - фото 7

Рис.7 Настройка учителя

//

//Или с помощью команл:

TeacherSetting (LEARNRATE, 0.1); // Скорость обучения

TeacherSetting (TARGET_ERR, 0.3); // Установка допустимой целевой ошибки

TeacherSetting (LESSON_REPS, 1); // Повторение урока за шаг обучения

TeacherSetting (PATTERN_REPS, 1); // Повторение паттернов за шаг обучения

//Определите метод выбора шаблона:

TeacherSetting (PATTERN_SELECT, RAND_ORDER);

SetTeachSpeed (0); // Установка максимальной скорости обучения

//и так далее

//Запустите просмотрщик ошибок

ShowErrorViewer (true);

//и уберите его с экрана

ResetErrorViewer ();

//Начните обучение и дождитесь остановки после достижения целевой ошибки

StartTeaching ();

SleepExec (); // Ожидание окончания обучения

//Снова скрыть средство просмотра ошибок

ShowErrorViewer (false);

//Сбросить счетчик шагов (уроков)

ResetThinkSteps ();

//Теперь подготовьте урок №3, чтобы записать результаты работы сети при выполнении урока №1.

//Сохраните значения активации выходных нейронов

SetRecordingType (RT_ACT);

//Включите запись данных на занятие №3

StartRecording (3);

//Скрыть редактор урока

ShowLessonEditor (false);

//Установка времени для записи целого урока во внутреннюю память MemBrainSetThinkSpeed (500); //500 мс между этапами обдумывания для анимации

//Запись реакции сети на тренировочные данные к уроку №3

ThinkLesson (); // Выполните каждый шаблон урока №1 (и запишите на №3)

SleepExec (); // Ожидание окончания выполнения урока

//Отключение записи после окончания урока (500 мс)

StopRecording ();

SelectLesson (2); // Загрузка урока №2 с данными для проверки

LoadLesson («Decoder4To16_Validate. mbl»);

//Этот урок только для ввода. Не нужны никакие выходные данные,

EnableLessonOutData (false);

//Запишите значения активации выходных нейронов

SetRecordingType (RT_ACT);

//Включить запись данных на урок №4

StartRecording (4);

ShowLessonEditor (false); // Скрыть редактор урока

ThinkLesson (); // Выполните каждый шаблон урока №2 (и запишите на №4)

SleepExec (); // Ожидание окончания обучения («Think on Lesson)

StopRecording (); // Отключить запись

//Теперь экспортируйте уроки №3 и 4 в CSV

SelectLesson (3);

ExportLessonRaw («Decoder4To16_TrainResult. csv»);

SelectLesson (4);

ExportLessonRaw («Decoder4To16_ValidateResult. csv»);

/*Раскомментируйте следующую строку, если вы хотите, чтобы MemBrain завершал работу после выполнения скрипта*/

// ExitMemBrain ();

/*Описанная здесь последовательность команд может быть представлена в виде скриптового файла с расширением. as – файла ("MemBrainScript1.as».

Для запуска скрипта в основном меню пакета набрать Scripting -> Execute Script:

Рис8 Запуск скрипта В открывшемся окне выделить название скрипта Рис9 - фото 8

Рис.8 Запуск скрипта

*/

В открывшемся окне выделить название скрипта:

Рис9 Имя скрипта После выполнения скрипта полученные результаты выведены на - фото 9

Рис.9 Имя скрипта

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

Рис10 Результат выполнения скрипта Результатов много Для их анализа - фото 10

Рис.10 Результат выполнения скрипта

Результатов много. Для их анализа необходимо рассмотреть содержание полученных файлов.

После загрузки сети первым вводился файл Decoder4To16_Training. mbl. Содержимое этого файла можно вывести из MemBrain в файл с расширением csv для дальнейшего просмотра на экране или для вывода на принтер. Номер выводимого из MemBrain файла нужно набрать клавишами Currently Edited (Training) Lesson. После этого активировать Raw CSV Files -> Export Current Lesson (Raw CSV…). В окне Export Lesson As (Raw CSV) … набрать имя создаваемого сsv файла и щёлкнуть по клавише «сохранить».

Необходимая для работы скрипта информация содержится в файлах:

Decoder4To16_Training. mbl

Decoder4To16_TrainResult. csv

Decoder4To16_Validate. mbl

Decoder4To16_ValidateResult. csv

Файлы с расширением mbl содержат двоичный код вводимых данных. Их ввод осуществляется через Lesson Editor:

Рис11 Загрузка mblфайла Lesson Editor Lesson Files Load Current Lesson - фото 11

Рис.11 Загрузка mbl-файла

Lesson Editor -> Lesson Files -> Load Current Lesson.

Скриптовый файл может не содержать пояснений – самое важное – это команды. Редкие пояснения даются в виде комментариев.

Для примера: скрипт таймера SecondsTimer.as

/* – — – — – — – — – — – — – — – — – — – — – — – — —

Этот пример демонстрирует, как функция сценария Now () может использоваться для поддержки произвольного числа таймеров с разрешением 1 с.

Чтобы использовать таймеры в вашем собственном скрипте, просто включите этот файл в ваш скрипт, используя директиву #include.

Затем создайте экземпляр класса «SecondsTimer’ для каждого необходимого вам таймера. Обратите внимание, что функции таймера содержат отладочный код, который печатает сообщения в окне трассировки MemBrain.

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

– — – — – — – — – — – — – — – — – — – — – — – — – —

*/

/* Глобальная переменная для подсчета экземпляров класса. Используется только для генерации отладочных сообщений.

AngelScript пока не поддерживает статические члены класса. Вот почему это должна быть глобальная переменная.

*/

uint gSecondsTimerInstanceCount = 0;

class SecondsTimer

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Александр Кириченко читать все книги автора по порядку

Александр Кириченко - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Нейросетевое программирование. Инструментарий нейрокомпьютинга отзывы


Отзывы читателей о книге Нейросетевое программирование. Инструментарий нейрокомпьютинга, автор: Александр Кириченко. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x