知行编程网知行编程网  2022-11-25 00:30 知行编程网 隐藏边栏  7 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于SVM在python中的原理如何理解?的相关知识,包括boost python,以及python运行原理这些编程知识,希望对大家有参考作用。





除了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电脑。)

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享