-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSession.py
More file actions
25 lines (22 loc) · 774 Bytes
/
Session.py
File metadata and controls
25 lines (22 loc) · 774 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from tinyTensor import Neuron
from tinyTensor.Node import Node
from tinyTensor.Operation import Operation
import numpy as np
def postOrder(operation):
nodes_postorder = []
def recurse(node):
if isinstance(node, Node):
for input_node in node.inputNodes:
recurse(input_node)
nodes_postorder.append(node)
recurse(operation)
return nodes_postorder
class Session():
def run(self,node: Node,feed_dict={}):
nodes_postOrder = postOrder(node)
for node in nodes_postOrder:
if node.isPlaceholder:
# placeholders need value from feed dict
node.value = feed_dict[node.name]
node.compute(step=1)
return node.value