code: def test_logprob(self):
      num_timesteps = 5
      y = self._build_placeholder([1.0, 2.5, 4.3, 6.1, 7.8])
  
      ssm = SemiLocalLinearTrendStateSpaceModel(
          num_timesteps=num_timesteps,
          level_scale=self._build_placeholder(0.5),
          slope_scale=self._build_placeholder(0.5),
          slope_mean=self._build_placeholder(0.2),
          autoregressive_coef=self._build_placeholder(0.3),
          initial_state_prior=mvn_diag.MultivariateNormalDiag(
              scale_diag=self._build_placeholder([1.0, 1.0])
          ),
      )
  
      lp = ssm.log_prob(y[:, np.newaxis])
      expected_lp = -9.846248626708984
      self.assertAllClose(self.evaluate(lp), expected_lp)
  
imports: import numpy
  import tensorflow.compat.v1
  import tensorflow.compat.v2
  from tensorflow_probability.python.distributions import mvn_diag
  from tensorflow_probability.python.internal import tensorshape_util
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.sts.components.local_linear_trend import LocalLinearTrendStateSpaceModel
  from tensorflow_probability.python.sts.components.semilocal_linear_trend import SemiLocalLinearTrendStateSpaceModel
label_desc: Use image node_id 1 for calling the _SemiLocalLinearTrendStateSpaceModelTest obj's underlying member method code with example usage: obj.test_logprob() without return types