Ejemplo n.º 1
0
 def var(self, var):
     try:
         ispositive = (var.value > 0).all()
     except AttributeError:
         ispositive = (var.value > 0)
     if not ispositive:
         raise ValueError("value of var must all be positive")
     self._var = var
     self.parameter["std"] = sqrt(var)
Ejemplo n.º 2
0
    def tau(self, tau):
        try:
            ispositive = (tau.value > 0).all()
        except AttributeError:
            ispositive = (tau.value > 0)

        if not ispositive:
            raise ValueError("value of tau must be positive")
        self._tau = tau
        self.parameter["std"] = 1 / sqrt(tau)
    def _pdf(self, x):
        assert x.shape[-1] == self.mu.size
        if x.ndim == 1:
            squeeze = True
            x = broadcast_to(x, (1, self.mu.size))
        else:
            squeeze = False
        assert x.ndim == 2
        d = x - self.mu
        d = d.transpose()
        p = (
            exp(-0.5 * (solve(self.cov, d) * d).sum(axis=0))
            / (2 * np.pi) ** (self.mu.size * 0.5)
            / sqrt(det(self.cov))
        )
        if squeeze:
            p = p.sum()

        return p
Ejemplo n.º 4
0
 def _pdf(self, x):
     return (exp(-0.5 * square(
         (x - self.mu) / self.std)) / sqrt(2 * np.pi) / self.std)
Ejemplo n.º 5
0
 def _pdf(self, x):
     gauss = (
         exp(-0.5 * square((x - self.mu) / self.std))
         / sqrt(2 * np.pi) / self.std
     )
     return (self.coef * gauss).sum(axis=self.axis)