SHOGUN  v3.2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
GaussianProcessBinaryClassification.h
Go to the documentation of this file.
00001 /*
00002  * This program is free software; you can redistribute it and/or modify
00003  * it under the terms of the GNU General Public License as published by
00004  * the Free Software Foundation; either version 3 of the License, or
00005  * (at your option) any later version.
00006  *
00007  * Written (W) 2013 Roman Votyakov
00008  */
00009 
00010 #ifndef _GAUSSIANPROCESSBINARYCLASSIFICATION_H_
00011 #define _GAUSSIANPROCESSBINARYCLASSIFICATION_H_
00012 
00013 #include <shogun/lib/config.h>
00014 
00015 #ifdef HAVE_EIGEN3
00016 
00017 #include <shogun/machine/GaussianProcessMachine.h>
00018 
00019 namespace shogun
00020 {
00021 
00025 class CGaussianProcessBinaryClassification : public CGaussianProcessMachine
00026 {
00027 public:
00029     MACHINE_PROBLEM_TYPE(PT_BINARY);
00030 
00032     CGaussianProcessBinaryClassification();
00033 
00038     CGaussianProcessBinaryClassification(CInferenceMethod* method);
00039 
00040     virtual ~CGaussianProcessBinaryClassification();
00041 
00048     virtual CBinaryLabels* apply_binary(CFeatures* data=NULL);
00049 
00056     SGVector<float64_t> get_mean_vector(CFeatures* data);
00057 
00064     SGVector<float64_t> get_variance_vector(CFeatures* data);
00065 
00072     SGVector<float64_t> get_probabilities(CFeatures* data);
00073 
00078     virtual EMachineType get_classifier_type()
00079     {
00080         return CT_GAUSSIANPROCESSBINARY;
00081     }
00082 
00087     virtual const char* get_name() const
00088     {
00089         return "GaussianProcessBinaryClassification";
00090     }
00091 
00092 protected:
00099     virtual bool train_machine(CFeatures* data=NULL);
00100 
00107     virtual bool is_label_valid(CLabels *lab) const
00108     {
00109         return (lab->get_label_type()==LT_BINARY);
00110     }
00111 };
00112 }
00113 #endif /* HAVE_EIGEN3 */
00114 #endif /* _GAUSSIANPROCESSCLASSIFICATION_H_ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

SHOGUN Machine Learning Toolbox - Documentation