我的问题:如何获得svm模块(SVC类)中的训练错误?
我试图绘制训练集和测试集的误差与所使用的训练数据数量(或其他功能,如C/gamma)的关系图。然而,根据SVM文档,没有这样的暴露属性或方法来返回这样的数据。我确实发现RandomForestClassifier确实暴露了一个oob_score_。
只需计算训练数据的分数:
>>> model.fit(X_train, y_train).score(X_train, y_train)
您还可以使用sklearn.metrics
模块中的任何其他性能指标。医生在这里:
http://scikit-learn.org/stable/modules/model_evaluation.html
此外:oob_score_
是对测试/验证分数的估计,而不是训练分数。
您甚至可以使用'earning_curve'绘制学习曲线。下面是一个例子。
>>> from sklearn.model_selection import learning_curve
>>> train_sizes, train_scores, valid_scores = learning_curve(
... SVC(kernel='linear'), X, y, train_sizes=[50, 80, 110], cv=5)
请参阅此了解更多详细信息-https://scikit-learn.org/stable/modules/learning_curve.html