neural-network - DeepLearning4J 如何将图层动态添加到多层网络
问题描述
我正在尝试测试多层网络的几种组合,但网络配置生成器不允许在构建后添加或删除层。
如果有人可以给我一个提示,在此先感谢。
解决方案
我知道了!
这成功了 .list(layers.toArray(new DenseLayer[layers.size()]))
System.out.println("CREATING NETWORK.");
List<Integer> hiddenLayers = NetworkSizeCalculator.getNetwork(nc.networkStructure, d.inputs[0].length, d.inputs.length);
List<DenseLayer> layers=new ArrayList<>();
for(int i=0;i<hiddenLayers.size();i++){
layers.add(new DenseLayer.Builder()
.nIn(hiddenLayers.get(i))
.nOut(hiddenLayers.get(i))
.weightInit(WeightInit.XAVIER)
.activation((Activation) nc.hiddenActivationType)
.build());
}
MultiLayerConfiguration configuration = new NeuralNetConfiguration.Builder()
.seed(randomSeed)
.updater(t.getOptimizer())
.activation(nc.hiddenActivationType)
.weightInit(WeightInit.XAVIER)
.list(layers.toArray(new DenseLayer[layers.size()]))
.layer(hiddenLayers.size(),new OutputLayer.Builder()
.nIn(d.inputs[0].length)
.nOut(d.outputs[0].length)
.weightInit(WeightInit.XAVIER)
.activation((Activation) nc.outputActivationType)
.lossFunction(LossFunctions.LossFunction.MSE)
.build()).build();
MultiLayerNetwork network = new MultiLayerNetwork(configuration);
推荐阅读
- ubuntu - 是否可以将 RF 收发器模块与 mini PCIe 端口连接?
- java - 用 where 子句计算大 MySQL 表上只有 10 万条最后记录
- c# - 我使用 System.IO.StreamWriter 的 C# 代码以一定长度输出随机的中文/unicode 字符
- julia - 在 Julia 中实现 LAPACK 例程 hseqr()(创建包装错误:没有方法匹配 Array{Float64,1}(::Int64))
- python - 函数“doclist”没有“过滤器”成员pylint(无成员)
- reactjs - How do I override material-ui's tab selection color?
- nlp - Epicene代词参考解析歧义
- php - For循环不能在mysql php中使用数组
- ios - 使用 CoreData 持久化远程 JSON
- mesh - 如何在网格创建中进行第一次三角剖分或开始三角剖分