docstr: Creates a neural network 'architecture', that can be trained and used for inference.
  
  :param agent_parameters: the agent parameters
  :param spaces: the spaces (observation, action, etc.) definition of the agent
  :param name: the name of the network
docstr_tok: ["Creates","a","neural","network","'architecture","'",",","that","can","be","trained","and","used","for","inference",".",":","param","agent_parameters",":","the","agent","parameters",":","param","spaces",":","the","spaces","(","observation",",","action",",","etc",".",")","definition","of","the","agent",":","param","name",":","the","name","of","the","network"]
code: def __init__(
      self,
      agent_parameters: AgentParameters,
      spaces: SpacesDefinition,
      name: str = "",
  ):
      """
      Creates a neural network 'architecture', that can be trained and used for inference.
  
      :param agent_parameters: the agent parameters
      :param spaces: the spaces (observation, action, etc.) definition of the agent
      :param name: the name of the network
      """
      self.spaces = spaces
      self.name = name
      self.network_wrapper_name = self.name.split("/")[
          0
      ]  # e.g. 'main/online' --> 'main'
      self.full_name = "{}/{}".format(
          agent_parameters.full_name_id, name
      )
      self.network_parameters = agent_parameters.network_wrappers[
          self.network_wrapper_name
      ]
      self.batch_size = self.network_parameters.batch_size
      self.learning_rate = self.network_parameters.learning_rate
      self.optimizer = None
      self.ap = agent_parameters
  
imports: from typing import Any, Dict, List, Tuple
  import numpy
  from rl_coach.base_parameters import AgentParameters
  from rl_coach.saver import SaverCollection
  from rl_coach.spaces import SpacesDefinition
label_desc: Use image node_id 2 to create a new Architecture object from inherited base classes: object with example: obj = Architecture(agent_parameters, spaces, name)