나는과 같은 것을 구현하려고하는데, 이는 DL4J 라이브러리를 사용하는 GANN (Genetic Algorithm Neural Network)입니다.deeplearning4j에서 사용자 정의 가중치 초기화
유전 학습 변수 :
- 유전자 : 생물 신경망의 가중치
- 피트니스 : 총 거리를 이동했다. 모든 생물체에 대한
신경망 레이어 :
- 입력 층 : 어느
1
경우는 센서 방향 벽0
또는 그렇지 않으면 거기에 5 개 센서. - 출력 레이어 : 생물의 각도에 매핑되는 선형 출력.
이 생물 개체에 대한 내 createBrain
방법 :
private void createBrain() {
Layer inputLayer = new DenseLayer.Builder()
// 5 eye sensors
.nIn(5)
.nOut(5)
// How do I initialize custom weights using creature genes (this.genes)?
// .weightInit(WeightInit.ZERO)
.activation(Activation.RELU)
.build();
Layer outputLayer = new OutputLayer.Builder()
.nIn(5)
.nOut(1)
.activation(Activation.IDENTITY)
.lossFunction(LossFunctions.LossFunction.MSE)
.build();
MultiLayerConfiguration conf = new NeuralNetConfiguration.Builder()
.seed(6)
.optimizationAlgo(OptimizationAlgorithm.STOCHASTIC_GRADIENT_DESCENT)
.iterations(1)
.learningRate(0.006)
.updater(Updater.NESTEROVS).momentum(0.9)
.list()
.layer(0,inputLayer)
.layer(1, outputLayer)
.pretrain(false).backprop(true)
.build();
this.brain = new MultiLayerNetwork(conf);
this.brain.init();
}
내가이 REPO https://github.com/kareem3d/GeneticNeuralNetwork
으로 추진해 왔습니다 그리고 이것은 생물 클래스 https://github.com/kareem3d/GeneticNeuralNetwork/blob/master/src/main/java/com/mycompany/gaan/Creature.java
입니다 도움이 될 수있는 경우나는 기계를 배우는 기계 다. 그래서 명백한 실수가 있으면 알려줘, 고마워. :)