首页 > 解决方案 > 在 deeplearning4java 中获取每一层的输入和输出大小

问题描述

如何在 dl4j 中获取层输入和输出大小?

例如,像这样:

MultiLayerNetwork network = model.init()

for(Layer layer : network.getLayers()) {
 int[] outputShape = layer.shape() 
}

标签: javamachine-learningneural-networkdeeplearning4jdl4j

解决方案


它比这更复杂一些,因为 DL4J 支持比简单的密集层或全连接层更复杂的层。

如果您想将该信息打印出来,它可能更容易使用

String summary = model.summary();

如果你想用这些信息做点什么,你可以看看 summary 方法本身的实现。

https://github.com/eclipse/deeplearning4j/blob/master/deeplearning4j/deeplearning4j-nn/src/main/java/org/deeplearning4j/nn/multilayer/MultiLayerNetwork.java#L3636-L3757

特别是链接 3679 到 3699,因为它们都是关于获取层的输入和输出大小。


推荐阅读