精华内容
下载资源
问答
  • 径向基函数

    2020-11-27 08:49:47
    任意一个满足Φ(x)=Φ(||x||)特性的函数Φ都叫做径向基函数,标准的一般使用欧式距离(也叫做欧式径向基函数),尽管其他距离函数也是可以的。在神经网络结构中,可以作为全连接层和ReLU层的主要函数。 一些径向...


    径向基函数是一个取值仅仅依赖于离原点距离的实值函数,也就是Φ(x)=Φ(||x||),或者还可以是到任意一点c的距离,c点称为中心点,也就是Φ(x,c)=Φ(||x-c||)。任意一个满足Φ(x)=Φ(||x||)特性的函数Φ都叫做径向基函数,标准的一般使用欧式距离(也叫做欧式径向基函数),尽管其他距离函数也是可以的。在神经网络结构中,可以作为全连接层和ReLU层的主要函数。
    一些径向函数代表性的用到近似给定的函数,这种近似可以被解释成一个简单的神经网络,径向基函数在支持向量机中也被用作核函数。

    函数类别

    常见的径向基函数包括(定义r=||x-xi||)
    高斯函数:
    在这里插入图片描述

    多二次函数(multiquadratic):
    在这里插入图片描述
    逆二次函数(inverse quadratic):
    在这里插入图片描述
    逆多二次函数(inverse multiquadratic):
    在这里插入图片描述
    多重调和样条(polyharmonic spline):
    在这里插入图片描述
    薄板样条(thin plate spline,为多重调和样条的特例):
    在这里插入图片描述

    函数应用

    1.偏微分方程的数值解
    在微分方程的数值解的研究领域还研究了如下的方法:假设函数可以由径向基函数近似表示,把它代入微分方程并且在某个数据点集上在某种度量下迫使微分方程的误差取最小值,从而决定系数aj,甚至点xj,这个方法在一些实际应用领域也获得了非常满意的结果。
    2.神经网络的构造
    构造神经网络的基本方法为假设某种过程是属于某种函数空间的函数,然后连接成神经网络,运行一段时间该网络的电势趋于最小达到某种动态平衡,从而可以求出核函数,而选择径向基函数空间是一个比较简单的容易用神经网络实现的方法。

    展开全文
  • 径向基函数用于函数逼近和插值。 这个包支持两种流行的 rbf 类:高斯样条和多谐样条(薄板样条是其中的一个子类)。 该包还计算两点之间的线积分以及表面的梯度。 有关更多信息,请参阅 blog.nutaksas.com 以获取...
  • 人工神经网络——径向基函数(RBF)神经网络

    万次阅读 多人点赞 2015-10-24 15:32:45
    径向基函数神经网络的优点:逼近能力,分类能力和学习速度等方面都优于BP神经网络,结构简单、训练简洁、学习收敛速度快、能够逼近任意非线性函数,克服局部极小值问题。原因在于其参数初始化具有一定的方法,并非...

    此博客排版不好,重新用Markdown写了一篇,同时附上了代码,戳这里

       本文摘自:《模式识别与智能计算——matlab技术实现第三版》与《matlab神经网络43个案例分析》

    【注】蓝色字体为自己的理解部分

         径向基函数神经网络的优点:逼近能力,分类能力和学习速度等方面都优于BP神经网络,结构简单、训练简洁、学习收敛速度快、能够逼近任意非线性函数,克服局部极小值问题。原因在于其参数初始化具有一定的方法,并非随机初始化。

            RBF是具有单隐层的三层前向网络。第一层为输入层,由信号源节点组成。第二层为隐藏层,隐藏层节点数视所描述问题的需要而定,隐藏层中神经元的变换函数即径向基函数是对中心点径向对称且衰减的非负线性函数,该函数是局部响应函数,具体的局部响应体现在其可见层到隐藏层的变换跟其它的网络不同。以前的前向网络变换函数都是全局响应的函数。第三层为输出层,是对输入模式做出的响应。输入层仅仅起到传输信号作用,输入层和隐含层之间可以看做连接权值为1的连接,输出层与隐含层所完成的任务是不同的,因而他们的学习策略也不同。输出层是对线性权进行调整,采用的是线性优化策略,因而学习速度较快;而隐含层是对激活函数(格林函数,高斯函数,一般取后者)的参数进行调整,采用的是非线性优化策略,因而学习速度较慢。对于这句话的理解,从下面的层与层之间的变换可以发现。

           RBF神经网络的基本思想:用RBF作为隐单元的“基”构成隐藏层空间,隐藏层对输入矢量进行变换,将低维的模式输入数据变换到高维空间内,使得在低维空间内的线性不可分问题在高维空间内线性可分。详细一点就是用RBF的隐单元的“基”构成隐藏层空间,这样就可以将输入矢量直接(不通过权连接)映射到隐空间。当RBF的中心点确定以后,这种映射关系也就确定 了。而隐含层空间到输出空间的映射是线性的(注意这个地方区分一下线性映射和非线性映射的关系),即网络输出是因单元输出的线性加权和,此处的权即为网络可调参数

    下图是径向基神经元模型      

     《43案例分析》中介绍:径向基函数的激活函数是以输入向量和权值向量(注意此处的权值向量并非隐藏层到输出层的权值,具体看下面的径向基神经元模型结构)之间的距离||dist||作为自变量的。径向基网络的激活函数的一般表达式为。

    《模式识别与智能计算》中介绍:径向基网络传递函数是以输入向量与阈值向量之间的距离|| X-Cj ||作为自变量的,其中|| X -Cj ||是通过输入向量和加权矩阵C的行向量的乘积得到。此处的C就是隐藏层各神经元的中心参数,大小为隐层神经元数目*可见层单元数。再者,每一个隐神经元中心参数C都对应一个宽度向量D,使得不同的输入信息能被不同的隐层神经元最大程度地反映出来。

     

    得到的这个R就是隐层神经元的值。

    随着权值和输入向量之间距离的减少,网络输出是递增的,当输入向量和权值向量一致时,神经元输出为1。图中的b为阈值,用于调整神经元的灵敏度。利用径向基神经元和线性神经元可以建立广义回归神经网络,此种神经网络适用于函数逼近方面的应用。径向基函数和竞争神经元可以建立概率神经网络,此种神经网络适用于解决分类问题

    RBF神经网络学习算法需要三个参数:基函数的中心,方差(宽度)以及隐含层到输出层的权值。

    RBF神经网络中心选取方法:

           对于RBF神经网络的学习算法,关键问题是隐藏层神经元中心参数的合理确定。常用的方法是从中心参数(或者其初始值)是从给定的训练样本集里按照某种方法直接选取,或者是采用聚类的方法确定。

       ①直接计算法(随机选取RBF中心)

         隐含层神经元的中心是随机地在输入样本中选取,且中心固定。一旦中心固定下来,隐含层神经元的输出便是已知的,这样的神经网络的连接权就可以通过求解线性方程组来确定。适用于样本数据的分布具有明显代表性。

       ②自组织学习选取RBF中心法

          RBF神经网络的中心可以变化,并通过自组织学习确定其位置。输出层的线性权重则是通过有监督的学习来确定的。这种方法是对神经网络资源的再分配,通过 学习,使RBF的隐含层神经元中心位于输入空间重要的区域。这种方法主要采用K-均值聚类法来选择RBF的中心,属于无监督(导师)的学习方法。

      ③有监督(导师)学习选取RBF中心

         通过训练样本集来获得满足监督要求的网络中心和其他权重参数。常用方法是梯度下降法

      ④正交最小二乘法选取RBF中心法

         正交最小二乘法(Orthogoal least square)法的思想来源于线性回归模型。神经网络的输出实际上是隐含层神经元某种响应参数(回归因子)和隐含层至输出层间连接权重的线性组合。所有隐含层神经元上的回归因子构成回归向量。学习过程主要是回归向量正交化的过程。

         在很多实际问题中,RBF神经网络隐含层神经元的中心并非是训练集中的某些样本点或样本的聚类中心,需要通过学习的方法获得,使所得到的中心能够更好地反应训练集数据所包含的信息。

    基于高斯核的RBF神经网络拓扑结构

          第一层输入层:由信号源节点构成,仅起到数据信息的传递作用,对输入信息不做任何变换

          第二层隐含层:节点数视需要而定。隐含层神经元核函数(作用函数)是高斯函数,对输入信息进行空间映射的变换。

          第三层输出层,对输入模式做出响应。输出层神经元的作用函数为线性函数,对隐含层神经元输出的信息进行线性加权后输出,作为整个神经网络的输出结果。

    径向基网络传递函数是以输入向量与阈值向量之间的距离|| X-Cj ||作为自变量的。其中|| X-Cj ||是通过输入向量和加权矩阵C的行向量的乘积得到的。径向基神经网络传递参数可以取多种形式。常见的有:

    ①Gaussian函数(高斯函数)

    ②Reflected sigmoidal函数(反常S型函数)

    ③逆Multiquadric函数(逆 畸变校正函数

    较为常用的还是Gaussian函数,本文采用Gaussian函数:

    当输入自变量为0时,传递函数取得最大值1,。随着权值和输入向量间的距离不断减小,网络输出是递增的。也就是说,径向基函数对输入信号在局部产生响应。函数的输入信号X靠近函数的中央范围时,隐含层节点将产生较大的输出。由此可以看出这种网络具有局部逼近能力。

             当输入向量加到网络输入端时,径向基层每个神经元都会输出一个值,代表输入向量与神经元权值向量之间的接近程度。如果输入向量关于权值向量相差很多,则径向基层输出接近于0,;如果输入向量与权值向量很接近,则径向基层的输出接近于1,经过第二层(隐含层)的线性神经元,输出值就靠近第二层权值。在这个过程中,如果只有一个径向基神经元的输出为1,而其他神经元输出均为0或者接近0,那么线性神经元的输出就相当于输出为1的神经元对应的第二层(隐含层)权值的值。

    RBF网络训练:

    训练的目的是求两层的最终权值Cj、Dj和Wj。

    训练的过程分为两步:第一步是无监督学习,训练确定输入层与隐含层间的权值Cj、Dj;第二步是有监督学习,训练确定隐含层与输出层间的权值Wj。

    训练前提供输入向量X、对应的目标输出向量Y和径向基函数的宽度向量Dj。

    在第 l 次输入样品(l=1,2,...,N)进行训练时,各个参数的表达及计算方法如下:

    (1)确定参数

    确定输入向量X:

    ,n是输入层单元数

    确定输出向量Y和希望输出向量O

    ,q是输出层单元数

    ③初始化隐含层至输出层的连接权值

    其中p是隐藏层单元数,q是输出层单元数。

    参考中心初始化的方法给出隐藏层到输出层的权值初始化方法:

    其中mink是训练集中第k个输出神经元中所有期望输出的最小值;maxk是训练集中第k个输出神经元中所有期望输出的最大值。

    ④初始化隐含层各神经元的中心参数。不同隐含层神经元的中心应有不同的取值,并且与中心的对应宽度能够调节,使得不同的输入信息特征能被不同的隐含层神经元最大的反映出来。在实际应用中,一个输入信息总是包含在一定的取值范围内。不失一般性,将隐含层各神经元的中心分量的初值,按从小到大等间距变化,使较弱的输入信息在较小的中心附近产生较强的响应。间距的大小可由隐藏层神经元的个数来调节。好处是能够通过试凑的方法找到较为合理的隐含层神经元数,并使中心的初始化尽量合理,不同的输入特征更为明显地在不同的中心处反映出来,体现高斯核的特点。

    基于上述四项,RBF神经网络中心参数的初始值为:

    (p为隐含层神经元总个数,j=1,2,...,p)

    mini是训练集中第i个特征所有输入信息的最小值,maxi为训练集中第i 个特征所有输入信息的最大值。

    ⑤初始化宽度向量。宽度向量影响着神经元对输入信息的作用范围:宽度越小,相应隐含层神经元作用函数的形状越窄,那么处于其他神经元中心附近的信息在该神经元出的响应就越小。计算方法:

    df为宽度调节系数,取值小于1,作用是使每个隐含层神经元更容易实现对局部信息的感受能力,有利于提高RBF神经网络的局部响应能力。

    (2)计算隐含层第j 个神经元的输出值zj

    Cj是隐含层第 j 个神经元的中心向量,由隐含层第j个神经元对应于输入层所有神经元的中心分量构成,;Dj为隐含层第j个神经元的宽度向量,与Cj相对应,,Dj越大,隐含层对输入向量的影响范围就越大,且神经元间的平滑度也比较好;||.||为欧式范数。

    (3)计算输出层神经元的输出

    其中为输出层第k个神经元与隐含层第 j 个神经元间的调节权重。

    (4)权重参数的迭代计算

    RBF神经网络权重参数的训练方法在这里取为梯度下降法。中心、宽度和调节权重参数均通过学习来自适应调节到最佳值,迭代计算如下:

     为第k个输出神经元与第j个隐含层神经元之间在第t 次迭代计算时的调节权重。

    为第j 个隐含层神经元对于第i个输入神经元在第t 次迭代计算时的中心分量;

    为与中心对应的宽度

    η为学习因子

    E为RBF神经网络评价函数:

    其中,Olk为第k 个输出神经元在第l个输入样本时的期望输出值;ylk为第k个输出神经元在第l个输入样本时的网络输出值。

    综上所述,给出RBF神经网络的学习算法:

    ① 按(1)确定参数的五个步骤对神经网络参数进行初始化,并给定η和α的取值及迭代终止精度ε 的值。

    ②按下式计算网络输出的均方根误差RMS 的值,若RMS≤ε ,则训练结束,否则转到第③步

    ③按照(4)权重迭代计算,对调节权重,中心和宽度参数进行迭代计算。

    ④返回步骤②

     

    此处有一个利用Kmean初始化中心点和随机初始化中心点的,使用TensorFlow2.0搭建RBF神经网络层的代码:https://github.com/PetraVidnerova

    展开全文
  • 在这篇论文中,我们提出了一个使用局部支撑径向基函数对三维散乱点进行Hermite插值或逼近的快速曲面重构方法.通过构造给定数据点集的一个层次结构,采用逐层精化的方式实现了全局曲面重构的效果,解决了因使用局部支撑...
  • 径向基函数是一个取值仅仅依赖于离原点距离的实值函数,也就是Φ(x)=Φ(‖x‖),或者还可以是到任意一点c的距离,c点称为中心点,也就是Φ(x,c)=Φ(‖x-c‖)。任意一个满足Φ(x)=Φ(‖x‖)特性的函数Φ都叫做...
  • RBF径向基函数

    万次阅读 2018-07-02 19:10:19
    一、径向基函数径向基函数是某种沿径向对称的标量函数,通常定义为样本到数据中心之间径向距离(通常是欧氏距离)的单调函数(由于距离是径向同性的)。RBF核是一种常用的核函数。它是支持向量机分类中最为常用的核...

    一、径向基函数

    径向基函数是某种沿径向对称的标量函数,通常定义为样本到数据中心之间径向距离(通常是欧氏距离)的单调函数(由于距离是径向同性的)。RBF核是一种常用的核函数。它是支持向量机分类中最为常用的核函数。常用的高斯径向基函数形如:

    其中,可以看做两个特征向量之间的平方欧几里得距离。x’为核函数中心,是一个自由参数,是函数的宽度参数 , 控制了函数的径向作用范围。。一种等价但更为简单的定义是设一个新的参数 \gamma,其表达式为

    因为RBF核函数的值随距离减小,并介于0(极限)和1(当x = x’的时候)之间,所以它是一种现成的相似性度量表示法。核的特征空间有无穷多的维数;对于 =1,它的展开式为:

    径向基函数二维图像:
    RBF核
    RBF 拥有较小的支集。针对选定的样本点,它只对样本附近的输入有反应,如下图。
    这里写图片描述
    RBF 使样本点只被附近(圈内)的输入激活。
    T. Poggio 将 RBF 比作记忆点。与记忆样本越近,该记忆就越被激活。
    RBF 核与多项式核相比具有参数少的优点。因为参数的个数直接影响到模型选择的复杂性。
    其他的径向基函数有:
    Reflected Sigmoidal(反常S型)函数:

    Inverse multiquadrics(拟多二次)函数:

    σ称为径向基函数的扩展常数,它反应了函数图像的宽度,σ越小,宽度越窄,函数越具有选择性。

    二、径向基网络

    RBF(Radial Basis Function,径向基)网络是一种单隐层前馈神经网络,它使用径向基函数作为隐层神经元激活函数,而输出层则是对隐层神经元输出的线性组合。径向基函数网络具有多种用途,包括包括函数近似法、时间序列预测、分类和系统控制。他们最早由布鲁姆赫德(Broomhead)和洛维(Lowe)在1988年建立。
    RBF网络分为标准RBF网络,即隐层单元数等于输入样本数;和广义RBF网络,即隐层单元数小于输入样本数。但广义RBF的隐藏层神经元个数大于输入层神经元个数,因为在标准RBF网络中,当样本数目很大时,就需要很多基函数,权值矩阵就会很大,计算复杂且容易产生病态问题。
    径向基网络:
    径向基网络

    RBF神经网络的基本思想:用RBF作为隐单元的“基”构成隐藏层空间,隐藏层对输入矢量进行变换,将低维的模式输入数据变换到高维空间内,使得在低维空间内的线性不可分问题在高维空间内线性可分。详细一点就是用RBF的隐单元的“基”构成隐藏层空间,这样就可以将输入矢量直接(不通过权连接)映射到隐空间。当RBF的中心点确定以后,这种映射关系也就确定 了。而隐含层空间到输出空间的映射是线性的(注意这个地方区分一下线性映射和非线性映射的关系),即网络输出是隐单元输出的线性加权和,此处的权即为网络可调参数。
    通常采用两步过程来训练RBF网络:第一步,确定神经元中心,常用的方式包括随机采样、聚类等;第二步,利用BP算法等来确定参数。
    [Park and Sandberg,1991]证明,具有足够多隐层神经元的RBF网络能以任意精度逼近任意连续函数。
    且RBF网络可以处理系统内的难以解析的规律性,具有良好的泛化能力,并有很快的学习收敛速度。
    RBF网络学习收敛得比较快的原因:当网络的一个或多个可调参数(权值或阈值)对任何一个输出都有影响时,这样的网络称为全局逼近网络。由于对于每次输入,网络上的每一个权值都要调整,从而导致全局逼近网络的学习速度很慢。BP网络就是一个典型的例子。如果对于输入空间的某个局部区域只有少数几个连接权值影响输出,则该网络称为局部逼近网络。常见的局部逼近网络有RBF网络、小脑模型(CMAC)网络、B样条网络等。

    三、参数计算

    中心点的计算:
    标准RBF的样本点即为中心
    广义RBF的中心点通过随机采用、聚类等方法确定
    w和β的计算:
    人为指定:所有神经元的β都一样,β=1/2(的平方),=dmax/根号下的2M。dmax为任意两个样本点距离的最大值,M为样本个数。
    BP算法迭代确定。

    四、RBF神经网络与SVM with RBF Kernel的区别和联系:

    从模型上看,区别不大,区别在于训练方式。
    RBF神经网络训练分两阶段。第一阶段为非监督学习,从数据中选取记忆样本(上上图中的紫色中心)。例如聚类算法可在该阶段使用。第二阶段为监督学习,训练记忆样本与样本输出的联系。该阶段根据需要可使用 AD/BP。(AD,即 Automatic Differentiation (Backpropagation) )

    展开全文
  • 本教程简要介绍了径向基函数神经网络训练及其作为函数逼近器的数值实现。 在 MATLAB :trade_mark: 环境中模拟网络,训练它解决插值和函数逼近问题。 获得的结果非常有趣并且表现出优异的性能。 由于该算法是函数的...
  • 径向基函数神经网络

    2016-08-28 17:09:19
    前馈神经网络之径向基函数神经网络
  • 使用基于径向基函数神经网络的机器学习对 2 类和 3 类问题进行一维矩阵分类。 它还包含一个基于矩阵的 AND 门示例和大小为 12 和 3 的输入样本
  • 径向基函数神经网络进行异或分类,首先在4个象限随机生训练数据,然后进行FCM聚类,取4个隐层神经元代表分成4类,最后通过伪逆求出输出层神经元权重,输出通过0和1区分
  • 适应动态环境的再生和竞争径向基函数网络 适应动态环境的再生和竞争径向基函数网络 Koji Okuhara 管理和信息科学系,广岛县大学,Shyobara,日本 727-0023 Koji Sasaki 和 Shunji Osaki 工程学院, Hiroshima ...
  • 补偿光线步进法通过预处理将烟雾仿真数据分解为一组径向基函数的近似值和残差项。在只考虑径向基函数近似的密度下计算源辐射分布,并在光线步进过程中加入残差的影响。虽然这种算法可以带来实时高质量的渲染结果,...
  • 高斯径向基函数(RBF)神经网络

    万次阅读 多人点赞 2019-04-03 00:53:52
    高斯径向基函数(RBF)神经网络 牛顿插值法-知乎 泰勒公式 径向基函数-wiki 径向基网络之bp训练 RBF网络逼近能力及其算法 线性/非线性,使用”多项式“逼近非线性,通过调节超参数来改善多项式参数进一步拟合真实非...

    高斯径向基函数(RBF)神经网络

    牛顿插值法-知乎
    泰勒公式
    径向基函数-wiki
    径向基网络之bp训练
    RBF网络逼近能力及其算法
    线性/非线性,使用”多项式“逼近非线性,通过调节超参数来改善多项式参数进一步拟合真实非线性。

    1.径向基函数
    2.RBF网络
    3.RBF网络训练方法
    4.RBF网络和BP网络对比
    5.RBF网络和SVM对比
    6.高斯核函数为什么可以映射到高维
    7.前馈网络、递归网络和反馈网络

    径向基函数

    说径向基网络之前,先聊下径向基函数径向基函数(英语:radial basis function,缩写为RBF)是一个取值仅依赖于到原点距离的实值函数,即 ϕ(x)=ϕ(x){\displaystyle \phi (\mathbf {x} )=\phi (\|\mathbf {x} \|)}。此外,也可以按到某一中心点c的距离来定义, 即 ϕ(x,c)=ϕ(xc){\displaystyle \phi (\mathbf {x} ,\mathbf {c} )=\phi (\|\mathbf {x} -\mathbf {c} \|)}。任一满足 ϕ(x)=ϕ(x){\displaystyle \phi (\mathbf {x} )=\phi (\|\mathbf {x} \|)}的函数都可称作径向函数。其中,范数一般为欧几里得距离,不过亦可使用其他距离函数。

    可以用于许多径向基函数的和来逼近某一给定的函数。这一逼近的过程可看作是一个简单的神经网络(rbf网络中的每个隐单元看作一个径向基函数,然后再线性加权结合逼近)。此外在机器学习中,径向基函数还被用作支持向量机的核函数。

    看了好多博客基本都没有谈到为什么径向基函数可以逼近函数,说数谈的也说的不清楚,强硬开始径向基网络的分析,以下是我的一些见解
    既然是逼近函数,那么建议读者先简单通过顶部的知乎链接了解下逼近这个概念和多变量插值问题。

    为什么径向基函数可以逼近给定函数呢? 换句话说也就是使用径向基函数解决多变量插值问题,从几何意义上看,相当于根据稀疏的给定样本数据点恢复一个连续的超曲面,在给定点处曲面的值要满足样本值。先给出基于径向基函数的插值函数如下:
    在这里插入图片描述
    可以看出插值函数就是由p个径向基函数和其权值构成(p为给定的样本数),那么也就意味着逼近的这个超曲面上任何一点可以由对应的基函数值得出,具体实例看下图(搬运)
    在这里插入图片描述
    第一张图即给出二维平面中的n个样本点,然后构建n个基函数,如图二中红色的曲线,假设采用高斯径向基函数,其对应的曲线即高斯分布曲线,图三中的蓝色曲线即真正曲线,多维情况下即为超曲面。而我们高斯径向基函数要做的就是用这n个高斯曲线去拟合这条蓝色曲线。可以看出图三中的红色曲线和图二中的曲线不同,这是由图二的曲线乘以一个权值得到的,这也就对应了上面说到的插值函数就是由p个径向基函数和其权值构成(p为给定的样本数)。例如对x1,其真实值为f(x1),即图三中的a点,而与高斯曲线相交于b、c两点,高斯径向基函数拟合的结果就是b和c的纵坐标之和,f(x1)-b-c就是误差,我们要做的就是优化权值参数或者选取其他径向基函数来尽可能还原蓝色曲线。

    RBF网络

    BF网络能够逼近任意的非线性函数,可以处理系统内的难以解析的规律性,具有良好的泛化能力,并有很快的学习收敛速度,已成功应用于非线性函数逼近、时间序列分析、数据分类、模式识别、信息处理、图像处理、系统建模、控制和故障诊断等。

    简单说明一下为什么RBF网络学习收敛得比较快。当网络的一个或多个可调参数(权值或阈值)对任何一个输出都有影响时,这样的网络称为全局逼近网络。由于对于每次输入,网络上的每一个权值都要调整(例如传统的多项式插值法),从而导致全局逼近网络的学习速度很慢。BP网络就是一个典型的例子。

    如果对于输入空间的某个局部区域只有少数几个连接权值影响输出,则该网络称为局部逼近网络。常见的局部逼近网络有RBF网络、小脑模型(CMAC)网络、B样条网络等。

    明白RBF如何逼近一个给定函数后,RBF网络就是用网络来实现上述思路。
    径向基函数网络通常有三层:输入层、隐藏层和一个非线性激活函数和线性径向基神经网络输出层。输入可以被建模为实数向量。输出是输入向量的一个标量函数。rbf简单网络模型如下:
    在这里插入图片描述
    RBF网络的基本思想是:用RBF作为隐单元的“基”构成隐含层空间,这样就可以将输入矢量直接映射到隐空间,而不需要通过权连接。当RBF的中心点确定以后,这种映射关系也就确定了。而隐含层空间到输出空间的映射是线性的,即网络的输出是隐单元输出的线性加权和,此处的权即为网络可调参数。其中,隐含层的作用是把向量从低维度的p映射到高维度的h,这样低维度线性不可分的情况到高维度就可以变得线性可分了,主要就是核函数的思想。这样,网络由输入到输出的映射是非线性的,而网络输出对可调参数而言却又是线性的。网络的权就可由线性方程组直接解出,从而大大加快学习速度并避免局部极小问题。

    RBF网络训练方法

    我们由RBF函数过渡到RBF网络,接下来我们研究如何搭建一个RBF网络,由上述内容我们可以RBF网络无非3层,而输入层是无法优化的,只有隐藏层和输出层了,因此RBF网络训练就是对两组网络参数的学习:
    1.隐层节点中心、RBF宽度、以及隐层节点数
    2.隐层到输出层连接权值

    1、方法一:

    通过非监督方法得到径向基函数的中心和方差,通过监督方法(最小均方误差)得到隐含层到输出层的权值。具体如下:

    (1)在训练样本集中随机选择h个样本作为h个径向基函数的中心。更好的方法是通过聚类,例如K-means聚类得到h个聚类中心,将这些聚类中心当成径向基函数的h个中心。

    (2)RBF神经网络的基函数为高斯函数时,方差可由下式求解:
    在这里插入图片描述
    式中cmax 为所选取中心之间的最大距离,h是隐层节点的个数。扩展常数这么计算是为了避免径向基函数太尖或太平。

    (3)隐含层至输出层之间神经元的连接权值可以用最小均方误差LMS直接计算得到,计算公式如下:(计算伪逆)(d是我们期待的输出值)

    在这里插入图片描述
    2、方法二:

    采用监督学习算法对网络所有的参数(径向基函数的中心、方差和隐含层到输出层的权值)进行训练。主要是对代价函数(均方误差)进行梯度下降,然后修正每个参数。具体如下:

    (1)随机初始化径向基函数的中心、方差和隐含层到输出层的权值。当然了,也可以选用方法一中的(1)来初始化径向基函数的中心。

    (2)通过梯度下降来对网络中的三种参数都进行监督训练优化。代价函数是网络输出和期望输出的均方误差:
    在这里插入图片描述
    然后每次迭代,在误差梯度的负方向已一定的学习率调整参数。

    RBF网络与BP网络对比

    1、局部逼近与全局逼近:

    BP神经网络的隐节点采用输入向量与权向量的内积作为激活函数的自变量,而激活函数采用Sigmoid函数。各调参数对BP网络的输出具有同等地位的影响,因此BP神经网络是对非线性映射的全局逼近,每当有新的样本出现时,都要重新计算参数,训练很慢。

    RBF神经网络的隐节点采用输入向量与中心向量的距离(如欧式距离)作为函数的自变量,并使用径向基函数(如Gaussian函数)作为激活函数。神经元的输入离径向基函数中心越远,神经元的激活程度就越低(高斯函数)。RBF网络的输出与部分调参数有关,譬如,一个wij值只影响一个yi的输出(参考上面的径向函数3张图,目标函数的逼近只靠最近的几个径向函数来实现,而距离远的径向函数不起作用,隐节点的这一特性常被称为“局部特性”。),RBF神经网络因此具有“局部逼近”特性。
      
    简单说,假设输入向量的取值范围是[0,1],那么全局逼近就是有n个函数,每个函数的自变量输入范围是[0,1],每输入一个变量,会得到n个值,这n个值相加之和就是逼近的真实值,也就是说用全部函数来逼近目标函数。而局部逼近也是n个函数,但是每个函数的自变量是1/n,那么输入一个变量,只会得到一个值,这个值就是逼近的真实值,也就是说用一个函数来逼近目标函数,实际是数个函数,所以说是局部逼近。(以上例子仅为了通俗对比二者而举)

    2、中间层数的区别
      BP神经网络可以有多个隐含层,但是RBF只有一个隐含层。
      
    3、训练速度的区别
      使用RBF的训练速度快,一方面是因为隐含层较少,另一方面,局部逼近可以简化计算量。对于一个输入x,只有部分神经元会有响应,其他的都近似为0,对应的w就不用调参了。

    4、Poggio和Girosi已经证明,RBF网络是连续函数的最佳逼近,而BP网络不是。

    RBF网络和SVM对比

    SVM等如果使用核函数的技巧的话,不太适应于大样本和大的特征数的情况(因为SVM间隔最大化是一个二次规划问题,求解将涉及m阶矩阵的计算(m为样本的个数), 因此SVM不适用于超大数据集),因此提出了RBF。

    另外,SVM中的高斯核函数可以看作与每一个输入点的距离,而RBF神经网络对输入点做了一个聚类。RBF神经网络用高斯核函数时,其数据中心C可以是训练样本中的抽样,此时与svm的高斯核函数是完全等价的,也可以是训练样本集的多个聚类中心,所以他们都是需要选择数据中心的,只不过SVM使用高斯核函数时,这里的数据中心都是训练样本本身而已。
      在这里插入图片描述

    高斯核函数为什么可以将低维映射到高维

    相信大部分人都听过核函数可以将低维数据映射到高维中,其实准确说核函数只是给出了数据在低维下计算高维内积的方法。

    对于高斯核为什么可以将数据映射到无穷多维,我们可以从泰勒展开式的角度来解释,

    首先我们要清楚,SVM中,对于维度的计算,我们可以用内积的形式,假设函数:
    κ(x1,x2)=(1,x1x2,x2)\kappa \left( x_{1}, x_{2} \right) = (1, x_{1}x_{2}, x^{2} ) 表示一个简单的从二维映射到三维。

    则在SVM的计算中,可以表示为:
    κ(x1,x2)=1+x1x2+x2\kappa \left( x_{1}, x_{2} \right) = 1+x_{1}x_{2}+ x^{2}

    再来看exe^{x}泰勒展开式(具体泰勒展开公式推导见顶部知乎链接):
    ex1+x+x22!+x33!+...+xnn!e^{x} \approx 1 + x + \frac{x^{2}}{2!} + \frac{x^{3}}{3!} + ... + \frac{x^{n}}{n!}

    所以这个无穷多项的式子正是对于exe^{x}的近似,exe^{x}所对应的映射:
    κ(x)=(1,x,x22!,x33!,...,xnn!)\kappa \left( x \right) = \left( 1, x, \frac{x^{2} }{2!}, \frac{x^{3} }{3!}, ..., \frac{x^{n} }{n!} \right)

    再来看高斯核:
    κ(x1,x2)=e(x1x222σ2)\kappa \left( x_{1} , x_{2} \right) = e^{\left(- \frac{\left||x_{1} - x_{2} \right|| ^{2} }{2\sigma ^{2} } \right) }

    将泰勒展开式带入高斯核,我们得到了一个无穷维度的映射
    κ(x1,x2)=1+(x1x222σ2)+(x1x222σ2)22!+...+(x1x222σ2)33!+...+(x1x222σ2)nn!\kappa \left( x_{1} , x_{2} \right) = 1 + \left(- \frac{\left||x_{1} - x_{2} \right|| ^{2} }{2\sigma ^{2} } \right) + \frac{(-\frac{\left||x_{1} - x_{2} \right|| ^{2} }{2\sigma ^{2} })^{2} }{2!} + ... + \frac{(-\frac{\left||x_{1} - x_{2} \right|| ^{2} }{2\sigma ^{2} })^{3} }{3!} + ... + \frac{(-\frac{\left||x_{1} - x_{2} \right|| ^{2} }{2\sigma ^{2} })^{n} }{n!}
    即:
    在这里插入图片描述
    当n趋于正无穷时,对于x1x_{1}x2x_{2}的内积形式符合在SVM中无穷维度下的内积计算,即高斯核将数据映射到无穷高的维度。

    前馈网络、递归网络和反馈网络

    前馈网络一般指前馈神经网络或前馈型神经网络。它是一种最简单的神经网络,各神经元分层排列。每个神经元只与前一层的神经元相连。接收前一层的输出,并输出给下一层,各层间没有反馈。包括:BP神经网络、RBF神经网络等。

    递归神经网络(RNN)是两种人工神经网络的总称。一种是时间递归神经网络(recurrent neural network),又名循环神经网络,包括RNN、LSTM、GRU等;另一种是结构递归神经网络(recursive neural network)。

    反馈网络(Recurrent Network),又称自联想记忆网络,其目的是为了设计一个网络,储存一组平衡点,使得当给网络一组初始值时,网络通过自行运行而最终收敛到这个设计的平衡点上。包括CHNN、DHNN等。

    展开全文
  • 电子散斑干涉技术(ESPI)测量物体变形时,初始载荷下采集的散斑图像呈现出粗宽分布,提出了一种基于径向基函数的粗宽条纹图滤波方法。介绍了基于径向基函数平滑插值的滤波原理,分析了该滤波方法的参数选取问题。通过...
  • 径向逻辑的径向基函数神经网络的硬件实现
  • 径向基函数_matlab.rar

    2020-04-25 20:25:43
    给出了偏微分方程的径向基函数配点法的数值解法,进行了数值模拟,并且给出了图形-The numerical solution of the radial basis function with partial differential equation method, numerical simulation, and ...
  • 径向基函数神经网络(RBFNN)详解

    万次阅读 多人点赞 2019-09-13 16:29:05
    径向基函数神经网络(RBFNN) 前言 RBFNN是20世纪80年代末提出的一种单隐层、以函数逼近为基础的前馈神经网络。随着研究日渐成熟,RBFNN以其结构简单、非线性逼近能力强以及良好的推广能力,受到各领域研究者的极...
  • 径向基函数网络.wmv

    2019-07-22 02:50:54
    基于MATLAB实现的径向基函数网络,该视频详细的展现了使用MATLAB的实现过程
  • 对永磁同步电机直接转矩控制系统特性进行了深入研究, 提出一种新的径向基函数神经网络控制器, 给出 了神经网络控制器的结构设计、样本选取及训练方法. 利用系统中的开关表作为导师对径向基函数神经网络控制器...
  • 径向基函数网络

    2013-03-17 11:43:34
    挺好的一个资源,讲的是径向基函数,讲的很清楚,理解起来比较容易!
  • 该程序是使用 K-Mean Clustering 实现分类任务的径向基函数给出两个示例一次检查一个 使用伪逆技术求解 K*W=T 两边相乘K'得到K'*K*W=K'*T 两边乘以(K'*K)的倒数得到W=inv(K'*K)*K'*T
  • 针对数值算例,比较了在相同步长时,不同的正定径向基函数对微分方程数值解的精确程度,并比较不同的正定径向基函数在相同的形状参数时绝对误差的差异,说明微分方程数值解的精确程度与径向基函数形状参数的取值密切...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,265
精华内容 4,106
关键字:

径向基函数