• 【人工智能基础】人工神经网络


    一、人工神经网络的三要素

    人工神经元数理模型

    MP模型是世界上第一个神经计算模型,为神经网络理论提供了基础 

    mp神经元模型基本组成

    MP模型功能

    • 对树突输入u的线性加权求和
    • 对净输入的非线性转换\

    作用函数的功能作用函数的功能

    MP神经元模型的作用函数是单位阶跃函数。当x≥0时f(x)=1,反之f(x)=0

    作用函数的功能

    1. 控制输入对输出的激活作用
    2. 对输入、输出进行函数转换
    3. 将无限域的输入变换为有限范围内的输出

    在神经元模型中,作用函数还有其他形式,包括:

    • 阈值型作用函数(单位阶跃函数,符号函数):采用阶跃作用函数的神经元,称为阈值逻辑单元
    • 连续非线性作用函数(双极性函数、双曲正切函数)
    • 分段线性作用函数

    人工神经网络结构

    根据网络拓扑结构形式分

    层次型神经网络

    • 单纯型(前向神经网络):神经元分层排列,顺序连接,神经元间不存在反馈
    • 层内有互联型:任意两个神经元之间都有可能有相互连接
    • 有反馈型

    互联型神经网络

    根据神经网络内部信息传递方向分

    • 前馈型神经网络:没有反馈,结构简单,易于实现,适合解决一般的函数逼近和预测问题
    • 反馈型神经网络:有反馈,信息处理体现为状态变换。适合解决动态序列分析或联想记忆等问题

    人工神经网络学习算法

    神经网络的运行阶段

    学习阶段:通过学习训练样本或其他方法调整权值矩阵

    工作阶段:各连接权成熟,不再改变,用于求解实际问题

    学习方式

    有监督学习方式:根据实际输出和期望输出的偏差,按照一定准则调整权值

    无监督学习方式:仅根据输入调整权值

    学习规则

    联想式学习(Hebb学习规则)

    误差纠正式学习(Delta学习规则)

    二、感知器

    模拟人的视觉,接收环境信息,并由神经冲动进行信息传递的神经网络

    感知器的连接权值可变,被赋予了学习的特性

    单层感知器

    • 作用函数:阈值型函数
    • 网络结构:单层处理单元
    • 学习规则:感知器学习规则

    训练步骤

    1. 设置权值的处置wj(0)(j=0,1……n)为较小的随机非0值,设置学习率η∈(0,1],t=0
    2. 给定输入/输出样本对:up/dp(p=1,2……L),当up∈A时dp=+1,up∈B,dp=-1
    3. 对全部要本逐一求感知器输出
    4. 若yp(t)≠dp,权值第t+1次调整
    5. 若误差为0,学习结束,反之t++,回到第三步

    注意:判断输出误差时,要求所有样本误差为0,学习才结束

    功能

    n维输入的单节点感知器具有分类功能,其分类界面是n维空间的一个超平面,超平面法矢量是其连接权值向量,位置由神经元阈值确定

    感知器的学习过程就是将分类知识存储于神经元的权值向量与阈值中

    局限性

    如果输入的两类模式是线性可分集合,则算法收敛。反之无法收敛

    多层感知器(多层前馈神经网络)

    在输入和输出层间增加一层或多层隐单元

    三、误差反向传播网络(BP网络)

    • 单元特性:作用函数连续可微
    • 网络结构:多输入多输出的多层前馈网络
    • 学习规则:误差反向传播方法

    基本思想

    在外界输入样本的刺激下,不断改变网络的连接权值,使得网络的实际输出不断地接近期望的输出

    基本步骤

    1. 设置初始权值W(0)为较小的随机非零值
    2. 给定输入/输出要本结婚{up,dp}
    3. 重复迭代下列过程,直到妈祖收敛条件
    4. 对任意样本p正向传播、计算每层输出,然后反向传播,计算灵敏度和梯度
    5. 利用负梯度修正权值

    BP网络设计

    网络层数:优先考虑一个隐层,最多两个;

    输入层节点数:取决于输入向量的维数

    隐层节点数:如果两个隐层,第一隐层包含较多节点,第二隐层较少

    输出层节点数:根据实际问题的抽象模型确定

    神经元的作用函数

    1. 回归问题:隐层一般采用Sigmoid,输出层采用线性作用函数
    2. 分类问题:隐层选择Sigmoid、tanh或者Relu,输出层可以使用Sigmoid。限制输出值在[0,1]或者[-1,1]之间

    学习率:根据训练情况调整

    优势

    • 非线性映射能力
    • 并行分布处理方式
    • 自学习和自适应能力
    • 在线学习和数据融合能力

    局限性

    • 训练过程可能陷于局部最优
    • 参数选择缺乏有效方法
    • 网络学习的逼近和推广能力与训练样本有关
    • 网络具有不可重现性

    四、深度学习概述

    深度学习与浅层学习相比,强调了模型结构的深度,通常由5-10个活更多隐层。突出了特征学习的重要性,利用大数据来学习特征,能够刻画数据的丰富内在信息

    深度前馈网络的逐层训练方式

    1. 采用自下而上的无监督学习,每次调整一层,每层采用wake-sleep算法调优
    2. 自顶向下的有监督学习,在学习获得各层参数基础上,在最顶层添加一个分类器,利用梯度下降法微调整个网络参数

    优势

    • 通过深层非线性网络结构,实现复杂函数逼近,对输入数据进行分布式表示
    • 自动提取特征,对于各层学习到的特征由更好的解释性
    • 更充分利用无标签数据,不容易陷入局部最优
    • 结合大数据,不容易出现过拟合现象

    五、卷积神经网络

    基本结构

    卷积层

    每个隐层节点连接到图像某个足够小的局部上,局部卷积核参数共享,大大减少需要训练的权值参数

    池化层

    紧接在卷积层之后,简化从卷积层输出的信息,使用压缩方法,通过一个下采样的过程,减少图像规模,池化降低了每个特征映射的维度,但是保留了最重要的稀稀。池化有多种形式:最大、平均、求和等。最大池化效果最好

    作用

    1. 减少网络中待计算的参数数量,抑制过拟合
    2. 增强网络对输入图像中小变形、扭曲、平移的鲁棒性

    非线性激励层

    一般位于卷积层和池化层之后,也可以位于两者之间,是深度网络非线性的主要来源

    训练过程

    1. 用随机数初始化所有的卷积核参数和权重
    2. 将训练图片作为输入,执行前向步骤并计算每个类别对应输出概率
    3. 计算输出层总误差
    4. 反向传播,更新所有卷积核参数和权值,使输出误差最小化
  • 相关阅读:
    【RHCE】作业:DNS主从同步&防火墙iptables服务使用
    Java日志门面框架--SLF4J
    一篇带你了解如何使用纯前端类Excel表格构建现金流量表
    Springcloud之Sentinel服务容错
    2 Java并发原理精讲课程学习笔记
    Linux内核设计与实现 第四章 系统调用
    FormatterRegistry配置应用的格式转换功能
    Java使用Hutool工具包生成二维码、验证码、随机数
    STL upper_bound和lower_bound函数
    Abnormal build process termination:错误解决
  • 原文地址:https://blog.csdn.net/qq_56460466/article/details/138133372