41 #ifndef _KLINFERENCEMETHOD_H_
42 #define _KLINFERENCEMETHOD_H_
53 template <
class,
int,
int,
int,
int,
int>
class Matrix;
54 template <
class,
int>
class LDLT;
105 virtual const char*
get_name()
const {
return "KLInferenceMethod"; }
220 int max_linesearch = 1000,
222 int max_iterations = 1000,
233 int orthantwise_start = 0,
234 int orthantwise_end = 1);
virtual void set_lbfgs_parameters(int m=100, int max_linesearch=1000, int linesearch=LBFGS_LINESEARCH_BACKTRACKING_STRONG_WOLFE, int max_iterations=1000, float64_t delta=0.0, int past=0, float64_t epsilon=1e-5, float64_t min_step=1e-20, float64_t max_step=1e+20, float64_t ftol=1e-4, float64_t wolfe=0.9, float64_t gtol=0.9, float64_t xtol=1e-16, float64_t orthantwise_c=0.0, int orthantwise_start=0, int orthantwise_end=1)
float64_t m_orthantwise_c
virtual bool supports_regression() const
virtual SGVector< float64_t > get_derivative_wrt_likelihood_model(const TParameter *param)
virtual SGMatrix< float64_t > get_cholesky()
The Inference Method base class.
virtual void set_exp_factor(float64_t exp_factor)
The class Labels models labels, i.e. class assignments of objects.
The variational Gaussian Likelihood base class. The variational distribution is Gaussian.
virtual void update_init()
virtual void update_approx_cov()=0
virtual SGVector< float64_t > get_derivative_wrt_mean(const TParameter *param)
virtual bool lbfgs_precompute()=0
An abstract class of the mean function.
virtual const char * get_name() const
static const float64_t epsilon
SGMatrix< float64_t > m_Sigma
float64_t m_min_coeff_kernel
virtual float64_t get_negative_log_marginal_likelihood()
virtual void set_min_coeff_kernel(float64_t min_coeff_kernel)
virtual void check_variational_likelihood(CLikelihoodModel *mod) const
virtual float64_t lbfgs_optimization()
virtual SGVector< float64_t > get_derivative_wrt_inference_method(const TParameter *param)
virtual bool supports_regression() const
virtual void set_max_attempt(index_t max_attempt)
virtual SGVector< float64_t > get_posterior_mean()
virtual bool supports_binary() const
virtual float64_t get_derivative_related_cov(SGMatrix< float64_t > dK)=0
virtual SGMatrix< float64_t > get_posterior_covariance()
Matrix< float64_t,-1,-1, 0,-1,-1 > MatrixXd
virtual Eigen::LDLT< Eigen::MatrixXd, 0x1 > update_init_helper()
The KL approximation inference method class.
virtual float64_t get_nlml_wrt_parameters()
all of classes and functions are contained in the shogun namespace
virtual void set_noise_factor(float64_t noise_factor)
virtual SGVector< float64_t > get_derivative_wrt_kernel(const TParameter *param)
virtual bool supports_binary() const
The class Features is the base class of all feature objects.
SGVector< float64_t > m_mu
SGVector< float64_t > m_s2
virtual void check_members() const
virtual void get_gradient_of_nlml_wrt_parameters(SGVector< float64_t > gradient)=0
virtual CVariationalGaussianLikelihood * get_variational_likelihood() const
virtual ~CKLInferenceMethod()
virtual void set_model(CLikelihoodModel *mod)
The Likelihood model base class.
virtual float64_t get_negative_log_marginal_likelihood_helper()=0
virtual void compute_gradient()
CLikelihoodModel * m_model
virtual EInferenceType get_inference_type() const