• 人工神经网络基础概念、原理知识(补)


    一提到人工神经网络应当想到三个基础的知识点:一是神经元模型;二是神经网络结构;三是学习算法。神经网络的种类多种多样,但其分类依据逃不出上面上个基础知识点。所以在学习中如果能够仅仅把握住以上三个线索,就能触类旁通,拥有一个非常好的视角看待神经网络。今天就对这三个基础知识点进行总结,达到指导神经网络学习以及深化对神经网络的理解的目的。

    一、神经元模型

    人工神经网络是在现代神经生物学研究基础上提出的模拟生物过程 ,反映人脑某些特性的一种计算结构。它不是人脑神经系统的真实描写,而只是它的某种抽象、简化和模拟。根据前面对生物神经网络的介绍可知,神经元及其突触是神经网络的基本器件 。 因此,模拟生物神经网络应首先模拟生物神经元。在人工神经网络中,神经元常被称为“处理单元” 。有时从网络的观点出发常把它称为“节点” 。人工神经元是对生物神经元的一种形式化描述,它对生物神经元的信息处理过程进行抽象,并用数学语言予以描述;对生物神经元的结构和功能进行模拟 , 并用模型图予以表达。

    1. 神经元建模

    目前人们提出的神经元模型已有很多 ,其中最早提出且影响最大的,是1943年心理学家 McCulloch 和数学家 W . Pitts 在分析总结神经元基本特性的基础上首先提出的M-P模型 。 该模型经过不断改进后,形成目前广泛应用的形式神经元模型。关于神经元的信息处理机制,该模型在简化的基础上提出以下6点假定进行描述 :

    (1) 每个神经元都是一个多输入单输出的信息处理单元 ;
    (2) 神经元输入分兴奋性输入和抑制性输入两种类型 ;
    (3) 神经元具有空间整合特性和阈值特性 ;
    (4) 神经元输入与输出间有固定的时滞 ,主要取决于突触延搁 ;
    (5) 忽略时间整合作用和不应期 ;
    (6) 神经元本身是非时变的 , 即其突触时延和突触强度均为常数 。

    基于上面的6条假设,神经元建模图示如下:


    实际上表达就是一个整合∑、映射F的数学建模。

    2. 神经元的数学模型

    由神经元模型示意图,可以得到神经元的数学模型如下:


    若将阈值参数作为输入端与w0权值整合到∑当中,就可以得到如下的简化形式:


    3. 神经元的激活函数(映射F)

    神经元的各种不同数学模型的主要区别在于采用了不同的变换函数 ,从而使神经元具有不同的信息处理特性 。 神经元的信息处理特性是决定人工神经网络整体性能的三大要素之一 , 因此变换函数的研究具有重要意义 。 神经元的变换函数反映了神经元输出与其激活状态之间的关系 , 最常用的变换函数有以下 4 种形式 。

    (1)阈值型变换函数

    采用单位阶跃响应函数,公式以及图示如下:


    (2)非线性变换函数

    非线性变换函数为实数域 R 到[0, 1]闭集的非减连续函数,代表了状态连续型神经元模型。 最常用的非线性变换函数是单极性的 Sigmoid 函数曲线,简称 S 型函数, 其特点是函数本身及其导数都是连续的, 因而在处理上十分方便。 单极性以及双极型S型函数公式及图示如下:



    (3)分段线性变换函数

    该函数的特点是神经元的输入与输出在一定区间内满足线性关系。由于具有分段线性的特点,因而在实现上比较简单。这类函数也称为伪线性函数,单极性分段线性变换函数的g公式和图示如下:



    (4)概率型变换函数


    采用概率型变换函数的神经元模型其输入与输出之间的关系是不确定的 ,需用一个随机函数来描述其输出状态为1或为0的概率。 设神经元输出为 1 的概率如下:


    式中 ,T 称为温度参数 。 由于采用该变换函数的神经元输出状态分布与热力学中的玻尔兹曼(Boltzmann)分布相类似 , 因此这种神经元模型也称为热力学模型 。

    二、神经网络结构

      大量神经元组成庞大的神经网络,才能实现对复杂信息的处理与存储,并表现出各种优越的特性。神经网络的强大功能与其大规模并行互连、非线性处理以及互连结构的可塑性密切相关。因此必须按一定规则将神经元连接成神经网络,并使网络中各神经元的连接权按一定规则变化。生物神经网络由数以亿计的生物神经元连接而成,而人工神经网络限于物理实现的困难和为了计算简便,是由相对少量的神经元按一定规律构成的网
    络。人工神经网络中的神经元常称为节点或处理单元,每个节点均具有相同的结构,其动作在时间和空间上均同步。

      人工神经网络的模型很多,可以按照不同的方法进行分类。其中常见的两种分类方法是:按网络连接的拓扑结构分类和按网络内部的信息流向分类。

    1. 网络拓扑结构类型

    神经元之间的连接方式不同 , 网络的拓朴结构也不同 。 根据神经元之间连接方式 , 可将神经网络结构分为两大类 。

    (1) 层次型

    具有层次型结构的神经网络将神经元按功能分成若干层 ,如输入层 、中间层(也称为隐层)和输出层 , 各层顺序相连 , 如下图所示



    输入层各神经元负责接收来自外界的输入信息 , 并传递给中间各隐层神经元 ;隐层是神经网络的内部信息处理层 ,负责信息变换 ,根据信息变换能力的需要 ,隐层可设计为一层或多层 ;最后一个隐层传递到输出层各神经元的信息经进一步处理后即完成一次信息处理 ,由输出层向外界(如执行机构或显示设备)输出信息处理结果 。 层次型网络结构有 3 种典型的结合方式 。

    (A) 单纯型层次网络结构

    结构如上图所示,神经元分层排列 ,各层神经元接收前一层输入并输出到下一层 , 层内神经元自身以及神经元之间不存在连接通路 。

    (B) 输出层到输入层有连接的层次网络结构

    如图所示:



    输入层到输出层有连接路径的层次型网络结构。其中输入层神经元既可接收输入,也具有信息处理功能。

    (C) 层内有互连的层次网络结构

    如图所示:



    同一层内神经元有互连的层次网络结构 ,这种结构的特点是在同一层内引入神经元间的侧向作用 ,使得能同时激活的神经元个数可控 ,以实现各层神经元的自组织 。

    (2) 互连型结构

    对于互连型网络结构 ,网络中任意两个节点之间都可能存在连接路径 , 因此可以根据网络中节点的互连程度将互连型网络结构细分为 3 种情况 。

    (A) 全互连型

    网络中的每个节点均与所有其他节点连接,如下图所示:



    (B) 局部互连型

    网络中的每个节点只与其邻近的节点有连接,如下图所示:

    (C) 稀疏连接型

    网络中的节点只与少数相距较远的节点相连

    2. 网络信息流向类型

      根据神经网络内部信息的传递方向,可分为两种类型 。

    (1) 前馈型网络

    前馈是因网络信息处理的方向是从输入层到各隐层再到输出层逐层进行而得名 。 从信息处理能力看 ,网络中的节点可分为两种 :一种是输入节点 ,只负责从外界引入信息后向前传递给第一隐层 ; 另一种是具有处理能力的节点 , 包括各隐层和输出层节点 。 前馈网络中某一层的输出是下一层的输入 , 信息的处理具有逐层传递进行的方向性 , 一般不存在反馈环路 。 因此这类网络很容易串联起来建立多层前馈网络 。多层前馈网络可用一个有向无环路的图表示 。 其中输入层常记为网络的第一层 ,第一个隐层记为网络的第二层 , 其余类推 。 所以 ,当提到具有单层计算神经元的网络时 ,指的应是一个两层前馈网络(输入层和输出层) , 当提到具有单隐层的网络时 , 指的应是一个三层前馈网络(输入层 、隐层和输出层) 。

    (2) 反馈型网络

    在反馈网络中所有节点都具有信息处理功能 ,而且每个节点既可以从外界接收输入,同时又可以向外界输出。 单纯全互连结构网络是一种典型的反馈型网络 ,可以用下图所示的完全的无向图表示:



    神经网络的拓扑结构是决定神经网络特性的第二大要素 ,其特点可归纳为分布式存储记忆与分布式信息处理 、高度互连性 、高度并行性和结构可塑性 。

    三、神经网络学习

       人工神经网络的功能特性由其连接的拓扑结构和突触连接强度 ,即连接权值决定 。神经网络全体连接权值的可用一个矩阵 W 表示 , 它的整体反映了神经网络对于所解决问题的知识存储 。 神经网络能够通过对样本的学习训练 ,不断改变网络的连接权值以及拓扑结构 , 以使网络的输出不断地接近期望的输出 。 这一过程称为神经网络的学习或训练 ,其本质是可变权值的动态调整 。 神经网络的学习方式是决定神经网络信息处理性能的第三大要素 , 因此有关学习的研究在神经网络研究中具有重要地位 。 改变权值的规则称为学习规则或学习算法(亦称训练规则或训练算法) , 在单个处理单元层次 , 无论采用哪种学习规则进行调整 , 其算法都十分简单 。 但当大量处理单元集体进行权值调整时 , 网络就呈现出“智能”特性 , 其中有意义的信息就分布地存储在调节后的权值矩阵中 。神经网络的学习算法很多 , 根据一种广泛采用的分类方法 , 可将神经网络的学习算法归纳为 3 类 。 一类是有导师学习 , 一类为无导师学习 , 还有一类是灌输式学习 。有导师学习也称为有监督学习 , 这种学习模式采用的是纠错规则 。 在学习训练过程中需要不断地给网络成对提供一个输入模式和一个期望网络正确输出的模式 , 称为“教师信号” 。 将神经网络的实际输出同期望输出进行比较 , 当网络的输出与期望的教师信号不符时 , 根据差错的方向和大小按一定的规则调整权值 , 以使下一步网络的输出更接近期望结果 。 对于有导师学习 , 网络在能执行工作任务之前必须先经过学习 , 当网络对于各种给定的输入均能产生所期望的输出时 , 即认为网络已经在导师的训练下“学会”了训练数据集中包含的知识和规则 , 可以用来进行工作了 。

    无导师学习也称为无监督学习 , 学习过程中 ,需要不断地给网络提供动态输入信息 ,网络能根据特有的内部结构和学习规则 , 在输入信息流中发现任何可能存在的模式和规
    律 , 同时能根据网络的功能和输入信息调整权值 , 这个过程称为网络的自组织 ,其结果是使网络能对属于同一类的模式进行自动分类 。 在这种学习模式中 ,网络的权值调整不取决于外来教师信号的影响 , 可以认为网络的学习评价标准隐含于网络的内部 。在有导师学习中 , 提供给神经网络学习的外部指导信息越多 , 神经网络学会并掌握的
    知识越多 , 解决问题的能力也就越强 。 但是 ,有时神经网络所解决的问题的先验信息很少 , 甚至没有 , 这种情况下无导师学习就显得更有实际意义 。灌输式学习是指将网络设计成能记忆特别的例子 ,以后当给定有关该例子的输入信息时 , 例子便被回忆起来 。 灌输式学习中网络的权值不是通过训练逐渐形成的 , 而是通过某种设计方法得到的。 权值一旦设计好即一次性“灌输”给神经网络不再变动 ,因此网络对权值的“学习”是“死记硬背”式的 , 而不是训练式的 。有导师学习和无导师学习网络的运行一般分为训练阶段和工作两个阶段 。 训练学习的目的是为了从训练数据中提取隐含的知识和规律 , 并存储于网络中供工作阶段使用 。

    可以认为 , 一个神经元是一个自适应单元 ,其权值可以根据它所接收的输入信号 、它的输出信号以及对应的监督信号进行调整 。 权向量 Wj 的在 t 时刻的调整量 ΔWj (t)与 t时刻的输入向量 X(t)和学习信号 r 的乘积成正比 。 用数学式表示及其图示如下所示:



    常用的学习规则总结如下表所示:



    总结

    因为我对神经网络进行学习时并没有做到很好的按照一定的学习顺序进行安排,而是按照需求分篇章进行学习,所以总是急于求成。对原本最重要的基础部分都没有掌握就直接急着去学习新的网络结构和新的模型,这样导致学习效率低下,直到在学习中遇到了瓶颈,才回过头来去翻看了韩立群老师的《人工神经网络教程》中的人工神经网络基础章节,其基本内容如下面所讲述的一样。在读过这一章节之后,我感觉到似乎有一种提纲挈领的作用,反过头来再去看那些多层感知器、BP算法、Hopfield网络、模拟退火、波尔兹曼机、自组织竞争神经网络等,会感到一种归类整理的效果。所以,借着这篇博文进行总结,同时希望能够帮助更多人能够把握住神经网络中最为基础的三个纲:神经元模型、神经网络结构和神经网络学习。真正做到触类旁通,既能进得去,也能站出来看问题。

    ************************

    2015-8-13

    艺少

  • 相关阅读:
    iTerm2使用技巧
    我的mac下有关php扩展的安装
    xmlhttprequest 1.0和2.0的区别,from qq前端哥
    PHP错误日志记录:display_errors与log_errors的区别
    目前php连接mysql的主要方式
    闭包介绍汇总
    接口设计知识总结
    git命令——从GitHub clone XXX分支,本地创建新分支push到远程仓库
    Spring错误——Junit测试——java.net.BindException: Address already in use: bind
    Java.util.Random生成随机数
  • 原文地址:https://www.cnblogs.com/huty/p/8519250.html
Copyright © 2020-2023  润新知