|
4.14 Поток сети
Фрагмент сети, состоящий из слоя входных синапсов, сумматора, нейрона и выходного синапса и названный «потоком» представлен в программной модели классом TNetStream.
Помимо обычных для потомка класса TNetPiece полей NextPiece, PriorPiece, ForwOut и BackOut данный класс включает в себя FirstLayer - список синапсов первого слоя, Summator - объект класса TSummator, реализующего тривиальный сумматор, Neuron - объект класса TNeuron, реализующего нелинейный преобразователь - нейрон, SecondLayer - объект класса TSynapse, описывающий выходной синапс потока.
Прямой такт потока, описанный методом ForwardTact, происходит следующим образом:
Перебираются элементы списка FirstLayer, для каждого из которых вызывается его собственный метод ForwardTact, затем происходит «срабатывание» (вызов этого же метода) для объектов Summator, Neuron и SecondLayer. Затем выходной сигнал объекта заносится в поле ForwOut - выходной сигнал всего потока.
Такт обратного функционирования потока, который описан в методе BackwardTact, включает в себя следующие действия:
Последовательный вызов собственного метода BackwardTact для объектов SecondLayer, Neuron и Summator, затем перебор элементов списка FirstLayer и вызов метода BackwardTact для каждого синапса, входящего в него.
Структура связей между элементами потока представлена на рис 10.
4.15 Скомпонованная полутораслойная поточная сеть
Целая сеть представлена классом TNet. Данный класс также является потомком класса TNetPiece - общего элемента сети, что позволяет, используя свойство полиморфизма объектов, достаточно легко компоновать из отдельных фрагментов нейросети более сложной структуры.
Кроме полей, унаследованных от TNetPiece, сеть характеризуется также полями Inputs - список входных элементов, Streams - список потоков сети, SecondLayer - сумматор входного слоя, Answer - выходной элемент сети.
Для описания такта прямого функционирования сети используется, так же как в других элементах сети, метод ForwardTact. Методом выполняются следующие действия:
Перебор списка входных элементов и вызов метода ForwardTact для каждого из них, перебор и прямое функционирование каждого из элементов списка потоков, и затем - для объектов SecondLayer и Answer.
Метод BackwardTact, описывающий обратное функционирование сети, задается следующей последовательностью действий:
Обратное функционирование элементов Answer, SecondLayer, затем перебор и выполнение методов BackwardTact для элементов списков Streams и Inputs.
Структура связей между стандартными элементами полностью скомпонованной поточной нейросети показана на рис. 11.
Схема, приведенная на рис. 11, хорошо иллюстрирует преимущества применения объектно-ориентированного подхода к моделированию нейронных сетей.
Свойство полиморфизма объектов позволяет составлять список предыдущих элементов, например, сумматора, как из простых синапсов, так и из более сложных структур - потоков. Для этого требуется лишь аккуратное выполнение иерархии объектов, описывающих элементы сети.
В перспективе, с появлением параллельных трансляторов, объектно-ориентированный подход за счет свойства инкапсуляции объектов позволит легко перейти к моделированию нейросетей в параллельных системах.
Выводы по главе 4.
Созданный программный имитатор полутораслойной нейронной сети представляет собой механизм, позволяющий реализовать систему преобразователей, восстанавливающих зависимость, заданную в виде обучающей выборки.
Использование в программе алгоритма попоточного исчерпания ошибки позволяет ей создавать нейронные сети неизбыточной структуры.
Дополнение алгоритма попоточного исчерпания ошибки проверкой на сравнение константы Липшица нейронной сети с выборочной константой Липшица дает возможность использовать в работе пользовательского программного обеспечения более строгие требования к требуемому для восстановления функции по данной выборке объему нейронной сети.
Применение принципов объектно-ориентированного программирования при создании программного имитатора полутораслойной нейронной сети позволило создать программу с прозрачной, легко расширяемой и сопровождаемой структурой.
ВЫВОДЫ
1. Показано, что для решения классической задачи компьютерной психодиагностики с вероятностью правильного ответа около 95% может быть применена искусственная нейронная сеть из 2 нейронов с параметром преобразователя равным 0,4. При этом такая экспертная система способна перенимать опыт специалиста непосредственно, без участия математика или программиста.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17
При использовании материалов активная ссылка на источник обязательна.