def _predict_non_logged_density(self, Fmu, Fvar, Y): with params_as_tensors_for(self.invlink): gh_x, gh_w = hermgauss(self.num_gauss_hermite_points) p = self.invlink.prob_is_largest(Y, Fmu, Fvar, gh_x, gh_w) den = p * (1. - self.invlink.epsilon) + (1. - p) * ( self.invlink._eps_K1) return den
def variational_expectations(self, Fmu, Fvar, Y): with params_as_tensors_for(self.invlink): gh_x, gh_w = hermgauss(self.num_gauss_hermite_points) Fvar = Fvar + self.a p = self.invlink.prob_is_largest(Y, Fmu, Fvar, gh_x, gh_w) ve = p * tf.log(1. - self.invlink.epsilon) + (1. - p) * tf.log( self.invlink._eps_K1) return ve
def _predict_non_logged_density(self, Fmu, Fvar, Y): if isinstance(self.invlink, RobustMax): with params_as_tensors_for(self.invlink): gh_x, gh_w = hermgauss(self.num_gauss_hermite_points) p = self.invlink.prob_is_largest(Y, Fmu, Fvar, gh_x, gh_w) den = p * (1. - self.invlink.epsilon) + (1. - p) * (self.invlink._eps_K1) return den else: raise NotImplementedError
def variational_expectations(self, Fmu, Fvar, Y): if isinstance(self.invlink, RobustMax): with params_as_tensors_for(self.invlink): gh_x, gh_w = hermgauss(self.num_gauss_hermite_points) p = self.invlink.prob_is_largest(Y, Fmu, Fvar, gh_x, gh_w) ve = p * tf.log(1. - self.invlink.epsilon) + (1. - p) * tf.log(self.invlink._eps_K1) return ve else: raise NotImplementedError