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

AFCsvFacade.load_and_predict() returns the first item in the schedule #16

Open
felixvuo opened this issue Dec 2, 2022 · 2 comments
Open

Comments

@felixvuo
Copy link

felixvuo commented Dec 2, 2022

The facade API is really useful. However, when called to make a prediction it picks the first item in a schedule, i.e. the item with the shortest allocated budget. Is this intentional?

E.g. my problem sets the runtime limit to 3600 and in the AF logging output I get
Selected Schedule [(algorithm, budget)]: [('algo_tree', 1), ('algo_mdd',3601)]
But the output from AFCsvFacade.load_and_predict() just returns algo_tree. This is because the method (src) just returns pred[0][0].

Is this correct / intended? If only 1 sec of budget is set to algo_tree, but 3601 to algo_mdd, but I can only use 1 choice, which should it be? Perhaps I'm misunderstanding.

@Strawberry9583
Copy link

Hi, I have the same problem as you. Now I am using Autofolio to recommend algorithms for my instances, but after training by giving performance and feature tables to Autofolio, I obtain an unconvincing model that always recommends the same algorithms even for different instances from the training set. Do you have some ideas to solve this problem now?

@felixvuo
Copy link
Author

I think it is posible to turn off the presolver schedule, which is what I have attempted to do when using autofolio in this project. I ended up going one level deeper than the facade API and consulting the autofolio source to unpickle the saved model myself and then call autofolio.AutoFolio.predict() with the option to not use a pre-solver. Then I believe we get back a single choice from AF's classification apparatus.

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

No branches or pull requests

2 participants