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

Check parameter space definition #5

Open
larskotthoff opened this issue Oct 19, 2015 · 4 comments
Open

Check parameter space definition #5

larskotthoff opened this issue Oct 19, 2015 · 4 comments

Comments

@larskotthoff
Copy link
Collaborator

There are some errors that suggest that the parameter space is not correctly specified wrt to some conditional dependencies, e.g.

[WARN ] [PROCESS-ERR] java.lang.RuntimeException: Failed to set classifier options [-I, 8, -H, 0.442016595562837, -R, 5, -F, 4, -Q, -P, 100, -L, 1e50, -S, 1, -W, weka.classifiers.bayes.BayesNet, --, -D, -Q, weka.classifiers.bayes.net.search.local.SimulatedAnnealing] for classifier weka.classifiers.meta.LogitBoost: Weight pruning with resampling not allowed.
@larskotthoff
Copy link
Collaborator Author

Also check definitions for attribute selection. Conditional dependencies do not appear to be specified completely there.

larskotthoff pushed a commit that referenced this issue Nov 3, 2015
@larskotthoff
Copy link
Collaborator Author

Certain attribute selection search methods disallow certain evaluation methods. There's currently no way to specify these conditional dependencies as each class (i.e. each evaluation/search method) is only considered in isolation.

The proper way to fix this would be to have a unified parameter space for attribute selection where the top-level parameter determines the algorithm to be run and everything else hangs off of that with conditionals. This will require a major redesign of AutoWEKA's internals.

@larskotthoff
Copy link
Collaborator Author

Upon closer inspection it turns out that there are some such dependencies with respect to classifiers as well, so really the only proper way would be to have a grand unified parameter space definition for everything.

larskotthoff pushed a commit that referenced this issue Nov 5, 2015
@larskotthoff
Copy link
Collaborator Author

Examples of things that need to be addressed in the parameter space definition but can't be at the moment:

Training classifier (weka.classifiers.lazy.LWL [-U, 3, -A, weka.core.neighboursearch.LinearNNSearch, -W, weka.classifiers.rules.OneR , --, -B, 3]) failed: Classifier must be a WeightedInstancesHandler!
java.lang.IllegalArgumentException: Classifier must be a WeightedInstancesHandler!
    at weka.classifiers.lazy.LWL.buildClassifier(LWL.java:507)
    at autoweka.ClassifierRunner$BuilderThread.doWork(ClassifierRunner.java:399)
    at autoweka.WorkerThread.run(WorkerThread.java:26)


Training classifier (weka.classifiers.meta.RandomCommittee [-I, 10, -S, 1, -W, weka.classifiers.bayes.BayesNet, --, -Q, weka.classifiers.bayes.net.search.local.TAN]) failed: Base learner must implement Randomizable!
java.lang.IllegalArgumentException: Base learner must implement Randomizable!
    at weka.classifiers.meta.RandomCommittee.buildClassifier(RandomCommittee.java:150)
    at autoweka.ClassifierRunner$BuilderThread.doWork(ClassifierRunner.java:399)
    at autoweka.WorkerThread.run(WorkerThread.java:26)

larskotthoff pushed a commit that referenced this issue Nov 18, 2015
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

1 participant