def __init__(self, config, **kwargs):
    super().__init__(**kwargs)
    if (config.num_groups == 1):
        self.dense = tf.keras.layers.Dense(config.hidden_size, kernel_initializer=get_initializer(config.initializer_range), name='dense')
    else:
        self.dense = GroupedLinearLayer(config.intermediate_size, config.hidden_size, num_groups=config.num_groups, kernel_initializer=get_initializer(config.initializer_range), name='dense')
    self.LayerNorm = tf.keras.layers.LayerNormalization(epsilon=config.layer_norm_eps, name='LayerNorm')
    self.dropout = tf.keras.layers.Dropout(config.hidden_dropout_prob)
def __init__(self, config, **kwargs):
    super().__init__(**kwargs)
    if (config.num_groups == 1):
        self.dense = tf.keras.layers.Dense(config.hidden_size, kernel_initializer=get_initializer(config.initializer_range), name='dense')
    else:
        self.dense = GroupedLinearLayer(config.intermediate_size, config.hidden_size, num_groups=config.num_groups, kernel_initializer=get_initializer(config.initializer_range), name='dense')
    self.LayerNorm = tf.keras.layers.LayerNormalization(epsilon=config.layer_norm_eps, name='LayerNorm')
    self.dropout = tf.keras.layers.Dropout(config.hidden_dropout_prob)