SVM中的非线性数据进行分类
实际的生产活动中我们遇到的数据大多数不能进行严格的区分的,为了解决这种问题,目前为止我们可以通过两种方式来解决:
①直接利用多项式项进行解决。
②利用内核函数(scikit已经封装好的)
下面我们将通过代码的方式进行验证。
1.添加多项式项
import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.preprocessing import Standardscaler,PolynomialFeatures
from sklearn.svm import linearSVC
from sklearn.pipeline import Pipeline
'''决策边界'''
from myML.metrics import plot_decision_boundary
'''模拟数据集'''
X,y = datasets.make_moons(noise=0.15,random_state = 666)
'''查看数据集'''
plt.scatter(X[y==0,0],X[y==0,1],col