85 const std::string &EigenSolver,
86 const bool InputIsADistanceMatrix) {
87 if(InputIsADistanceMatrix) {
97 const std::string &EigenSolver,
98 const float Tolerance,
99 const int MaxIteration,
100 const std::string &Method_s,
101 const float HessianTolerance,
102 const float ModifiedTolerance,
103 const std::string &NeighborsAlgorithm) {
116 const int MaxIteration,
119 const bool Dissimilarity) {
133 const float Exaggeration,
134 const float LearningRate,
135 const int MaxIteration,
136 const int MaxIterationProgress,
137 const float GradientThreshold,
138 const std::string &Metric,
139 const std::string &Init,
141 const std::string &Method_s,
157 const float Tolerance,
158 const int MaxIteration,
159 const std::string &PathMethod,
160 const std::string &NeighborsAlgorithm) {
170 const std::string &SVDSolver,
171 const float Tolerance,
172 const std::string &MaxIteration) {
200#ifndef TTK_ENABLE_SCIKIT_LEARN
202 this->
printWrn(
"TTK has been built without scikit-learn.");
203 this->
printWrn(
"Defaulting to the `TopoMap` backend.");
208 std::string methodName;
211 methodName =
"Spectral Embedding";
214 methodName =
"Locally Linear Embedding";
217 methodName =
"Multi-Dimensional Scaling";
220 methodName =
"t-distributed Stochastic Neighbor Embedding";
223 methodName =
"Isomap Embedding";
226 methodName =
"Principal Component Analysis";
229 methodName =
"TopoMap (IEEE VIS 2020)";
232 this->
printMsg(
"Using backend `" + methodName +
"`");
262 int execute(std::vector<std::vector<double>> &outputEmbedding,
263 const std::vector<double> &inputMatrix,
266 int *insertionTimeForTopoMap =
nullptr)
const;
Minimalist debugging class.
int printWrn(const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
TTK VTK-filter that apply dimension reduction algorithms on input.
float lle_HessianTolerance
void setInputIsDeterministic(const int isDeterm)
void setPCAParameters(const bool Copy, const bool Whiten, const std::string &SVDSolver, const float Tolerance, const std::string &MaxIteration)
std::string iso_NeighborsAlgorithm
void setInputNumberOfNeighbors(const int numberOfNeighbors)
std::string se_EigenSolver
TopoMap::STRATEGY topomap_Strategy
void setInputModuleName(const std::string &moduleName)
std::string pca_MaxIteration
void setIsInputDistanceMatrix(const bool data)
void setTSNEParameters(const float Perplexity, const float Exaggeration, const float LearningRate, const int MaxIteration, const int MaxIterationProgress, const float GradientThreshold, const std::string &Metric, const std::string &Init, const int Verbose, const std::string &Method_s, const float Angle)
std::string iso_EigenSolver
std::string pca_SVDSolver
std::string iso_PathMethod
std::string mds_Dissimilarity
bool IsInputADistanceMatrix
std::string lle_NeighborsAlgorithm
void setLLEParameters(const float Regularization, const std::string &EigenSolver, const float Tolerance, const int MaxIteration, const std::string &Method_s, const float HessianTolerance, const float ModifiedTolerance, const std::string &NeighborsAlgorithm)
void setISOParameters(const std::string &EigenSolver, const float Tolerance, const int MaxIteration, const std::string &PathMethod, const std::string &NeighborsAlgorithm)
void setSEParameters(const std::string &Affinity, const float Gamma, const std::string &EigenSolver, const bool InputIsADistanceMatrix)
void setInputMethod(METHOD method)
void setInputFunctionName(const std::string &functionName)
std::string lle_EigenSolver
float lle_ModifiedTolerance
void setTopoParameters(const size_t AngularSampleNb, bool CheckMST)
void setMDSParameters(const bool Metric, const int Init, const int MaxIteration, const int Verbose, const float Epsilon, const bool Dissimilarity)
size_t topomap_AngularSampleNb
void setInputModulePath(const std::string &modulePath)
int execute(std::vector< std::vector< double > > &outputEmbedding, const std::vector< double > &inputMatrix, const int nRows, const int nColumns, int *insertionTimeForTopoMap=nullptr) const
void setInputNumberOfComponents(const int numberOfComponents)
int tsne_MaxIterationProgress
float tsne_GradientThreshold
printMsg(debug::output::BOLD+" | | | | | . \\ | | (__| | / __/| |_| / __/|__ _|"+debug::output::ENDCOLOR, debug::Priority::PERFORMANCE, debug::LineMode::NEW, stream)