"Interpretation of attribute weights"
I've been using EvolutionaryWeighting to optimize attribute weights with the NearestNeighbors learner, and I'm hoping to get some clarity on how to interpret the values of attribute weights.
(For my processes, I have a numerical label, all the numerical attributes have been normalized, and there are one or two polynominal attributes.)
1) I've tried running it both with bounded_mutation=TRUE (which constrains weights to between 0 and 1) and bounded_mutation=FALSE, where weights can vary freely. Is bounded_mutation=TRUE essentially just a rescaling of the attribute weights to fit in the [0,1] interval (so they are functionally equivalent)? Or is there something other side effect of this setting that I should be aware of?
2) WIth bounded_mutation=FALSE, the weights can become negative. Does the sign of the weight value have any particular meaning (e.g. does that mean the attribute is negatively correlated with the label)? Or is it just the absolute value of the weight that indicates its importance?
3) With bounded_mutation=TRUE, it appears to be the case, at least after several generations, that there is an attribute with weight=1, and one with weight=0. Does the weight=0 imply that the attribute is not used at all in computing the neighbors?
Thanks,
Keith