-
Notifications
You must be signed in to change notification settings - Fork 889
Open
Labels
Description
Describe the bug
With the upcoming sklearn version 1.7, the 'multi_class' param of LogisticRegression() will be deprecated
source: https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html
Steps/Code to Reproduce
from sklearn.model_selection import GridSearchCV
from sklearn.pipeline import make_pipeline
from sklearn.linear_model import LogisticRegression
from mlxtend.feature_selection import ExhaustiveFeatureSelector as EFS
lr = LogisticRegression(multi_class='multinomial',
solver='newton-cg',
random_state=123)
efs1 = EFS(estimator=lr,
min_features=2,
max_features=3,
scoring='accuracy',
print_progress=False,
clone_estimator=False,
cv=5,
n_jobs=1)
pipe = make_pipeline(efs1, lr)
param_grid = {'exhaustivefeatureselector__estimator__C': [0.1, 1.0, 10.0]}
gs = GridSearchCV(estimator=pipe,
param_grid=param_grid,
scoring='accuracy',
n_jobs=1,
cv=2,
verbose=1,
refit=False)
# run gridearch
gs = gs.fit(X_train, y_train)Expected Results
no warning message
Actual Results
FutureWarning: 'multi_class' was deprecated in version 1.5 and will be removed in 1.7. From then on, it will always use 'multinomial'. Leave it to its default value to avoid this warning.
Versions
MLxtend 0.23.4
Windows-10-10.0.26100-SP0
Python 3.11.11 | packaged by Anaconda, Inc. | (main, Dec 11 2024, 16:34:19) [MSC v.1929 64 bit (AMD64)]
Scikit-learn 1.6.1
NumPy 2.2.4
SciPy 1.15.2