在fit()之后找出训练错误

时间:2017-12-04 15:21:03

标签: machine-learning scikit-learn

我正在训练LinearSVC模型,我想得到它的训练错误。是否可以手动评估它?

谢谢

1 个答案:

答案 0 :(得分:1)

sklearn正在使用liblinear执行此任务。

您可以快速浏览一下here来源:

self.coef_, self.intercept_, self.n_iter_ = _fit_liblinear(
    X, y, self.C, self.fit_intercept, self.intercept_scaling,
    self.class_weight, self.penalty, self.dual, self.verbose,
    self.max_iter, self.tol, self.random_state, self.multi_class,
    self.loss, sample_weight=sample_weight)

表明只有系数,截距和迭代次数由sklearn的python-API处理。无论liblinear的输出中有什么其他可用的东西都没有被抓住。在不更改内部代码的情况下,您无法直接读出训练错误。

可能有一个hack打开详细模式,重定向输出并解析那里可用的其他信息。但是这假设您在那里找到的信息是可用的,而且它也是hacky,我不会推荐它。

只需使用score - 方法即可。与装配相比,它不会太昂贵。