class_docstr: Lorenz System model.
  
  This class models the Lorenz System, a three-dimensional nonlinear dynamical
  system used to model atmospheric convection. This model defines a stochastic
  variant that follows the following differential equation:
  ```none
  x[0] ~ Normal(loc=0, scale=1)
  y[0] ~ Normal(loc=0, scale=1)
  z[0] ~ Normal(loc=0, scale=1)
  
  dx_dt[t] = 10 * (y[t] - x[t]) + w_x[t]
  dy_dt[t] = x[t] * (28 - z[t]) - y[t] + w_y[t]
  dz_dt[t] = x[t] * y[t] - 8 / 3 * z[t] + w_z[t]
  ```
  where `w_x[t]`, `w_y[t]` and `w_z[t]` are Gaussian innovation noise processes
  with a provided scale `innovation_scale`.
  
  The differential equation is numerically integrated using the Euler-Mariyama
  method whereafter the three time series `x`, `y`, and `z` (or a subset of
  them) are observed with Gaussian observation noise. Observations may be
  occluded with an `observation_mask` parameter.
code: def log_likelihood(self, params):
      return self._log_likelihood_fn(params)
  
imports: import functools
  import numpy
  import tensorflow.compat.v2
  import tensorflow_probability
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import tensor_util
  from inference_gym.internal import data
  from inference_gym.targets import bayesian_model
  from inference_gym.targets import model
  from inference_gym.targets.ground_truth import convection_lorenz_bridge
  from inference_gym.targets.ground_truth import convection_lorenz_bridge_unknown_scales
label_desc: Use image node_id 3 for calling the LorenzSystem obj's underlying member method code with example usage: obj.log_likelihood(params) and returns: self