dmlc / dmlc/xgboost

process_type: update / updater: refresh deletes all trees from existing model

Open
#10,390 2 comments 0 reactions 0 assignees View on GitHub
doc
Dominant language
C++
Stars
28.8k
Forks
8.9k
Avg merge
1d 12h
Merged PRs (30d)
54

Description

image

I expect the above code to output a model with 100 trees in both cases. However, running this python script instead gives me:

model size before refresh 100
model size after refresh 10

Which is unexpected. This is on xgboost 2.0.3.

Am I doing something wrong / misunderstanding how the refresh parameter should work?

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the Python script shown in the issue with XGBoost 2.0.3 and compare the model size before and after refresh. Trace the refresh updater behavior to determine whether retaining all 100 trees is expected, then add a regression check or document the confirmed behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.