Как работает алгоритм видообразования NEAT? - PullRequest
0 голосов
/ 16 декабря 2018

Я читал о том, как работает NEAT (Neuro Evolution of Augmenting Topologies), и у меня есть основная идея этого, но одна вещь, которая меня беспокоит, это то, как вы разделяете различные сети на виды.Я прошел через алгоритм, но он не имеет большого смысла для меня, и статья, которую я прочитал, тоже не очень хорошо объясняет, так что если кто-то может дать объяснение того, что представляет собой каждый компонент и что он делает, тобыло бы здорово, спасибо.

2 уравнения:

$ \ delta = \ frac {c_ {1} E} {N} + \ frac {c_ {2} E} {N} + c_ {3} .W $

$ f_ {i} ^ {'} = \ frac {f_i} {\ sum_ {j = 1} ^ {n} sh (\ delta (i, j))} $

Оригинал статьи

1 Ответ

0 голосов
/ 16 декабря 2018

Вид в NEAT похож на совместное использование фитнеса, используемое другими эволюционными алгоритмами.Идея состоит в том, чтобы оштрафовать подобные решения, создавая давление на более разнообразную популяцию.

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

Функция совместного использования, реализованная в NEAT, приводит к значению 0 или 1, если расстояние между двумя решениями больше или меньше заданного порога, соответственно.Каждое решение сравнивается с каждым другим решением в популяции кандидатов, а пригодность изменяется суммой результирующих значений функции совместного использования.Если решение похоже на несколько других решений для населения, его модифицированная пригодность будет значительно снижена.

...