in LaNAS/one-shot_LaNAS/supernet/supernet_train.py [0:0]
def zero_supernet_generator(self):
vec_length = len(self.layer_type)
masked_vec = np.zeros((1, vec_length))[0].tolist()
disconnected_vec = np.zeros((1, vec_length))[0].tolist()
supernet = [[] for v in range(self.arch_node)]
for i in range(self.arch_node):
for j in range(self.arch_node + 2):
if j < i + 2:
supernet[i].append(masked_vec.copy())
else:
supernet[i].append(disconnected_vec.copy())
for i in range(len(supernet)):
for j in range(len(supernet[i])):
for n in range(len(supernet[i][j])):
supernet[i][j][n] = int(supernet[i][j][n])
return supernet