class_docstr: Write me
      
code: def __init__(
      self,
      V_model,
      L_model,
      mu_model,
      random_process=None,
      covariance_mode="full",
      *args,
      **kwargs,
  ):
      super(NAFAgent, self).__init__(*args, **kwargs)
  
      # TODO: Validate (important) input.
  
      # Parameters.
      self.random_process = random_process
      self.covariance_mode = covariance_mode
  
      # Related objects.
      self.V_model = V_model
      self.L_model = L_model
      self.mu_model = mu_model
  
      # State.
      self.reset_states()
  
imports: from __future__ import division
  import warnings
  import keras.backend
  from keras.models import Model
  from keras.layers import Lambda, Input, Layer, Dense
  from rl.core import Agent
  from rl.policy import EpsGreedyQPolicy, GreedyQPolicy
  from rl.util import *
label_desc: Use image node_id 1 to create a new NAFAgent object from inherited base classes: AbstractDQNAgent with example: obj = NAFAgent(V_model, L_model, mu_model, random_process, covariance_mode)