예제 #1
0
 def _beta_vlb(self):
     return np.log(self.beta).sum() + self.gamma*np.log(1-cumsum(self.beta)).sum() \
            - 3*np.log(1-cumsum(self.beta,strict=True)).sum()
예제 #2
0
 def _grad_log_p_beta(beta, alpha):
     # NOTE: switched argument name gamma <-> alpha
     return  -(alpha-1)*rcumsum(1./(1-cumsum(beta))) \
             + 2*rcumsum(1./(1-cumsum(beta,strict=True)),strict=True)
예제 #3
0
 def feas(pt):
     return (pt > 0.).all() and pt.sum() < 1. and not np.isinf(
         1. / (1 - cumsum(pt))).any()
예제 #4
0
 def _beta_vlb(self):
     return np.log(self.beta).sum() + self.gamma*np.log(1-cumsum(self.beta)).sum() \
            - 3*np.log(1-cumsum(self.beta,strict=True)).sum()
예제 #5
0
 def _grad_log_p_beta(beta,alpha):
     # NOTE: switched argument name gamma <-> alpha
     return  -(alpha-1)*rcumsum(1./(1-cumsum(beta))) \
             + 2*rcumsum(1./(1-cumsum(beta,strict=True)),strict=True)
예제 #6
0
 def feas(pt):
     return (pt>0.).all() and pt.sum() < 1. and not np.isinf(1./(1-cumsum(pt))).any()