class_docstr: Wrapper to pass predefined `outer_rank` to underlying projection net.
class_docstr_tok: ["Wrapper","to","pass","predefined","`","outer_rank","`","to","underlying","projection","net","."]
code: def __init__(
      self, sample_spec, predefined_outer_rank=1, weight_decay=0.0
  ):
      super(_TanhNormalProjectionNetworkWrapper, self).__init__(
          sample_spec=sample_spec, weight_decay=weight_decay
      )
      self.predefined_outer_rank = predefined_outer_rank
  
imports: import functools
  import os
  from absl import app
  from absl import flags
  from absl import logging
  import gin
  import numpy
  import reverb
  from rigl.rl.tfagents import sparse_tanh_normal_projection_network
  import tensorflow
  from tf_agents.agents import tf_agent
  from tf_agents.agents.sac import sac_agent
  from tf_agents.environments import suite_mujoco
  from tf_agents.keras_layers import inner_reshape
  from tf_agents.metrics import py_metrics
  from tf_agents.networks import nest_map
  from tf_agents.networks import sequential
  from tf_agents.policies import greedy_policy
  from tf_agents.policies import py_tf_eager_policy
  from tf_agents.policies import random_py_policy
  from tf_agents.replay_buffers import reverb_replay_buffer
  from tf_agents.replay_buffers import reverb_utils
  from tf_agents.train import actor
  from tf_agents.train import learner
  from tf_agents.train import triggers
  from tf_agents.train.utils import spec_utils
  from tf_agents.train.utils import strategy_utils
  from tf_agents.train.utils import train_utils
  from tf_agents.utils import common
  from tf_agents.utils import object_identity
label_desc: Use image node_id 1 to create a new _TanhNormalProjectionNetworkWrapper object from inherited base classes: sparse_tanh_normal_projection_network with example: obj = _TanhNormalProjectionNetworkWrapper(sample_spec, predefined_outer_rank, weight_decay)