import numpy as np from sklearn import datasets from sklearn.linear_model import LogisticRegression from sklearn.metrics import confusion_matrix from sklearn.model_selection import GridSearchCV from sklearn.svm import SVC import matplotlib.pyplot as plt iris=datasets.load_iris() # print(list(iris.keys())) # print(iris['DESCR']) # print(iris['feature_names']) X=iris['data'][:,3:] # print(X) # print(iris['target']) y=iris['target'] print(X) print(y) param_grid={'C':[1e3,5e3,1e4,5e4,1e5], 'gamma':[0.0001,0.0005,0.001,0.005,0.01,0.1]} model1=GridSearchCV(SVC(kernel='rbf',class_weight='balanced'),param_grid,cv=5) model1=model1.fit(X,y) model2=GridSearchCV(SVC(kernel='sigmoid',class_weight='balanced'),param_grid,cv=5) model2=model2.fit(X,y) test_labels=np.zeros(150) test_labels[75:150]=1 result1=model1.predict(X) test_labels=np.zeros(150) test_labels[75:150]=1 result2=model2.predict(X) print(confusion_matrix(test_labels,result1)) print(confusion_matrix(test_labels,result2)) model3=GridSearchCV(SVC(kernel='poly',class_weight='balanced'),param_grid,cv=5) model3=model3.fit(X,y) test_labels=np.zeros(150) test_labels[75:150]=1 result3=model3.predict(X) print(confusion_matrix(test_labels,result3)) model4=GridSearchCV(SVC(kernel='linear',class_weight='balanced'),param_grid,cv=5) test_labels=np.zeros(150) test_labels[75:150]=1 model4=model4.fit(X,y) result4=model4.predict(X) print(confusion_matrix(test_labels,result4))
改变四个核函数之后训练出来的模型为什么后面三个结果是一样的,这是巧合还是就是会出现这种情况