33#ifndef QDTSNE_INITIALIZE_HPP
34#define QDTSNE_INITIALIZE_HPP
43#include "gaussian.hpp"
44#include "symmetrize.hpp"
58template<
int num_dim_,
typename Index_,
typename Float_>
59Status<num_dim_, Index_, Float_>
initialize(NeighborList<Index_, Float_> nn, Float_ perp,
const Options& options) {
60 compute_gaussian_perplexity(nn, perp, options.num_threads);
61 symmetrize_matrix(nn);
62 return Status<num_dim_, Index_, Float_>(std::move(nn), options);
84template<
int num_dim_,
typename Index_,
typename Float_>
109template<
int num_dim_,
typename Dim_,
typename Index_,
typename Float_>
114 throw std::runtime_error(
"number of observations should be greater than 3 * perplexity");
138template<
int num_dim_,
typename Dim_,
typename Index_,
typename Float_>
Options for the t-SNE algorithm.
Status of the t-SNE iterations.
Status of the t-SNE iterations.
Definition Status.hpp:64
size_t num_observations() const
Definition Status.hpp:118
int perplexity_to_k(double perplexity)
Definition utils.hpp:44
Status< num_dim_, Index_, Float_ > initialize(NeighborList< Index_, Float_ > neighbors, const Options &options)
Definition initialize.hpp:85
Options for initialize().
Definition Options.hpp:14