'Makes a NetworkUnitInterface object based on the network_unit spec.
Components may override this method to exert control over the
network unit construction, such as which network units are supported.
Args:
network_unit: RegisteredModuleSpec proto defining the network unit.
Returns:
An implementation of NetworkUnitInterface.
Raises:
ValueError: if the requested network unit is not found in the registry.'

def make_network(self, network_unit):

    network_type = network_unit.registered_name
    with tf.variable_scope(self.name):
        return network_units.NetworkUnitInterface.Create(network_type, self)
