-
Notifications
You must be signed in to change notification settings - Fork 53
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
RandomSearchTuner with automatic search space ignores MaxDepth #98
Comments
Hi Tony, Sorry to hear about your issue. Also, make sure you don't have |
Hi, I did use automatic_search_space=True so that's probably the cause. It would be nice though if you could manually override some choices. Alternatively do you have some ideas how I can improve the results with max_depths=1 and high dimensional categorical features? So far I only get constant models. I am trying to use your library to replicate viola and jones face detection algorithm |
YDF does not count max-depth the same way as other libraries--it is something I regret, but it is too late to change :) To train a Viola and Jones like model with fixed thresholds, make sure to feed BOOLEAN features instead of CATEGORICAL ones. You could also feed NUMERICAL features and let YDF figure the thresholds. Note also that the Viola and Jones algorithm is a boosting algorithm (such as AdaBoost) which is a bit different from a gradient boosting algorithm. However, I would expect for gradient boosting to give similar results. In this kind of situation where there have many correlated numerical features, oblique forests sometime give excellent results. It would also be interesting to try. For example, this could be:
|
Thanks for your reply! That explains a lot. I was confused why my models all turned out to be constant, but it turns out max_depths=1 forces them to be constant! Maybe there should be a warning issued when people set max_depths = 1? Also There should be some hint in the Documentation about this different interpretation |
I have a problem. When I use the RandomSearchTuner and fix the Learners num_trees, there is no problem and as expected every trial will have that num_trees, if I fix the max_depth however, it just gets ignored. When I use tuner.choice("max_depth", [1,2,3]), max_depths is respected during trials, but I get the following Error at the end:
The text was updated successfully, but these errors were encountered: