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

error running asmoses if _loc is null_vertex then it must have only one child #136

Open
noskill opened this issue Jun 25, 2020 · 5 comments

Comments

@noskill
Copy link

noskill commented Jun 25, 2020

I got error running asmoses on a dataset

terminate called after throwing an instance of 'opencog::AssertionException'
  what():  if _loc is null_vertex then it must have only one child (/home/noskill/projects/sing-asmoses/opencog/moses/representation/knobs.cc:216)
Aborted (core dumped)

log1.txt.log

here is a smaller version of dataset where the bug still reproducible:

cancer_bin_100_small.txt

asmoses -i /tmp/cancer_bin_100_small.csv --log-file log1.txt.log   -l debug --noise 0.2  -u posOutcome

There is no error without --noise 0.2 on the smaller version of dataset, but on full dataset the error still happens.

@kasimebrahim
Copy link
Collaborator

This happened because some of your input features are enum and this should not be specific to asmoses[but moses as well]. And the problem is while constructing boolean representation only arguments of boolean and contin types are handled. When it faced enum argument it created a crippled knob.

I can make it gracefully ignore such knobs to avoid such exception but ultimately it is not a solution at all. So I recommend binarizing your dataset for now.

@ngeiswei if you have a solution I can work on it.

@ngeiswei
Copy link
Member

ngeiswei commented Jul 7, 2020

@kasimebrahim, I'm seeing that enum isn't supported in several places, like even in the interpreter, so I suppose for now unless @noskill you really want to try input enums (output should work already, but not input) we should let it aside.

@noskill
Copy link
Author

noskill commented Jul 23, 2020

I use contin instead of enum for now. I don't have an intuition about what difference adding better enum support would add.

@noskill
Copy link
Author

noskill commented Aug 28, 2020

Is feature selection working on boolean + enum features?

@ngeiswei
Copy link
Member

ngeiswei commented Sep 1, 2020

@noskill asked

Is feature selection working on boolean + enum features?

No, according to

OC_ASSERT(id::boolean_type == otype, "Only boolean types supported");

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

3 participants