32 from daal.algorithms.neural_networks
import layers
33 from daal.algorithms.neural_networks.layers
import split
35 utils_folder = os.path.realpath(os.path.abspath(os.path.dirname(os.path.dirname(__file__))))
36 if utils_folder
not in sys.path:
37 sys.path.insert(0, utils_folder)
38 from utils
import printTensor, readTensorFromCSV
41 datasetName = os.path.join(
"..",
"data",
"batch",
"layer.csv")
45 if __name__ ==
"__main__":
48 tensorData = readTensorFromCSV(datasetName)
51 splitLayerForward = split.forward.Batch()
54 splitLayerForward.parameter.nOutputs = nOutputs
55 splitLayerForward.parameter.nInputs = nInputs
58 splitLayerForward.input.setInput(layers.forward.data, tensorData)
60 printTensor(tensorData,
"Split layer input (first 5 rows):", 5)
63 forwardResult = splitLayerForward.compute()
66 for i
in range(nOutputs):
67 printTensor(forwardResult.getResultLayerData(split.forward.valueCollection, i),
68 "Forward split layer result (first 5 rows):", 5)
71 splitLayerBackward = split.backward.Batch()
74 splitLayerBackward.parameter.nOutputs = nOutputs
75 splitLayerBackward.parameter.nInputs = nInputs
78 splitLayerBackward.input.setInputLayerData(split.backward.inputGradientCollection,
79 forwardResult.getResultLayerData(split.forward.valueCollection))
82 backwardResult = splitLayerBackward.compute()
85 printTensor(backwardResult.getResult(layers.backward.gradient),
"Backward split layer result (first 5 rows):", 5)