class_docstr: Class to build GreedyNNPredictionPolicies.
code: def _distribution(self, time_step, policy_state):
      step = super(GreedyRewardPredictionPolicy, self)._distribution(
          time_step, policy_state
      )
      # Greedy is deterministic, so we know the chosen arm features here. We
      # save it here so the chosen arm features get correctly returned by
      # `tf_agents.policies.epsilon_greey_policy.EpsilonGreedyPolicy` wrapping a
      # `GreedyRewardPredictionPolicy` because `EpsilonGreedyPolicy` only accesses
      # the `distribution` method of the wrapped policy via
      # `tf_agents.policies.greedy_policy.GreedyPolicy`.
      action = step.action.sample()
      return self._maybe_save_chosen_arm_features(
          time_step, action, step
      )
  
file_path: agents/tf_agents/bandits/policies/greedy_reward_prediction_policy.py
imports: import tensorflow
  import tensorflow_probability
  from tf_agents.bandits.policies import reward_prediction_base_policy
  from tf_agents.policies import utils
label_desc: Use image node_id 2 for calling the GreedyRewardPredictionPolicy obj's underlying member method code with example usage: obj._distribution(time_step, policy_state) and returns: self