code: def mlp_2dense(
      input_shape: ShapeTuple,
      output_n: int,
      activation=None,
      dense_units: int = 1024,
      dropout_rate=0.4,
  ) -> Model:
      if activation is None:
          activation = "relu"
  
      inputs = klayers.Input(shape=input_shape)
      x = klayers.Flatten()(inputs)
      x = klayers.Dense(dense_units, activation=activation)(x)
      x = klayers.Dropout(dropout_rate)(x, training=False)
      outputs = klayers.Dense(output_n)(x)
      return kmodels.Model(
          inputs=inputs, outputs=outputs, name="mlp_2dense"
      )
  
file_path: innvestigate/tests/networks/base.py
imports: from __future__ import annotations
  import tensorflow.keras.layers
  import tensorflow.keras.models
  from innvestigate.backend.types import Layer, Model, ShapeTuple
label_desc: Use image node_id 4 for calling a global function with example usage: mlp_2dense(input_shape, output_n, activation, dense_units, dropout_rate) and returns: kmodels