class_docstr: Wrapper class to treat a batch of independent univariate HMMs as a single
  multivariate distribution. This converts distribution shapes as follows:
  
  +-----------+--------------------+---------------------+
  |           |       .batch_shape | .event_shape        |
  +===========+====================+=====================+
  | base_dist | shape + (obs_dim,) | (duration, 1)       |
  +-----------+--------------------+---------------------+
  |    result |              shape | (duration, obs_dim) |
  +-----------+--------------------+---------------------+
  
  :param HiddenMarkovModel base_dist: A base hidden Markov model instance.
class_docstr_tok: ["Wrapper","class","to","treat","a","batch","of","independent","univariate","HMMs","as","a","single","multivariate","distribution",".","This","converts","distribution","shapes","as","follows",":","+","--","--","--","--","--","-+","--","--","--","--","--","--","--","--","--","--","+","--","--","--","--","--","--","--","--","--","--","-+","|","|",".batch_shape","|",".event_shape","|","+===========+====================+=====================+","|","base_dist","|","shape","+","(","obs_dim",",",")","|","(","duration",",","1",")","|","+","--","--","--","--","--","-+","--","--","--","--","--","--","--","--","--","--","+","--","--","--","--","--","--","--","--","--","--","-+","|","result","|","shape","|","(","duration",",","obs_dim",")","|","+","--","--","--","--","--","-+","--","--","--","--","--","--","--","--","--","--","+","--","--","--","--","--","--","--","--","--","--","-+",":","param","HiddenMarkovModel","base_dist",":","A","base","hidden","Markov","model","instance","."]
code: def support(self):
      return self.base_dist.support
  
imports: import torch
  import torch.nn.functional
  from pyro.ops.gamma_gaussian import GammaGaussian, gamma_and_mvn_to_gamma_gaussian, gamma_gaussian_tensordot, matrix_and_mvn_to_gamma_gaussian
  from pyro.ops.gaussian import Gaussian, gaussian_tensordot, matrix_and_mvn_to_gaussian, mvn_to_gaussian, sequential_gaussian_filter_sample, sequential_gaussian_tensordot
  from pyro.ops.indexing import Vindex
  from pyro.ops.special import safe_log
  from pyro.ops.tensor_utils import cholesky_solve, safe_cholesky
  from .None import constraints
  from .torch import Categorical, Gamma, Independent, MultivariateNormal
  from .torch_distribution import TorchDistribution
  from .util import broadcast_shape, torch_jit_script_if_tracing
label_desc: Use image node_id 2 for calling the IndependentHMM obj's underlying member method code with example usage: obj.support() and returns: self