sklearn评分函数的参数是什么?

too*_*y44 16 python scikit-learn

我最近看了一堆sklearn教程,这些教程都很相似,因为他们通过以下方式获得了合适的优点:

clf.fit(X_train, y_train)
clf.score(X_test, y_test)
Run Code Online (Sandbox Code Playgroud)

它会吐出来:

0.92345...
Run Code Online (Sandbox Code Playgroud)

或其他一些分数.

我很好奇clf.score函数的参数或它如何评分模型.我浏览了整个互联网,但似乎无法找到它的文档.有人知道吗?

Fre*_*Foo 20

它需要一个特征矩阵X_test和预期的目标值y_test.将预测X_testy_test准确度(对于分类器)或R²得分(对于回归估计量)进行比较.

这在score方法的文档字符串中非常明确地说明.用于分类的那个读取

Returns the mean accuracy on the given test data and labels.

Parameters
----------
X : array-like, shape = (n_samples, n_features)
    Test samples.

y : array-like, shape = (n_samples,)
    True labels for X.

sample_weight : array-like, shape = [n_samples], optional
    Sample weights.

Returns
-------
score : float
    Mean accuracy of self.predict(X) wrt. y.
Run Code Online (Sandbox Code Playgroud)

而回归的那个是相似的.


Eli*_*fra 5

以下是回归器分数的计算方法:

Score(self, X, y, Sample_weight=None)[来源] 返回预测的确定系数 R^2。

系数 R^2 定义为 (1 - u/v),其中 u 是残差平方和 ((ytrue - ypred) ** 2).sum(),v 是总平方和 ((ytrue - ypred) ** 2).sum() ytrue.mean()) ** 2).sum()。最好的得分是 1.0,并且可以是负值(因为模型可能会任意变差)。始终预测 y 期望值(不考虑输入特征)的常量模型将获得 0.0 的 R^2 分数。

来自 sklearn 文档。

https://scikit-learn.org/stable/modules/ generated/sklearn.dummy.DummyRegressor.html#sklearn.dummy.DummyRegressor.score