i am trying to do multiscoring with GridSearchCv but i am getting nan values.Can someone explain?
from sklearn.cluster import DBSCAN
from collections import defaultdict
from sklearn.metrics import adjusted_rand_score
from sklearn.metrics import adjusted_mutual_info_score,normalized_mutual_info_score,homogeneity_score
from sklearn.metrics import make_scorer
from sklearn.model_selection import GridSearchCV
import warnings
from sklearn.exceptions import ConvergenceWarning
scoring_metrics={'RS':make_scorer(adjusted_rand_score) , 'MI':make_scorer(adjusted_mutual_info_score),'AMI':make_scorer(adjusted_mutual_info_score),
'NMI':make_scorer(normalized_mutual_info_score),'Homogeneity':make_scorer(homogeneity_score)}
parameters={'eps':[5, 5.5, 6, 6.5 ,7],'min_samples':list(range(5,10))}
dbscan=DBSCAN()
grid_search=GridSearchCV(dbscan,parameters,scoring=scoring_metrics,refit='RS',cv=5)
grid_search.fit(X,y)
best_params = grid_search.best_params_
print("Best Parameters:", best_params)
for scorer_name, scorer_fnc in scoring_metrics.items():
best_score=grid_search.best_score_
print(f'best_score_{scorer_name}',best_score)
i am getting tis answer Best Parameters: {'eps': 5, 'min_samples': 5} best_score_RS nan best_score_MI nan best_score_AMI nan best_score_NMI nan best_score_Homogeneity nan