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

Tree ensemble transformations #5

Closed
RAMitchell opened this issue Sep 21, 2017 · 4 comments
Closed

Tree ensemble transformations #5

RAMitchell opened this issue Sep 21, 2017 · 4 comments

Comments

@RAMitchell
Copy link
Member

@hcho3 I am interested in doing research on transformations such as combining multiple trees together, different pruning methods etc.

Would we be able to support these transformations as a part of the API?

Something like:

model.transform(pruning_transformation)
model.compile()
...

Having an intermediate representation of a tree structure, independent of the algorithm that generated it, is a very useful thing for this kind of work.

@hcho3
Copy link
Collaborator

hcho3 commented Oct 1, 2017

@RAMitchell Indeed, we should plan to add back-end optimizations. Right now, treelite simply converts a tree model into hierarchical if-else statements. Tree transformations will be an essential element.

@hcho3
Copy link
Collaborator

hcho3 commented Oct 19, 2017

@RAMitchell Sorry for the delay. I've been preoccupied with making last-minute fixes before the official launch.

I already see that the compiler portion needs some re-working; right now, it's a giant blob of script that generates C program on the fly. Really, there needs to be a good intermediate representation to enable the kind of work you and I would like to do (transformation).

Can we schedule a time for a phone or Skype call to discuss this topic further?

@hcho3
Copy link
Collaborator

hcho3 commented Jan 29, 2019

@RAMitchell I have just started looking into model compression / pruning for decision trees. One thing we'd need to decide is a set of transformations we should support. Right now, I'm trying to reach out to potential users and customers and learn the concrete use cases of model compression for trees.

@hcho3
Copy link
Collaborator

hcho3 commented Oct 29, 2020

Closing this for now. Right now, Treelite model object is used as an Intermediate Representation for cuML's Forest Inference Library.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants