Чтобы указать файл, который должен открываться при зажигании нейрона, выберите один или несколько нейронов, а затем выберите «Дополнительно»> «Исполняемый файл при запуске…» (
Появится следующий диалог:
Рис.25 Настройка зажигаемого файла
Обратите внимание на флажок с именем <Открыть файл при стрельбе> (Open File when Firing). Если этот флажок установлен, информация ниже актуальна.
Помните, что нужно установить display neuron fire indicators (индикаторы огня нейрона) для того, чтобы визуализировать момент зажигания нейрона.
Путь и имя файла, который должен быть открыт, а также аргумент командной строки хранятся с каждым нейроном отдельно. Таким образом, вы можете указать разные файлы, которые будут открыты для каждого нейрона. Обратите внимание, что вы можете отображать на экране индикаторы огня нейронов, чтобы визуализировать их работу.
Если активированы настройки дисплея <Вид> <Показать индикаторы огня> (
Рис.26 Индикация зажигаемого нейрона
Пример: Нейросетевой преобразователь последовательного кода в параллельный
В книге «Конструирование искусственных нейронных ансамблей (ИНА).pdf» [38] был представлен преобразователь последовательного кода в параллельный, состоявший из трёх групп нейронов: входных, выходных и нейронов задержки. В состав преобразователя был включён нейрон In1, который практически не использовался. Назначение и принцип действия этиго нейрона было обещано рассмотреть при описании скриптов пакета MemBrain.
Основное назначение этого нейрона (In1): управление работой нейроконструкции.
Для демонстрации управляющих функций нейрона восстанавливаем в основном окне MemBrain преобразователь последовательного кода в параллельный с помощью программы «СдРег. mbn» [10]:
Рис.27 Схема преобразователя последовательного кода в параллельный
Анализ созданной нейросети показывает:
Рис.28 Характеристики нейросети
всего нейронов – 15. Из них: 2 входных, 7 выходных, 6 скрытых нейронов (1 DLY 2 – 1 DLY 7) в 6 скрытых слоях (H1 – H6).
Для демонстрации работы преобразователя кодов было предусмотрено два файла.
В первом файле (SdvReg0.csv) нейрон In1 всегда равен 0. По In2 поступают последовательные сигналы, накапливающиеся в параллельные группы по 7 сигналов.
Рис.29 Основной файл для проверки преобразователя кодов
Используем этот файл для обучения:
Рис.30 Ход обучения преобразователя кодов
Ошибка обучения имеет достаточно малую величину и показывает, что нейросеть постепенно приблизилась к правильному результату (это видно по голубой линии. на Pattern Error Viewer):
Рис.31 Процесс обучения нейросети
После 6 точки голубая линия совпадает с Target. По клавише Export Graph выводится исполненный пример после обучения:
Рис.32 Максимальное количество колонок
Здесь содержится предупреждение о структуре выводимой информации.
Содержимое файла «SdvReg00.csv», полученного по клавише Export Graph:
Рис.33 Правильный результат после обучения.
Файл SdvReg2.csv имеет другое строение:
Нейрон In1 может исполнять разные функции: он может сигнализировать момент окончания превращения последовательного кода в параллельный и включать перепись сформированного параллельного кода с выходных нейронов в ячейку памяти для накопления. Если In1 отмечает момент, когда закончено формирование одной строки параллельного кода, то по сигналу In1=1 полученный код нужно считать с выходных нейронов нейросети. При исполнении такого действия нужно будет сформировать и вывести только одно число 1111000 (см. рисунок 34).