2014-09-22 2 views
0

유전자 알고리즘을 사용하여 훈련시키려는 피드 포워드 신경망이 있습니다. 가장 좋은 방법은 회색 코드로 표시된 가중치의 이진 문자열을 사용하는 것입니다. 그러나 제 경우에는 각 염색체에 대해 65 개의 가중치를 사용하므로 길이가 2080 (65 * 32 비트) 인 문자열이됩니다. 이 문제는 복잡한 것이므로 문자열의 비트 수를 줄이는 것보다 최적의 솔루션에 도달하는 데 오래 걸리지 만 GA가 작동하기에는 너무 오래 걸립니까? 이처럼 많은 수의 가중치를 인코딩하는 더 좋은 방법이 있습니까?유전자 알고리즘에서 신경망의 가중치를 염색체로 인코딩 할 때 바이너리 문자열이 너무 길어서 제대로 작동하지 않을 수 있습니까?

답변

0

문자열의 크기가 너무 큰 문제라고 생각하지 않지만 문제에 따라 달라질 수 있습니다.

문자열의 크기가 걱정된다면, 더 낮은 비트 수의 무게로 정밀도를 낮추고 학습 성능에 미치는 영향을 관찰 할 수 있습니다. 앞서 말했듯이 회색 코드는 가중치를 표현하는 데 가장 적합 할 수 있습니다. 저는 유전자 크기가 다른 응용 분야에서 동일한 길이의 GA를 사용하여 진화했습니다.

물론 인구 규모와 세대가 문제 및 피트니스 기능을 수행하기에 충분해야합니다.