From 7fdfc57ad07981b1a22a7f091ca6c4a64123a7d0 Mon Sep 17 00:00:00 2001 From: SebastianBruijns <> Date: Fri, 23 Sep 2022 20:19:13 +0200 Subject: [PATCH] real fix --- pybasicbayes/distributions/multinomial.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pybasicbayes/distributions/multinomial.py b/pybasicbayes/distributions/multinomial.py index f779c84..e13624f 100644 --- a/pybasicbayes/distributions/multinomial.py +++ b/pybasicbayes/distributions/multinomial.py @@ -111,13 +111,13 @@ class Categorical(GibbsSampling, MeanField, MeanFieldSVI, MaxLikelihood, MAP): self.weights = np.random.dirichlet(self.alphav_0 + counts) except ZeroDivisionError as e: # print("ZeroDivisionError {}".format(e)) - self.weights = np.random.dirichlet(self.alphav_0 + 0.03 + counts) + self.weights = np.random.dirichlet(self.alphav_0 + 0.01 + counts) except ValueError as e: # print("ValueError {}".format(e)) - self.weights = np.random.dirichlet(self.alphav_0 + 0.03 + counts) + self.weights = np.random.dirichlet(self.alphav_0 + 0.01 + counts) if np.isnan(self.weights).any(): - self.weights = np.random.dirichlet(self.alphav_0 + 0.03 + counts) - np.clip(self.weights, np.spacing(1.), np.inf, out=self.weights) + self.weights = np.random.dirichlet(self.alphav_0 + 0.01 + counts) + np.clip(self.weights, np.spacing(1.), 1-np.spacing(1.), out=self.weights) # NOTE: next line is so we can use Gibbs sampling to initialize mean field self._alpha_mf = self.weights * self.alphav_0.sum() assert (self._alpha_mf >= 0.).all() -- GitLab