in LaNAS/Distributed_LaNAS/clientX/nasnet_set.py [0:0]
def get_node_depth(cur_node, node_code):
## get the depth for current node
assert cur_node[-1] != -1
assert cur_node[-2] != -1
depth_left = 1
depth_right = 1
if cur_node[-1] == 0 or cur_node[-1] == 1:
if cur_node[-2] == 0 or cur_node[-2] == 1:
return 1
if not (cur_node[-2] == 0 or cur_node[-2] == 1):
depth_left += get_node_depth(cur_node=node_code[cur_node[-2] - 2], node_code=node_code)
if not (cur_node[-1] == 0 or cur_node[-1] == 1):
depth_right += get_node_depth(cur_node=node_code[cur_node[-1] - 2], node_code=node_code)
return max(depth_left, depth_right)