enas
enas copied to clipboard
How to get final architecture based on the output of micro_search?
Based on the output of micro_search(num_cell=2
), for example:
[0 0 1 0 0 4 2 0]
[0 3 0 1 1 4 0 1]
According to the explanation, each block consists of 4 numbers [index_1, op_1, index_2, op_2]
and the index represent outputs of the two previous cells. So, for layer 1, based on the output
[0 0 1 0 0 4 2 0]
, how can cells of first layer take the output of second layer as a input to the cell?
Can you based on the output mentioned above, draw the structure of final network(set the num_layer=5
)?
Here,
index_1
andindex_2
can be any previous index.
op_1, op2 can be[0, 1, 2, 3, 4]
, corresponding toseparable_conv_3x3, separable_conv_5x5, average_pooling, max_pooling, identity
The index didn't represent the layer, but it represent the node.
Let say that at first there are 2 nodes already exist as input nodes,
node[0] = h[0], node[1] = h[1]
The first 4 numbers is [0 0 1 0]
so
node[2] = h[2] = separable_conv_3x3(h[0]) + separable_conv_3x3(h[1])
and the next 4 numbers is [0 4 2 0]
so
node[3] = h[3] = identity(h[0]) + separable_conv_3x3(h[2])
and so on.
Here,
index_1
andindex_2
can be any previous index. op_1, op2 can be[0, 1, 2, 3, 4]
, corresponding toseparable_conv_3x3, separable_conv_5x5, average_pooling, max_pooling, identity
The index didn't represent the layer, but it represent the node.
Let say that at first there are 2 nodes already exist as input nodes,
node[0] = h[0], node[1] = h[1]
The first 4 numbers is
[0 0 1 0]
sonode[2] = h[2] = separable_conv_3x3(h[0]) + separable_conv_3x3(h[1])
and the next 4 numbers is
[0 4 2 0]
sonode[3] = h[3] = identity(h[0]) + separable_conv_3x3(h[2])
and so on.
Hey, do you have any idea where can the discovered architecture of the macro search be found?