code: def build_hidden_layers(
      self,
      actions,
      batch_normal,
      drop_out,
      layer_nums,
      num_feat,
      num_label,
      state_num=6,
  ):
      # build hidden layer
      for i in range(layer_nums):
          if i == 0:
              in_channels = num_feat
          else:
              in_channels = out_channels * head_num
  
          # extract layer information
          attention_type = actions[i * state_num + 0]
          aggregator_type = actions[i * state_num + 1]
          act = actions[i * state_num + 2]
          head_num = actions[i * state_num + 3]
          out_channels = actions[i * state_num + 4]
          concat = True
          if i == layer_nums - 1:
              concat = False
          if self.batch_normal:
              self.bns.append(
                  torch.nn.BatchNorm1d(in_channels, momentum=0.5)
              )
          self.layers.append(
              GeoLayer(
                  in_channels,
                  out_channels,
                  head_num,
                  concat,
                  dropout=self.dropout,
                  att_type=attention_type,
                  agg_type=aggregator_type,
              )
          )
          self.acts.append(act_map(act))
          if self.residual:
              if concat:
                  self.fcs.append(
                      torch.nn.Linear(
                          in_channels, out_channels * head_num
                      )
                  )
              else:
                  self.fcs.append(
                      torch.nn.Linear(in_channels, out_channels)
                  )
  
imports: import torch
  import typing
  import torch.nn
  import torch.nn.functional
  from .None import register_nas_space
  from .base import BaseSpace, map_nn
  from ...model import BaseAutoModel
  from .operation import act_map
  from ..utils import count_parameters, measure_latency
  from ..backend import *
  from operator import *
  from .operation import *
label_desc: Use image node_id 3 for calling the GraphNet obj's underlying member method code with example usage: obj.build_hidden_layers(actions, batch_normal, drop_out, layer_nums, num_feat, num_label, state_num) without return types