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

Method ProcessSplitsSet

catboost/libs/model/model_build_helper.cpp:100–126  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

98}
99
100void TCommonModelBuilderHelper::ProcessSplitsSet(const TSet<TModelSplit>& modelSplitSet, TModelTrees* trees) {
101 trees->SetApproxDimension(ApproxDimension);
102 for (auto& feature : FloatFeatures) {
103 feature.Borders.clear();
104 }
105 trees->SetFloatFeatures(std::move(FloatFeatures));
106
107 MakeFeaturesUnused(MakeArrayRef(CatFeatures.begin(), CatFeatures.end()));
108 MakeFeaturesUnused(MakeArrayRef(TextFeatures.begin(), TextFeatures.end()));
109 MakeFeaturesUnused(MakeArrayRef(EmbeddingFeatures.begin(), EmbeddingFeatures.end()));
110
111 trees->SetCatFeatures(std::move(CatFeatures));
112 trees->SetTextFeatures(std::move(TextFeatures));
113 trees->SetEmbeddingFeatures(std::move(EmbeddingFeatures));
114
115 trees->ProcessSplitsSet(modelSplitSet,
116 FloatFeaturesInternalIndexesMap,
117 CatFeaturesInternalIndexesMap,
118 TextFeaturesInternalIndexesMap,
119 EmbeddingFeaturesInternalIndexesMap);
120 for (const auto& split : modelSplitSet) {
121 const int binFeatureIdx = BinFeatureIndexes.ysize();
122 Y_ASSERT(!BinFeatureIndexes.contains(split));
123 BinFeatureIndexes[split] = binFeatureIdx;
124 }
125 Y_ASSERT(modelSplitSet.size() == BinFeatureIndexes.size());
126}
127
128
129TObliviousTreeBuilder::TObliviousTreeBuilder(

Callers

nothing calls this directly

Calls 14

MakeFeaturesUnusedFunction · 0.85
MakeArrayRefFunction · 0.85
SetApproxDimensionMethod · 0.80
SetFloatFeaturesMethod · 0.80
SetCatFeaturesMethod · 0.80
SetTextFeaturesMethod · 0.80
SetEmbeddingFeaturesMethod · 0.80
moveFunction · 0.50
clearMethod · 0.45
beginMethod · 0.45
endMethod · 0.45
ysizeMethod · 0.45

Tested by

no test coverage detected