莫烦sklearn学习自修第八天过拟合问题

Posted liuzhiqaingxyz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了莫烦sklearn学习自修第八天过拟合问题相关的知识,希望对你有一定的参考价值。

1. 什么是过拟合问题

所谓过拟合问题指的是使用训练样本进行训练时100%正确分类或规划,当使用测试样本时则不能正确分类和规划

 

2. 代码实战(模拟过拟合问题)

from __future__ import print_function
from sklearn.learning_curve import  learning_curve
from sklearn.datasets import load_digits
from sklearn.svm import SVC
import matplotlib.pyplot as plt
import numpy as np

digits = load_digits()
X = digits.data
y = digits.target

# 在0.1, 0.25, 0.5等的训练数据处取出训练损失和测试损失
train_sizes, train_loss, test_loss= learning_curve(
        SVC(gamma=0.01), X, y, cv=10, scoring=mean_squared_error,
        train_sizes=[0.1, 0.25, 0.5, 0.75, 1])
train_loss_mean = -np.mean(train_loss, axis=1)
test_loss_mean = -np.mean(test_loss, axis=1)

plt.plot(train_sizes, train_loss_mean, o-, color="r",
             label="Training")
plt.plot(train_sizes, test_loss_mean, o-, color="g",
             label="Cross-validation")

plt.xlabel("Training examples")
plt.ylabel("Loss")
plt.legend(loc="best")
plt.show()

注意:当使用gramma=0.0001时没有过拟合问题; 当使用gramma=0.001时出现了过拟合问题

 

以上是关于莫烦sklearn学习自修第八天过拟合问题的主要内容,如果未能解决你的问题,请参考以下文章

莫烦keras学习自修第四天分类问题

莫烦keras学习自修第三天回归问题

莫烦theano学习自修第二天激励函数

莫烦theano学习自修第五天定义神经层

莫烦scikit-learn学习自修第三天通用训练模型

莫烦scikit-learn学习自修第五天训练模型的属性