在
除了python中的编程知识点,还涉及到数学方法的算法,SVM就是一个很好的体现。我们学过数学中的坐标法,就是把点、线、面连接成图形,而SVM在这方面也继承了绘图法。
法律。接下来,我们将学习SVM的相关概念,然后分析其核心代码,了解SVM的使用原理。
1.概念理解
“支持向量机”(SVM) 是一种受监督的机器学习算法,可用于分类或回归挑战。但是,它主要用于分类问题。在这个算法中,我们把每一个数据项都看成n维空间中的一个点(n是你拥有的特征的个数)作为一个点,每一个特征值都是一个特定坐标的值。然后我们通过找到区分这两个类的超平面来执行分类。
2.核心代码
模型本身并不难,就是要画出相应的图
clf = SVC(kernel = "linear").fit(X,y)
print(clf.predict(X))
预测又对
X 自己预测了一个变化。从核心代码来看,还是延续了sklearn的风格,非常简洁。
可视化可能比较麻烦,需要用到下面的函数。该功能只需要输入clf即可。
def plot_svc_decision_function(model,ax=None):
if ax is None:
ax = plt.gca()
xlim = ax.get_xlim()
ylim = ax.get_ylim()
x = np.linspace(xlim[0],xlim[1],30)
y = np.linspace(ylim[0],ylim[1],30)
Y,X = np.meshgrid(y,x)
xy = np.vstack([X.ravel(), Y.ravel()]).T
#decision_function这个函数可以返回给定的x,y点到决策边界(也就是点到SVM所得到划分线的距离)
P = model.decision_function(xy).reshape(X.shape)
ax.contour(X, Y, P,colors="k",levels=[-1,0,1],alpha=0.5,linestyles=["--","-","--"])
ax.set_xlim(xlim)
ax.set_ylim(ylim)
函数的大致思路是先生成一个网格,然后计算网格中每个点到决策边界的距离,最后绘制等高线
(算出的距离相等的一条线)。
以上就是python中SVM的原理分析。了解了SVM的基本使用之后,就可以练习核心代码,找到使用SVM画图的关键实现方法。
(推荐操作系统:windows7系统、Python 3.9.1,DELL G3电脑。)
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ python如何判断数组元素不等于0并输出09/07
- ♥ 最流行最实用的python插件,你用过吗?11/05
- ♥ 如何在不包装输出的情况下在python中打印08/20
- ♥ python socket的连接步骤10/15
- ♥ 如何在python编程中编写代码08/15
- ♥ python如何打印字符串的长度10/13
内容反馈