MCPcopy Create free account
hub / github.com/catboost/catboost / TCVIterator

Class TCVIterator

library/cpp/linear_regression/benchmark/pool.h:23–55  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

21 };
22
23 class TCVIterator {
24 private:
25 const TPool& ParentPool;
26
27 size_t FoldsCount;
28
29 EIteratorType IteratorType;
30 size_t TestFoldNumber;
31
32 TVector<size_t> InstanceFoldNumbers;
33 const size_t* Current;
34
35 TMersenne<ui64> RandomGenerator;
36
37 public:
38 TCVIterator(const TPool& parentPool,
39 const size_t foldsCount,
40 const EIteratorType iteratorType);
41
42 void ResetShuffle();
43
44 void SetTestFold(const size_t testFoldNumber);
45
46 bool IsValid() const;
47
48 const TInstance& operator*() const;
49 const TInstance* operator->() const;
50 TPool::TCVIterator& operator++();
51
52 private:
53 void Advance();
54 bool TakeCurrent() const;
55 };
56
57 void ReadFromFeatures(const TString& featuresPath);
58 TCVIterator CrossValidationIterator(const size_t foldsCount, const EIteratorType iteratorType) const;

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected