diff options
author | Samuel Fadel <samuelfadel@gmail.com> | 2015-10-22 16:39:15 -0200 |
---|---|---|
committer | Samuel Fadel <samuelfadel@gmail.com> | 2015-10-22 16:39:15 -0200 |
commit | ad4fbabeca2cbdf4cb47f1a923183027494ab0a8 (patch) | |
tree | 4a9c16454ff4d802b23a8271f4005ee1846f7b1b /mp.h | |
parent | 99ac0af03e1695ba4de2c42e949fce61b84850e5 (diff) |
Added PLMP as an alternative technique to use; knn() is now exposed in the mp namespace.
Diffstat (limited to 'mp.h')
-rw-r--r-- | mp.h | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -10,6 +10,8 @@ typedef double (*DistFunc)(const arma::rowvec &, const arma::rowvec &); double euclidean(const arma::rowvec &x1, const arma::rowvec &x2); arma::mat dist(const arma::mat &X, DistFunc dfunc = euclidean); +void knn(const arma::mat &dmat, arma::uword i, arma::uword k, arma::uvec &nn, arma::vec &dist); + // Evaluation measures typedef arma::vec (*MeasureFunc)(const arma::mat &distA, const arma::mat &distB); arma::vec neighborhoodPreservation(const arma::mat &distA, const arma::mat &distB, arma::uword k = 10); @@ -19,6 +21,12 @@ arma::vec silhouette(const arma::mat &distA, const arma::mat &distB, const arma: arma::mat lamp(const arma::mat &X, const arma::uvec &sampleIndices, const arma::mat &Ys); void lamp(const arma::mat &X, const arma::uvec &sampleIndices, const arma::mat &Ys, arma::mat &Y); +arma::mat plmp(const arma::mat &X, const arma::uvec &sampleIndices, const arma::mat &Ys); +void plmp(const arma::mat &X, const arma::uvec &sampleIndices, const arma::mat &Ys, arma::mat &Y); + +//arma::mat lsp(const arma::mat &X, const arma::uvec &sampleIndices, const arma::mat &Ys, int k = 15); +//void lsp(const arma::mat &X, const arma::uvec &sampleIndices, const arma::mat &Ys, arma::mat &Y, int k = 15); + arma::mat forceScheme(const arma::mat &D, arma::mat &Y, size_t maxIter = 20, double tol = 1e-3, double fraction = 8); arma::mat tSNE(const arma::mat &X, arma::uword k = 2, double perplexity = 30, arma::uword nIter = 1000); |