1#ifndef UMAPPP_STATUS_HPP
2#define UMAPPP_STATUS_HPP
5#include "optimize_layout.hpp"
24template<
typename Index_,
typename Float_>
31 my_epochs(std::move(epochs)),
32 my_options(std::move(options)),
33 my_engine(my_options.seed),
42 internal::EpochData<Index_, Float_> my_epochs;
44 std::mt19937_64 my_engine;
53 const auto& get_epoch_data()
const {
90 std::copy_n(my_embedding, n, ptr);
99 return my_epochs.current_epoch;
107 return my_epochs.total_epochs;
114 return my_epochs.head.size();
126 void run(
int epoch_limit = 0) {
127 if (epoch_limit == 0) {
128 epoch_limit = my_epochs.total_epochs;
132 internal::optimize_layout<Index_, Float_>(
144 internal::optimize_layout_parallel<Index_, Float_>(
Options for the UMAP algorithm.
Status of the UMAP optimization iterations.
Definition Status.hpp:25
const Float_ * embedding() const
Definition Status.hpp:72
size_t num_observations() const
Definition Status.hpp:113
int epoch() const
Definition Status.hpp:98
void set_embedding(Float_ *ptr, bool copy=true)
Definition Status.hpp:87
int num_epochs() const
Definition Status.hpp:106
int num_dimensions() const
Definition Status.hpp:64
void run(int epoch_limit=0)
Definition Status.hpp:126
Methods for UMAP.
Definition initialize.hpp:21
Options for initialize().
Definition Options.hpp:28
double repulsion_strength
Definition Options.hpp:82
int parallel_optimization
Definition Options.hpp:149
double learning_rate
Definition Options.hpp:106
double b
Definition Options.hpp:76
double a
Definition Options.hpp:68
int num_threads
Definition Options.hpp:134