@Override
public LayerMemoryReport getMemoryReport(InputType inputType) {
InputType outputType = getOutputType(-1, inputType);
int numParams = initializer().numParams(this);
int updaterStateSize = (int) getIUpdater().stateSize(numParams);
int trainSizeFixed = 0;
int trainSizeVariable = 0;
if (getDropOut() > 0) {
if (false) {
trainSizeVariable += 0;
} else {
trainSizeVariable += inputType.arrayElementsPerExample();
}
}
trainSizeVariable += outputType.arrayElementsPerExample();
return new LayerMemoryReport.Builder(layerName, OutputLayer.class, inputType, outputType)
.standardMemory(numParams, updaterStateSize)
.workingMemory(0, 0, trainSizeFixed, trainSizeVariable)
.cacheMemory(MemoryReport.CACHE_MODE_ALL_ZEROS, MemoryReport.CACHE_MODE_ALL_ZEROS)
.build();
}