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

Pass infomation about objective to tree methods. #7385

Merged
merged 5 commits into from Nov 3, 2021

Conversation

trivialfis
Copy link
Member

This PR adds a new struct for obtaining some information about the objective. The struct is not used yet but is required for the future development of categorical split. In #7214 , the optimal partitioning is only available for binary classification and regression. Copying inlined comment here:

 * The task field is useful for tree split finding, also for some metrics like auc.
 * While const_hess is useful for algorithms like adaptive tree where one needs to update
 * the leaf value after building the tree.  Lastly, knowing whether hessian is constant
 * can allow some optimizations like skipping the quantile sketching.
  • Define ObjInfo.
  • Pass it to tree methods.

@trivialfis
Copy link
Member Author

trivialfis commented Oct 31, 2021

I will pass it to metric once #7364 is approved or rejected to avoid conflicts. See #7386 for its usage in metrics.

@trivialfis trivialfis merged commit 4100827 into dmlc:master Nov 3, 2021
@trivialfis trivialfis deleted the objinfo branch November 3, 2021 17:52
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.

None yet

2 participants