class_docstr: Policy network.
  
  :param obs_shapes: The shapes of all observations as a dict.
  :param action_logits_shapes: The shapes of all actions as a dict structure.
  :param non_lin: The nonlinear activation to be used.
class_docstr_tok: ["Policy","network",".",":","param","obs_shapes",":","The","shapes","of","all","observations","as","a","dict",".",":","param","action_logits_shapes",":","The","shapes","of","all","actions","as","a","dict","structure",".",":","param","non_lin",":","The","nonlinear","activation","to","be","used","."]
docstr: Compute forward pass through the network.
  
  :param xx: Input dict.
  :return: The computed output of the network.
docstr_tok: ["Compute","forward","pass","through","the","network",".",":","param","xx",":","Input","dict",".",":","return",":","The","computed","output","of","the","network","."]
code: def forward(
      self, xx: Dict[str, torch.Tensor]
  ) -> Dict[str, torch.Tensor]:
      """Compute forward pass through the network.
  
      :param xx: Input dict.
      :return: The computed output of the network.
      """
      return self.perception_net(xx)
  
file_path: maze/maze/test/shared_test_utils/dummy_models/actor_model.py
imports: from typing import Dict, Sequence
  import torch
  import torch.nn
  from maze.perception.blocks.feed_forward.dense import DenseBlock
  from maze.perception.blocks.inference import InferenceBlock
  from maze.perception.blocks.output.linear import LinearOutputBlock
  from maze.perception.weight_init import make_module_init_normc
  from maze.test.shared_test_utils.dummy_models.base_model import DummyBaseNet
label_desc: Use image node_id 2 for calling the DummyPolicyNet obj's underlying member method code with example usage: obj.forward(xx) and returns: self