56 from daal.algorithms.neural_networks
import layers
57 from daal.algorithms.neural_networks.layers
import split
59 utils_folder = os.path.realpath(os.path.abspath(os.path.dirname(os.path.dirname(__file__))))
60 if utils_folder
not in sys.path:
61 sys.path.insert(0, utils_folder)
62 from utils
import printTensor, readTensorFromCSV
65 datasetName = os.path.join(
"..",
"data",
"batch",
"layer.csv")
69 if __name__ ==
"__main__":
72 tensorData = readTensorFromCSV(datasetName)
75 splitLayerForward = split.forward.Batch()
78 splitLayerForward.parameter.nOutputs = nOutputs
79 splitLayerForward.parameter.nInputs = nInputs
82 splitLayerForward.input.setInput(layers.forward.data, tensorData)
84 printTensor(tensorData,
"Split layer input (first 5 rows):", 5)
87 forwardResult = splitLayerForward.compute()
90 for i
in range(nOutputs):
91 printTensor(forwardResult.getResultLayerData(split.forward.valueCollection, i),
92 "Forward split layer result (first 5 rows):", 5)
95 splitLayerBackward = split.backward.Batch()
98 splitLayerBackward.parameter.nOutputs = nOutputs
99 splitLayerBackward.parameter.nInputs = nInputs
102 splitLayerBackward.input.setInputLayerData(split.backward.inputGradientCollection,
103 forwardResult.getResultLayerData(split.forward.valueCollection))
106 backwardResult = splitLayerBackward.compute()
109 printTensor(backwardResult.getResult(layers.backward.gradient),
"Backward split layer result (first 5 rows):", 5)