Используя генетический алгоритм, как я могу создать потомство на основе двух структур нейронной сети? - PullRequest
5 голосов
/ 18 декабря 2011

У меня есть два массива объектов, которые описывают структуру нейронной сети, как я могу объединить их, чтобы получить реалистичное потомство? «Хромосомы» будут выглядеть примерно так:

chromosome = [
    [Node, Node, Node],
    [Node, Node, Node, Node, Node],
    [Node, Node, Node, Node],
    [Node, Node, Node, Node, Node],
    [Node, Node, Node, Node, Node, Node, Node],
    [Node, Node, Node],
];

Пример узла:

Node {
    nodesThatThisIsConnectedTo = [0, 2, 3, 5] // These numbers identify which nodes to collect output from in the preceding layer from based on their index number
    weights = [0.34, 0.33, 0.76, -0.56] // These are the corresponding weights applied to the mentioned nodes
}

1 Ответ

0 голосов
/ 05 января 2012

Я думаю, что лучшим подходом было бы реализовать поиск по генетическому алгоритму для вектора веса каждого узла - если вы ограничены использованием GA.

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

...