| 821 | } |
| 822 | |
| 823 | bool NeedToUseTreeLevelCaching( |
| 824 | const NCatboostOptions::TCatBoostOptions& params, |
| 825 | ui32 maxBodyTailCount, |
| 826 | ui32 approxDimension) { |
| 827 | |
| 828 | const ui32 maxLeafCount = 1 << params.ObliviousTreeOptions->MaxDepth; |
| 829 | // TODO(nikitxskv): Pairwise scoring doesn't use statistics from previous tree level. Need to fix it. |
| 830 | return ( |
| 831 | IsSamplingPerTree(params.ObliviousTreeOptions) && |
| 832 | !IsPairwiseScoring(params.LossFunctionDescription->GetLossFunction()) && |
| 833 | maxLeafCount * approxDimension * maxBodyTailCount < 64 * 1 * 10); |
| 834 | } |
| 835 | |
| 836 | bool UseAveragingFoldAsFoldZero(const TLearnContext& ctx) { |
| 837 | const auto lossFunction = ctx.Params.LossFunctionDescription->GetLossFunction(); |
no test coverage detected