GMNPSVM.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) 1999-2008 Vojtech Franc, xfrancv@cmp.felk.cvut.cz
00008  * Copyright (C) 1999-2008 Center for Machine Perception, CTU FEL Prague
00009  */
00010 
00011 #ifndef _GMNPSVM_H___
00012 #define _GMNPSVM_H___
00013 
00014 #include <shogun/lib/common.h>
00015 #include <shogun/multiclass/MulticlassSVM.h>
00016 #include <shogun/features/Features.h>
00017 
00018 namespace shogun
00019 {
00024 class CGMNPSVM : public CMulticlassSVM
00025 {
00026     void init();
00027 
00028     public:
00030         CGMNPSVM();
00031 
00038         CGMNPSVM(float64_t C, CKernel* k, CLabels* lab);
00039 
00041         virtual ~CGMNPSVM();
00042 
00047         virtual EMachineType get_classifier_type() { return CT_GMNPSVM; }
00048 
00058         float64_t* get_basealphas_ptr(index_t* y, index_t* x);
00059 
00061         virtual const char* get_name() const { return "GMNPSVM"; }
00062 
00063     protected:
00072         virtual bool train_machine(CFeatures* data=NULL);
00073 
00074     protected:
00080         // is the basic untransformed alpha, needed for MKL
00081         float64_t* m_basealphas;
00083         index_t m_basealphas_y;
00085         index_t m_basealphas_x;
00086 };
00087 }
00088 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

SHOGUN Machine Learning Toolbox - Documentation