Open lukehutch opened 8 years ago
Hey @lukehutch, thanks for the feedback. I'm still working on the wiki pages (they are not complete yet).
Thanks again for the feedback.
On #2 (assuming you're referring to my third bullet point?): Here is the relevant code:
https://github.com/yinlou/mltk/blob/master/src/main/java/mltk/core/io/InstancesReader.java#L72
In the case of dense instances with the wrong number of attributes, the line is skipped by the if-statement in line 76.
Now I remember. In the input, number of features in the attribute file does need to match the number of columns in the data file. I wanted to enforce that so that feature description in the attribute file always matches the corresponding data file. In which scenario do you want to have a smaller attribute file?
The situation arose because I misunderstood the docs. I didn't know that "(class)" implied the target, because I was doing regression, not classification, and this tag was not described in the text. As I tried to portray in the original bug report, it is not clear from the examples as to how you should specify the target. In the case where you show "(class)" in the attributes file, you have the class occurring last. However, under "Sparse input format", you show the target occurring first. Because I didn't see a mention of target in the attributes, and because I didn't know "(class)" meant "target, whether regression or classification", I assumed that the target was always supposed to be in the first column. Thus my attributes file had one fewer attribute than there were columns.
I think the way to fix the documentation is to have two complete examples: One for classification, one for regression. Or at least make all the examples of attribute and datafiles refer to a single consistent example, and explain that "(class)" must be present and means the target, whether you're doing regression or classification.
I have been trying to use MLTK for a regression problem, and I found there are many important details missing from the documentation:
That's as far as I have gotten so far... I finally got my first regression results, but it took me several hours to figure out how to use this properly... hopefully this feedback helps!