【问题标题】:_score() missing 1 required argument 'y_true'_score() 缺少 1 个必需参数“y_true”
【发布时间】:2020-06-03 05:34:52
【问题描述】:

我需要运行 AgglomerativeClustering 方法,而我的代码是,

model = AgglomerativeClustering()
params = {"n_clusters": [2,3,4]}
clf = GridSearchCV(model, params, n_jobs=1, cv=10, refit=False)
clf.fit(self.data, None)

然后我收到错误消息“_score() 缺少 1 个必需的参数 'y_true'”。但是对于聚类,没有 y。有什么解决办法吗?

【问题讨论】:

    标签: python-3.x scikit-learn hierarchical-clustering


    【解决方案1】:

    由于您没有在GridSearchCV 中指定评分函数,它将使用(基于docs):

    如果没有,则使用估计器的评分方法。

    您的估算器是model,所以它是:AllgomerativeClustering,如果我们检查这个docs,它里面没有评分功能。最重要的是,您缺少这种算法的训练/测试拆分。目前GridSearchCV没有设计成使用clusterign算法,你可以看看here如何继续。

    【讨论】:

    • 感谢您的评论。由于聚类中没有因变量,拥有训练集的目的是什么?我们如何测试聚类算法的准确性?
    • 对于无监督学习方法,没有直接测试。有一些方法,如肘法,您可以如何定义集群的距离。
    猜你喜欢
    • 1970-01-01
    • 2020-10-20
    • 2014-09-13
    • 1970-01-01
    • 1970-01-01
    • 2018-08-08
    • 2019-10-10
    • 2017-03-27
    相关资源
    最近更新 更多