JuliaAI / MLJModels.jl

Home of the MLJ model registry and tools for model queries and mode code loading
MIT License
80 stars 27 forks source link

Interfacing with Sklearn supervised models #57

Open tlienart opened 4 years ago

tlienart commented 4 years ago

This issue is more to keep track of things than to ask for help

https://scikit-learn.org/stable/modules/classes.html

Supervised models

Dummy models

? Name Has predict_proba? comment
DummyClassifier yes
DummyRegressor no

Generalized Linear Models

https://scikit-learn.org/stable/modules/classes.html#module-sklearn.linear_model

? Name Has predict_proba? comment
ARDRegression no
BayesianRidge no
ElasticNet no 1
ElasticNetCV no 1
HuberRegressor no
Lars no 1
LarsCV no 1
Lasso no 1
LassoCV no 1
LassoLars no 1
LassoLarsCV no 1
LassoLarsIC no 1
LinearRegression no
LogisticRegression yes 2
LogisticRegressionCV yes 2
MultiTaskLasso no 1
MultiTaskElasticNet no 1
MultiTaskLassoCV no 1
MultiTaskElasticNetCV no 1
OrthogonalMatchingPursuit no
OrthogonalMatchingPursuitCV no
PassiveAggressiveClassifier no
PassiveAggressiveRegressor no
Perceptron no
RANSACRegressor no
Ridge no
RidgeClassifier no
RidgeClassifierCV no
RidgeCV no
SGDClassifier yes
SGDRegressor no
TheilSenRegressor no
  1. could extract path
  2. there's also predict_log_proba which we may want to interface with (?)

Gaussian Processes

? Name Has predict_proba? comment
GPClassifier yes
GPRegressor no

Ensemble models

? Name Has predict_proba? comment
AdaboostClassif yes
AdaboostReg no
BaggingClassif yes
BaggingReg no
ExtraTreesClassif yes
ExtraTreesReg no
GDBClassif yes
GDBReg no
RFClassif yes
RFReg no
VotingClassif no
VotingReg no
HGBClassif yes experimental
HGBReg no experimental

Simple models

? Name Has predict_proba? comment
BernoulliNB yes
GaussianNB yes
MultinomialNB yes
ComplementNB yes
KNeighborsClassifier yes
KNeighborsRegressor no
RadiusNeighborsClassifier no
RadiusNeighborsRegressor no
NearestCentroid (classif) no

NNs

? Name Has predict_proba? comment
MLPClassifier yes
MLPRegressor no

SVMs

? Name Has predict_proba? comment
LinearSVC no
LinearSVR no
NuSVC no
NuSVR no
SVC no
SVR no

Exotic models

? Name Has predict_proba? comment
IsotonicRegression no
KernelRidgeRegression no
BayesianGaussianMixture yes
GaussianMixture yes
CalibratedClassifierCV yes
tlienart commented 4 years ago

Hmm there's also LDA and QDA I should add

tlienart commented 4 years ago

Probably also those: https://scikit-learn.org/stable/modules/classes.html#module-sklearn.cross_decomposition

PLSR is used in ISL so could be good to complete that

ablaom commented 4 years ago

Not familiar with cross_decomposition. Can I think of this as a transformer, like we do PCA?