神经网络.支持向量机(SVM)

    xiaoxiao2025-08-07  3

    《Andrew Ng 机器学习笔记》这一系列文章文章是我再观看Andrew Ng的Stanford公开课之后自己整理的一些笔记,除了整理出课件中的主要知识点,另外还有一些自己对课件内容的理解。同时也参考了很多优秀博文,希望大家共同讨论,共同进步。

    网易公开课地址:http://open.163.com/special/opencourse/machinelearning.html

    参考博文:http://blog.csdn.net/andrewseu/article/details/46892885

                     http://blog.sina.com.cn/s/blog_8a951ceb0102wbbv.html

    本篇博文涉及课程四:朴素贝叶斯算法

    主要内容有:

    (1)神经网络

    (2)支持向量机

    神经网络

    对于之前学习的分类算法,我们的目标都是求解一条直线,这条直线将数据进行分类,但如果数据并不是线性可分的话,这些模型的性能会变差。针对非线性分类的问题,出现了很多分类算法,神经网络是其中最早出现的一种。

    例如,下图使用Logistic模型分类,得到的是图中的直线,但这条直线并不是很合理,我们希望得到图中的曲线:

    假设特征向量为{x0,x1,x2,x3}sigmoid代表计算节点,output是函数输出对于Logistic模型来说,过程如图:

    Sigmoid计算节点含有参数θ,其函数形式为

    但对于神经网络来说,过程如图:

    特征向量输入到多个sigmoid单元,然后这些单元再输入到一个sigmoid单元,这些中间节点叫做隐藏层,神经网络可以有多个隐藏层.。

    其中的参数分别为:

                                             

    求解其中的参数,需要使用成本函数:

                                                      

    然后通过梯度下降方法求得参数值,在神经网络模型中,梯度下降算法有一个专有的名字叫做:反向传播算法。

    神经网络算法的特点:

    (1)不知道隐藏层计算的东西的意义。

    (2)有很多的局部最优解,需要通过多次随机设定初始值然后运行梯度下降算法获得全局最优值。

    支持向量机(SVM)

    了解支持向量机之前,我们需要知道函数间隔几何间隔

    首先,我们先定义新的标记

    1、用g(z)∈{-1,1}代替y(x)∈{0,1}。 2、目标函数从变为。

           (这里b代替了的角色,w代替         的角色ω和b可以确定唯一的一个超平面

    点(x(i),y(i))到由ω,b决定的超平面的函数间隔是:

                                                                

    从上面的十字可以看出:如果,为了使函数间隔很大,需要是一个很大的正数。如果为了使函数间隔很大,需要是一个很大的负数.。如果,则我们的预测结果是正确的。因此,函数间隔越大,说明预测结果越是确定正确的。

    如果我们用2w代替w,用2b代替b,那么由于,不会对有任何改变,也就是说只是取决于符号而跟数量没有关系.。但是用(2w,2b)代替(w,b)会使得函数间隔间隔增大两倍。

    超平面与整个训练集合的函数间隔是:

                                                                           

    为了解决这函数间隔无意义增大的问题,就有了几何间隔的定义,几何间隔定义如下:

                                                                 

    用下图说明几何间隔的问题:

                                                               

    上图中,w垂直于分隔超平面,训练样本A,它到分隔线 的距离是,也就是线段AB的长度. 是单位向量(unit-length vector), B点表示为为:,在分隔线上的所有点满足因此有: 

                                                                                  解到:                                                                        

    由上式可知:当||w||等于1,几何间隔等于函数间隔.    但几何间隔是不会随着参数的调整而变化的

    超平面与整个训练集合的几何间隔是:                                                                                  

    有了几何间隔和函数间隔,使得我们的分类结果不仅能保证正确性,还可以保证分类结果的确定性。

    转载请注明原文地址: https://ju.6miu.com/read-1301506.html
    最新回复(0)