backward method
void
backward()
Implementation
void backward() {
grad = 1.0;
List<Node> topo = [];
Set<Node> visited = {};
void buildTopo(Node node) {
if (!visited.contains(node)) {
visited.add(node);
for (var parent in node._parents) {
buildTopo(parent);
}
topo.add(node);
}
}
buildTopo(this);
// Compute gradients for the Jacobian
for (var node in topo.reversed) {
for (var backwardOp in node._backward) {
backwardOp();
}
}
}