无需交叉验证的Scikit Learn GridSearchCV(无监督学习)

无需交叉验证的Scikit Learn GridSearchCV(无监督学习),第1张

无需交叉验证的Scikit Learn GridSearchCV(无监督学习)

经过大量搜索,我能够找到此线程。如果使用以下方法,似乎可以摆脱GridSearchCV中的交叉验证

cv=[(slice(None), slice(None))]

我已经对我自己的编码版本的网格搜索(没有交叉验证)进行了测试,并且两种方法都得到了相同的结果。我将这个答案发布到我自己的问题上,以防其他人有同样的问题。

编辑:在评论中回答jjrr的问题,这是一个示例用例:

from sklearn.metrics import silhouette_score as scdef cv_silhouette_scorer(estimator, X):    estimator.fit(X)    cluster_labels = estimator.labels_    num_labels = len(set(cluster_labels))    num_samples = len(X.index)    if num_labels == 1 or num_labels == num_samples:        return -1    else:        return sc(X, cluster_labels)cv = [(slice(None), slice(None))]gs = GridSearchCV(estimator=sklearn.cluster.MeanShift(), param_grid=param_dict,        scoring=cv_silhouette_scorer, cv=cv, n_jobs=-1)gs.fit(df[cols_of_interest])


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5642711.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存