41 #ifndef _KLINFERENCE_H_ 42 #define _KLINFERENCE_H_ 44 #include <shogun/lib/config.h> 51 template <
class,
int,
int,
int,
int,
int>
class Matrix;
52 template <
class,
int>
class LDLT;
77 friend class KLInferenceCostFunction;
103 virtual const char*
get_name()
const {
return "KLInference"; }
116 virtual float64_t get_negative_log_marginal_likelihood();
158 return m_model->supports_regression();
168 return m_model->supports_binary();
204 virtual void set_noise_factor(
float64_t noise_factor);
212 virtual void set_max_attempt(
index_t max_attempt);
220 virtual void set_exp_factor(
float64_t exp_factor);
228 virtual void set_min_coeff_kernel(
float64_t min_coeff_kernel);
234 virtual void register_minimizer(
Minimizer* minimizer);
238 virtual void compute_gradient();
255 virtual void update_init();
276 virtual void update_approx_cov()=0;
338 virtual float64_t get_negative_log_marginal_likelihood_helper()=0;
345 virtual float64_t get_nlml_wrt_parameters();
362 virtual bool precompute()=0;
The class Labels models labels, i.e. class assignments of objects.
The variational Gaussian Likelihood base class. The variational distribution is Gaussian.
virtual const char * get_name() const
An abstract class of the mean function.
std::enable_if<!std::is_same< T, complex128_t >::value, float64_t >::type mean(const Container< T > &a)
virtual bool supports_binary() const
float64_t m_min_coeff_kernel
virtual EInferenceType get_inference_type() const
The KL approximation inference method class.
SGVector< float64_t > m_mu
Matrix< float64_t,-1,-1, 0,-1,-1 > MatrixXd
SGMatrix< float64_t > m_Sigma
SGVector< float64_t > m_s2
virtual bool supports_regression() const
all of classes and functions are contained in the shogun namespace
The Inference Method base class.
The class Features is the base class of all feature objects.
void(* update)(float *foo, float bar)
The minimizer base class.
The Likelihood model base class.