sklearn 学习5

gamma值与loss

import numpy as np
from sklearn.datasets import load_digits
from sklearn.cross_validation import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.cross_validation import cross_val_score
import matplotlib.pyplot as plt
from sklearn.svm import SVC 
from sklearn.learning_curve import validation_curve


digits = load_digits()
X = digits.data
y = digits.target
#设定gamma的变化范围
param_range = np.logspace(-6,-2.3,5)

train_loss,test_loss = validation_curve(
        SVC(),X,y,param_name = 'gamma',param_range = param_range,
        cv = 10,scoring = 'mean_squared_error')

train_loss_mean = -np.mean(train_loss,axis = 1)
test_loss_mean = -np.mean(test_loss,axis = 1)

plt.plot(param_range,train_loss_mean,'o-',color = 'r',label = 'training')
plt.plot(param_range,test_loss_mean,'o-',color = 'g',label = 'test')
plt.legend(loc = 'best')
plt.show()

gamma与loss

x-axis : gamma
y_axis: loss

其中也体现了过拟合:在training data上的过分好

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容