Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Boosting method implementation (Catboost) #1155

Merged
merged 20 commits into from
Oct 17, 2023
Merged

Boosting method implementation (Catboost) #1155

merged 20 commits into from
Oct 17, 2023

Conversation

aPovidlo
Copy link
Collaborator

@aPovidlo aPovidlo commented Aug 22, 2023

First step in global boosting methods refactoring.
Taking out Catboost model from SkLearnEvaluationStrategy into separate Boosting class strategy.

New features for CatBoost:

  • Converting data into Pool;
  • Fitting with eval_set, early_stopping_rounds and best_model;
  • Defining categoricat features for model;
  • Ploting features importances;
  • Saving/Loading model (required for implementation in Bagging method implementation to FEDOT #1005);
  • Updated search space.

Updates in data, preprocessing and data_split:

  • Storing not encoded categorical features (into OHE or LE) and using it where necessary;
  • Storing positions for different types of data (numeric, category and encoded);
  • Storing features names of dataset.

Results:
OLD VERSION - {'Scoring': 0.5548, 'Flight': 0.5613}
NEW VERSION - {'Scoring': 0.5821, 'Flight': 0.5806}

@aim-pep8-bot
Copy link

aim-pep8-bot commented Aug 22, 2023

Hello @aPovidlo! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

There are currently no PEP 8 issues detected in this Pull Request. Cheers! 🍻

Comment last updated at 2023-09-19 10:43:26 UTC

fedot/core/data/data.py Outdated Show resolved Hide resolved
fedot/core/data/data.py Outdated Show resolved Hide resolved
fedot/core/operations/evaluation/boostings.py Outdated Show resolved Hide resolved
@codecov
Copy link

codecov bot commented Sep 4, 2023

Codecov Report

Merging #1155 (9865e34) into master (a5a9b17) will decrease coverage by 0.09%.
The diff coverage is 72.72%.

@@            Coverage Diff             @@
##           master    #1155      +/-   ##
==========================================
- Coverage   79.54%   79.45%   -0.09%     
==========================================
  Files         142      144       +2     
  Lines        9805     9954     +149     
==========================================
+ Hits         7799     7909     +110     
- Misses       2006     2045      +39     
Files Coverage Δ
fedot/api/api_utils/presets.py 87.50% <100.00%> (ø)
fedot/core/data/data_preprocessing.py 93.50% <100.00%> (+0.26%) ⬆️
fedot/core/data/data_split.py 94.73% <ø> (ø)
...ore/operations/evaluation/evaluation_interfaces.py 86.48% <ø> (-0.13%) ⬇️
...mentations/data_operations/categorical_encoders.py 98.07% <100.00%> (+0.07%) ⬆️
fedot/preprocessing/preprocessing.py 97.00% <100.00%> (+0.01%) ⬆️
fedot/core/data/visualisation.py 15.49% <0.00%> (ø)
fedot/core/operations/evaluation/boostings.py 76.31% <76.31%> (ø)
fedot/core/data/data.py 70.46% <65.85%> (-0.82%) ⬇️
...mplementations/models/boostings_implementations.py 72.30% <72.30%> (ø)

... and 2 files with indirect coverage changes

@YamLyubov YamLyubov self-requested a review September 8, 2023 14:47
fedot/core/data/data.py Outdated Show resolved Hide resolved
fedot/core/data/data.py Outdated Show resolved Hide resolved
test/integration/models/test_strategy.py Outdated Show resolved Hide resolved
fedot/core/data/data.py Show resolved Hide resolved
@aPovidlo aPovidlo merged commit 58e340c into master Oct 17, 2023
6 checks passed
@aPovidlo aPovidlo deleted the cb-impl branch December 28, 2023 11:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants