我正在使用scikits接口对支持向量机分类器进行训练,并使用分层K折交叉验证。对于每个测试集(k个中的一个),我得到了一个分类结果。我希望能够得到一个包含所有结果的混淆矩阵。
Scikit-learn有一个混淆矩阵接口:
sklearn.metrics.confusion_matrix(y_true, y_pred)
我的问题是如何累积y_true和y_pred值。它们是数组(numpy)。我应该根据我的K折参数来定义数组的大小吗?对于每个结果,我应该将y_true和y_pred添加到数组中吗?
回答:
你可以使用一个聚合的混淆矩阵,或者为每个交叉验证分区计算一个混淆矩阵,然后计算矩阵中每个元素的均值和标准差(或标准误差),作为变异性的度量。
对于分类报告,代码需要修改以接受二维输入,以便传递每个交叉验证分区的预测结果,然后计算每个类别的平均分数和标准差。