code: def test_get_parameters(self):
      est = EM(self.model1, self.data1)
      cpds = est.get_parameters(seed=42, n_jobs=1, show_progress=False)
      for est_cpd in cpds:
          var = est_cpd.variables[0]
          orig_cpd = self.model1.get_cpds(var)
          self.assertTrue(orig_cpd.__eq__(est_cpd, atol=0.1))
  
      est = EM(self.model2, self.data2)
      cpds = est.get_parameters(seed=42, n_jobs=1, show_progress=False)
      for est_cpd in cpds:
          var = est_cpd.variables[0]
          orig_cpd = self.model2.get_cpds(var)
  
          if "Smoker" in orig_cpd.variables:
              orig_cpd.state_names["Smoker"] = [1, 0]
  
          self.assertTrue(orig_cpd.__eq__(est_cpd, atol=0.1))
  
file_path: pgmpy/pgmpy/tests/test_estimators/test_EM.py
imports: import unittest
  import numpy
  import pandas
  from joblib.externals.loky import get_reusable_executor
  from pgmpy import config
  from pgmpy.estimators import ExpectationMaximization
  from pgmpy.models import BayesianNetwork
  from pgmpy.sampling import BayesianModelSampling
  from pgmpy.utils import get_example_model
label_desc: Use image node_id 2 for calling the TestEMTorch obj's underlying member method code with example usage: obj.test_get_parameters() without return types