擅长:python、mysql、java
<p>从<a href="https://github.com/scikit-learn/scikit-learn/blob/0.18.1/sklearn/model_selection/_validation.py#L302" rel="noreferrer">github</a>上的<code>cross_val_predict</code>代码中可以看到,该函数计算每个折叠预测并将它们连接起来。这些预测是基于从其他褶皱得到的模型进行的。</p>
<p>下面是您的代码和代码中提供的示例的组合</p>
<pre><code>from sklearn import datasets, linear_model
from sklearn.model_selection import cross_val_predict, KFold
from sklearn.metrics import accuracy_score
diabetes = datasets.load_diabetes()
X = diabetes.data[:400]
y = diabetes.target[:400]
cv = KFold(n_splits=20)
lasso = linear_model.Lasso()
y_pred = cross_val_predict(lasso, X, y, cv=cv)
accuracy = accuracy_score(y_pred.astype(int), y.astype(int))
print(accuracy)
# >>> 0.0075
</code></pre>
<p>最后,回答您的问题:<strong>“不,每一次折叠的准确度不取平均值”</strong></p>