Учебное пособие по курсу «Нейроинформатика» | страница 61



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

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

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

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

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