civisanalytics / muffnn

Multilayer Feed-Forward Neural Network predictive model implementations with TensorFlow and scikit-learn
BSD 3-Clause "New" or "Revised" License
45 stars 18 forks source link

move MLPClassifier to multilabel, multiclass #47

Open beckermr opened 7 years ago

stephen-hoover commented 6 years ago

I've discovered that the MLPClassifier does not encode string targets when y is 2D. Is that part of this issue, or should I file a new issue? It's not clear what this issue covers.

mheilman commented 6 years ago

That sounds like a separate issue.

@beckermr, could you clarify what this issue means? I believe it means adding support for multilabel-multiclass modeling. That right?

beckermr commented 6 years ago

This was me thinking of using the list of lists format from sklearn. @stephen-hoover's question is a different issue.

beckermr commented 6 years ago

@stephen-hoover Is that format supposed to be supported by sklearn API? I am reading the docs and it is very unclear.

stephen-hoover commented 6 years ago

The reason to handle encoding for multilabel inputs is so that we can do multilabel-multiclass, so this issue sounds like it's still a blocker.

@beckermr , I agree it's unclear. Experimentally, the tree ensemble classifiers do correctly handle string input for multilabel-multiclass problems. There's a bug in the input checking which causes an error for target arrays with mixed string and numeric columns, and the predict method errors if you used string labels in the training. However fit and predict_proba work. I think we should support it in muffnn; it seems like a common use case to me.