#include <randomkfold.h>
|
| std::vector< std::tuple< std::vector< gsl::index >, std::vector< gsl::index > > > | split_batch |
| |
Definition at line 43 of file randomkfold.h.
◆ RandomKFoldParallel() [1/3]
| Cosan::RandomKFoldParallel::RandomKFoldParallel |
( |
| ) |
|
|
inline |
◆ RandomKFoldParallel() [2/3]
| Cosan::RandomKFoldParallel::RandomKFoldParallel |
( |
gsl::index |
kfoldnumber | ) |
|
|
inline |
◆ RandomKFoldParallel() [3/3]
| Cosan::RandomKFoldParallel::RandomKFoldParallel |
( |
gsl::index |
nrows, |
|
|
gsl::index |
kfoldnumber |
|
) |
| |
|
inline |
◆ GetSplit()
| std::vector< std::tuple<std::vector<gsl::index>,std::vector<gsl::index> > > Cosan::RandomKFoldParallel::GetSplit |
( |
| ) |
& |
|
inline |
◆ SetSplit()
| void Cosan::RandomKFoldParallel::SetSplit |
( |
gsl::index |
nrows | ) |
|
|
inlinevirtual |
Reimplemented from Cosan::Splitter.
Definition at line 48 of file randomkfold.h.
52 std::vector<gsl::index> idx(nrows);
53 std::iota(idx.begin(), idx.end(), 0);
57 #pragma omp parallel for
59 std::vector<gsl::index> testidx,trainidx;
60 std::sample(idx.begin(), idx.end(), std::back_inserter(testidx),
61 foldSize, std::mt19937{std::random_device{}()});
62 std::sort(testidx.begin(),testidx.end());
63 std::set_difference(idx.begin(), idx.end(), testidx.begin(), testidx.end(),
64 std::inserter(trainidx, trainidx.begin()));
65 fmt::print(
"Current Index is {:}, the current thread num is {:}, total number of threads {:}. trainidx size:{:}, testidx size:{:}\n",
66 i, omp_get_thread_num(),omp_get_num_threads(),trainidx.size(),testidx.size());
◆ split_batch
| std::vector< std::tuple<std::vector<gsl::index>,std::vector<gsl::index> > > Cosan::RandomKFoldParallel::split_batch |
|
private |
The documentation for this class was generated from the following file: