15 namespace regression {
20 template<
class KERNEL,
class T=DTYPE>
31 template<
typename... Ts>
33 const arma::Row<T>& labels,
37 template<
typename... Ts>
39 const arma::Row<T>& labels );
43 template<
typename... Ts>
44 KernelRidge (
const Ts&... args ) : cov_(args...), lambda_(0.0) { }
50 void Train (
const arma::Mat<T>& inputs,
51 const arma::Row<T>& labels );
57 void Predict (
const arma::Mat<T>& inputs,
58 arma::Row<T>& labels )
const;
67 const arma::Row<T>& responses )
const;
69 const arma::Row<T>& Parameters ( )
const {
return parameters_; }
71 arma::Row<T>& Parameters ( ) {
return parameters_; }
73 double Lambda ( )
const {
return lambda_; }
75 double& Lambda ( ) {
return lambda_; }
80 template<
typename Archive>
83 ar ( cereal::make_nvp(
"parameters",parameters_),
84 cereal::make_nvp(
"lambda",lambda_),
85 cereal::make_nvp(
"cov",cov_),
86 cereal::make_nvp(
"train_inp",train_inp_));
91 arma::Mat<T> train_inp_;
92 arma::Row<T> parameters_;
100 template<
class KERNEL,
class T=DTYPE>
110 template<
typename... Ts>
111 Kernel (
const arma::Mat<T>& inputs,
112 const arma::Row<T>& labels,
118 template<
typename... Ts>
119 Kernel (
const Ts&... args ) : cov_(args...){ }
126 void Train (
const arma::Mat<T>& inputs,
127 const arma::Row<T>& labels );
133 void Predict (
const arma::Mat<T>& inputs,
134 arma::Row<T>& labels )
const;
143 const arma::Row<T>& responses)
const;
148 template<
typename Archive>
151 ar (cereal::make_nvp(
"train_inp",train_inp_),
152 cereal::make_nvp(
"train_lab",train_lab_),
153 cereal::make_nvp(
"cov",cov_));
157 arma::Mat<T> train_inp_;
158 arma::Row<T> train_lab_;
165 template<
class KERNEL,
class FUNC,
class T=DTYPE>
177 template<
class... Ts>
179 const arma::Row<T>& labels,
181 const size_t num_funcs,
183 template<
class... Ts>
185 const arma::Row<T>& labels,
192 template<
typename... Ts>
203 void Train (
const arma::Mat<T>& inputs,
204 const arma::Row<T>& labels );
209 void Predict (
const arma::Mat<T>& inputs,
210 arma::Row<T>& labels );
218 const arma::Row<T>& responses );
220 const arma::Row<T>& Parameters()
const {
return parameters_; }
222 arma::Row<T>& Parameters() {
return parameters_; }
224 T Lambda()
const {
return lambda_; }
226 T& Lambda() {
return lambda_; }
231 template<
typename Archive>
234 ar ( cereal::make_nvp(
"parameters",parameters_),
235 cereal::make_nvp(
"M",M_),
236 cereal::make_nvp(
"N",N_),
237 cereal::make_nvp(
"lambda",lambda_),
238 cereal::make_nvp(
"cov",cov_),
239 cereal::make_nvp(
"func",func_),
240 cereal::make_nvp(
"perc",perc_),
241 cereal::make_nvp(
"train_inp",train_inp_) );
246 arma::Mat<T> train_inp_;
247 arma::Row<T> parameters_;
KernelRidge(const arma::Mat< T > &inputs, const arma::Row< T > &labels, const double &lambda, const Ts &... args)
KernelRidge(const Ts &... args)
T ComputeError(const arma::Mat< T > &points, const arma::Row< T > &responses) const
void Predict(const arma::Mat< T > &inputs, arma::Row< T > &labels) const
void serialize(Archive &ar, const unsigned int)
void Train(const arma::Mat< T > &inputs, const arma::Row< T > &labels)
T ComputeError(const arma::Mat< T > &points, const arma::Row< T > &responses) const
void Train(const arma::Mat< T > &inputs, const arma::Row< T > &labels)
void serialize(Archive &ar, const unsigned int)
Kernel(const arma::Mat< T > &inputs, const arma::Row< T > &labels, const Ts &... args)
Kernel(const Ts &... args)
void Predict(const arma::Mat< T > &inputs, arma::Row< T > &labels) const
void Predict(const arma::Mat< T > &inputs, arma::Row< T > &labels)
void Train(const arma::Mat< T > &inputs, const arma::Row< T > &labels)
void serialize(Archive &ar, const unsigned int)
SemiParamKernelRidge(const arma::Mat< T > &inputs, const arma::Row< T > &labels, const T lambda, const size_t num_funcs, const Ts &... args)
T ComputeError(const arma::Mat< T > &points, const arma::Row< T > &responses)
SemiParamKernelRidge(const Ts &... args)