SHOGUN  v3.2.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
TDistributedStochasticNeighborEmbedding.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 Vladyslav S. Gorbatiuk
00008  * Copyright (C) 2011-2013 Vladyslav S. Gorbatiuk
00009  */
00010 
00011 #ifndef TDISTRIBUTEDSTOCHASTICNEIGHBOREMBEDDING_H_
00012 #define TDISTRIBUTEDSTOCHASTICNEIGHBOREMBEDDING_H_
00013 #include <shogun/lib/config.h>
00014 #ifdef HAVE_EIGEN3
00015 #include <shogun/converter/EmbeddingConverter.h>
00016 #include <shogun/features/Features.h>
00017 
00018 namespace shogun
00019 {
00020 
00028 class CTDistributedStochasticNeighborEmbedding : public CEmbeddingConverter
00029 {
00030 public:
00031 
00033     CTDistributedStochasticNeighborEmbedding();
00034 
00036     virtual ~CTDistributedStochasticNeighborEmbedding();
00037 
00039     virtual const char* get_name() const;
00040 
00045     virtual CFeatures* apply(CFeatures* features);
00046 
00051     void set_theta(const float64_t theta);
00052 
00057     float64_t get_theta() const;
00058 
00063     void set_perplexity(const float64_t perplexity);
00064 
00069     float64_t get_perplexity() const;
00070 
00071 private:
00072 
00074     void init();
00075 
00076 private:
00077 
00079     float64_t m_theta;
00080 
00082     float64_t m_perplexity;
00083 
00084 }; /* class CTDistributedStochasticNeighborEmbedding */
00085 
00086 } /* namespace shogun */
00087 
00088 #endif /* HAVE_EIGEN3 */
00089 #endif /* TDISTRIBUTEDSTOCHASTICNEIGHBOREMBEDDING_H_ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

SHOGUN Machine Learning Toolbox - Documentation