docs: def score_events(self, obs, pstates):
          """
          Compute the log probability of each event under the model.
          """
          pstates_idx = np.array([self.e[p] for p in pstates])
  
          framelogprob = self._compute_log_likelihood(obs, pstates_idx)
          _, fwdlattice = self._do_forward_pass(framelogprob, pstates_idx)
          L = logsumexp(fwdlattice, axis=1)
          return np.concatenate([L[[0]], np.diff(L)])