def resample(self, data=[], stats=None): if len(data) > 0 or stats is not None: stats = self._get_statistics(data) if stats is None else stats for itr in range(self.niter): self.A, self.sigma = \ sample_mniw(*self._natural_to_standard( self.natural_hypparam + stats)) mat = self.M_0 - self.A self.resample_K(1. / 2 * np.einsum( 'ij,ij->j', mat, np.linalg.solve(self.sigma, mat))) else: self.resample_K() super(ARDRegression, self).resample()
def resample(self,data=[],stats=None): if len(data) > 0 or stats is not None: stats = self._get_statistics(data) if stats is None else stats for itr in range(self.niter): self.A, self.sigma = \ sample_mniw(*self._natural_to_standard( self.natural_hypparam + stats)) mat = self.M_0 - self.A self.resample_K(1./2*np.einsum( 'ij,ij->j',mat,np.linalg.solve(self.sigma,mat))) else: self.resample_K() super(ARDRegression,self).resample()
def resample_from_mf(self): self.A, self.sigma = sample_mniw( *self._natural_to_standard(self.mf_natural_hypparam))
def resample(self, data=[], stats=None): stats = self._get_statistics(data) if stats is None else stats self.A, self.sigma = sample_mniw( *self._natural_to_standard(self.natural_hypparam + stats)) self._initialize_mean_field()
def resample(self,data=[],stats=None): stats = self._get_statistics(data) if stats is None else stats self.A, self.sigma = sample_mniw( *self._natural_to_standard(self.natural_hypparam + stats)) self._initialize_mean_field()