Esempio n. 1
0
    def __init__(self,
                 min_components=3,
                 max_step_components=30,
                 max_components=60,
                 a_split=0.8,
                 forgetting_factor=0.05,
                 plot=False,
                 plot_dims=[0, 1]):

        GMM.__init__(self, n_components=min_components, covariance_type='full')

        self.params = {
            'init_components': min_components,
            'max_step_components': max_step_components,
            'max_components': max_components,
            'a_split': a_split,
            'plot': plot,
            'plot_dims': plot_dims,
            'forgetting_factor': forgetting_factor
        }

        self.type = 'IGMM'
        self.initialized = False

        if self.params['plot']:
            self.fig_old, self.ax_old = plt.subplots(1, 3)
            self.fig_old.suptitle("Incremental Learning of GMM")
            self.ax_old[0].set_title('Old Model')
            self.ax_old[1].set_title('Short Term Model')
            self.ax_old[2].set_title('Current Term Model')
            self.fig_old.show()
Esempio n. 2
0
    def __init__(self,
                 min_components=3,
                 max_step_components=30,
                 max_components=60,
                 a_split=0.8,
                 forgetting_factor=DynamicParameter(0.05),
                 x_dims=None,
                 y_dims=None):

        GMM.__init__(self, n_components=min_components, covariance_type='full')

        if isinstance(forgetting_factor, float):
            forgetting_factor = DynamicParameter(forgetting_factor)

        self.params = {
            'init_components': min_components,
            'max_step_components': max_step_components,
            'max_components': max_components,
            'a_split': a_split,
            'forgetting_factor': forgetting_factor,
            'x_dims': x_dims,
            'y_dims': y_dims,
            'infer_fixed': False
        }

        if x_dims is not None and y_dims is not None:
            self.params['infer_fixed'] = True

        self.type = 'IGMM'
        self.initialized = False
Esempio n. 3
0
    def __init__(self,
                 min_components=3,
                 max_components=10,
                 distance_method="Kullback-leiber",
                 merge_type="moment_presaving"):

        GaussianMixture.__init__(self,
                                 n_components=min_components,
                                 covariance_type='full')

        self.min_components = min_components
        self.max_components = max_components
        self.type = 'CMGMM'
        self.distance_method = distance_method  #Kullback-leiber,ISD, Jensen-shannon
        self.merge_type = merge_type  #moment_presaving,isomorphic
        self.initialized = False
        self.verbose = False
Esempio n. 4
0
    def __init__(self,
                 min_components=3,
                 max_step_components=30,
                 max_components=60,
                 a_split=0.8,
                 forgetting_factor=DynamicParameter(0.05),
                 x_dims=None,
                 y_dims=None,
                 plot=False,
                 plot_dims=[0, 1]):

        GMM.__init__(self, n_components=min_components, covariance_type='full')

        if isinstance(forgetting_factor, float):
            forgetting_factor = DynamicParameter(forgetting_factor)

        self.params = {
            'init_components': min_components,
            'max_step_components': max_step_components,
            'max_components': max_components,
            'a_split': a_split,
            'plot': plot,
            'plot_dims': plot_dims,
            'forgetting_factor': forgetting_factor,
            'x_dims': x_dims,
            'y_dims': y_dims,
            'infer_fixed': False
        }

        if x_dims is not None and y_dims is not None:
            self.params['infer_fixed'] = True

        self.type = 'IGMM'
        self.initialized = False

        if self.params['plot']:
            self.fig_old, self.ax_old = plt.subplots(1, 3)
            self.fig_old.suptitle("Incremental Learning of GMM")
            self.ax_old[0].set_title('Old Model')
            self.ax_old[1].set_title('Short Term Model')
            self.ax_old[2].set_title('Current Term Model')
            self.fig_old.show()
Esempio n. 5
0
 def __init__(self, *args, values=None, **kwargs):
     """ Instantiate Gaussian mixture model. """
     self.values = values
     GaussianMixture.__init__(self, *args, **kwargs)