108 const std::string &EigenSolver,
109 const bool InputIsADistanceMatrix) {
110 if(InputIsADistanceMatrix) {
120 const std::string &EigenSolver,
121 const float Tolerance,
122 const int MaxIteration,
123 const std::string &Method_s,
124 const float HessianTolerance,
125 const float ModifiedTolerance,
126 const std::string &NeighborsAlgorithm) {
139 const int MaxIteration,
142 const bool Dissimilarity) {
156 const float Exaggeration,
157 const float LearningRate,
158 const int MaxIteration,
159 const int MaxIterationProgress,
160 const float GradientThreshold,
161 const std::string &Metric,
162 const std::string &Init,
164 const std::string &Method_s,
180 const float Tolerance,
181 const int MaxIteration,
182 const std::string &PathMethod,
183 const std::string &NeighborsAlgorithm) {
193 const std::string &SVDSolver,
194 const float Tolerance,
195 const std::string &MaxIteration) {
223#ifndef TTK_ENABLE_SCIKIT_LEARN
225 this->
printWrn(
"TTK has been built without scikit-learn.");
226 this->
printWrn(
"Defaulting to the `TopoMap` backend.");
231 std::string methodName;
234 methodName =
"Spectral Embedding";
237 methodName =
"Locally Linear Embedding";
240 methodName =
"Multi-Dimensional Scaling";
243 methodName =
"t-distributed Stochastic Neighbor Embedding";
246 methodName =
"Isomap Embedding";
249 methodName =
"Principal Component Analysis";
252 methodName =
"TopoMap (IEEE VIS 2020)";
255 methodName =
"Autoencoder";
258 this->
printMsg(
"Using backend `" + methodName +
"`");
288 int execute(std::vector<std::vector<double>> &outputEmbedding,
289 const std::vector<double> &inputMatrix,
292 int *insertionTimeForTopoMap =
nullptr)
const;
360 TopologicalDimensionReduction::REGUL::ASYMMETRIC_CASCADE};
int printWrn(const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const
float lle_HessianTolerance
TopologicalDimensionReduction::REGUL ae_Method
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 ae_Architecture
std::string iso_NeighborsAlgorithm
TopologicalDimensionReduction::OPTIMIZER ae_Optimizer
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)
std::string ae_Activation
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)
bool ae_BatchNormalization
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)
TopologicalDimensionReduction::MODEL ae_Model
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
TopologicalLoss::REGUL REGUL
TTK base package defining the standard types.
printMsg(debug::output::BOLD+" | | | | | . \\ | | (__| | / __/| |_| / __/| (_) |"+debug::output::ENDCOLOR, debug::Priority::PERFORMANCE, debug::LineMode::NEW, stream)