Манипулирование нейронами PyBrain

Есть ли хороший способ добавить/удалить нейрон и связанные с ним соединения в/из полностью подключенной сети PyBrain? Скажем, я начинаю с:

from pybrain.tools.shortcuts import buildNetwork
net = buildNetwork(2,3,1)

Как мне сделать сеть (2,4,1 )или (2,2,1 ), сохраняя все старые веса (и инициализируя любые новые, чтобы они были случайными как это делается при инициализации сети )? Причина, по которой я хочу это сделать, заключается в том, что я пытаюсь использовать эволюционную стратегию обучения для определения наилучшей архитектуры, а шаг «мутации» включает в себя добавление/удаление узлов с некоторой вероятностью. (Модули ввода и вывода всегда должны оставаться одинаковыми.)

редактировать :Я нашел NeuronDecomposableNetwork, который должен упростить эту задачу, но все равно кажется, что мне нужно отслеживать нейроны и связи отдельно.

6
задан ubomb 25 July 2012 в 23:23
поделиться