【发布时间】:2017-03-15 10:16:32
【问题描述】:
我正在尝试使用 DL4J 库实现类似 https://www.youtube.com/watch?v=Fp9kzoAxsA4 的东西,这是一个 GANN(遗传算法神经网络)。
遗传学习变量:
- 基因:生物神经网络权重
- 健身:移动的总距离。
每个生物的神经网络层:
这是我对生物对象的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
我是一名机器学习学生,所以如果您发现任何明显的错误,请告诉我,谢谢 :)
【问题讨论】:
标签: machine-learning deeplearning4j dl4j