本文主要参考周志华老师的《机器学习》和Tom M. Mitchell老师的《机器学习》。

神经网络是一种模拟人脑的神经网络以期能够实现类人工智能的机器学习技术。

一、神经网络的基本要素

如下为一个简单的“M-P神经元模型”。在这个模型中,神经元接收来自n个其他神经元传递过来的输入信号,这些输入信号通过带权重的连接进行传递,神经元接收到的总输入值将与神经元的阈值进行比较,然后通过“激活函数”处理以产生神经元的输出。

其中常用的激活函数为sigmoid函数,tanh函数等。

把许多个如上类似的神经元按照一定的层次连接起来,就得到了神经网络。

感知机就是一个简单的神经网络。感知机的内容可以参考:https://zhuanlan.zhihu.com/p/47878242

但感知机不能解决异或等线性不可分问题,因此,可以通过改变神经网络的结构来解决更多问题。

一般来说,神经网络的结构如下图所示:

输入:训练样本,神经网络的结构

输出:训练后的神经网络(主要学习到的为神经网络的权重)

二、神经网络的模型、策略、算法

1、反向传播算法(BackPropagaton)

对于由一系列确定的单元互连形成的多层网络,反向传播算法可以用来学习这个网络的权重。它采用梯度下降方法试图最小化网络输出值和目标值之间的误差平方。

首先定义误差E

其中outputs是网络输出单元的集合,

是与训练样例d和第k个输出单元相关的输出值。

如下描述了一个适用于包含两层sigmoid单元的分层前馈网络,并且每一层的单元与前一层的所有单元相连(全连接)。

输入:

1) training_example中每一个训练样本的形式为

的序偶,其中
是网络输入值向量,
是目标输出值。

2)

是学习速率(例如0.05)。

3)

是网络输入的数量,
是隐藏层单元数,
是输出层单元数。

步骤:

1) 按照输入创建神经网络;

2) 初始化所有网络权值为小的随机值;

3) 在遇到终止条件前:

对于训练样本training_example中的每个

把输入沿网络前向传播:

1. 把实例

输入网络,并计算网络中每个单元u的输出

使误差沿网络反向传播:

2.对于网络的每个输出单元k,计算它的误差项

3.对于网络的每个隐藏单元h,计算它的误差项

4.更新每个网络权值

其中

反向传播的终止条件有很多:可以在迭代的次数到了一个固定值时停止,或者当在训练样例上的误差讲到某个阈值以下时,或者在分离的验证样例集合上的误差符合某个标准时。

2、局部极小值

反向传播算法实现了一种对可能的网络权值空间的梯度下降搜索,它迭代地减小训练样例的目标值和网络输出间的误差。因此对于多层网络,误差曲面可能含有多个不同的局部极小值,梯度下降可能陷入这些局部极小值中的任何一个。

为了缓解局部极小值问题,一些常见的启发式规则包括:

1)为梯度更新法则加一个冲量项。

2)使用随机的梯度下降而不是真正的梯度下降。

3)使用同样的数据训练多个网络,但用不同的随机权值初始化每个网络。如果不同的训练产生不同的局部最小值,那么对分离的验证集合性能最好的那个网络将被选中。或者保留所有的网络,并且把它们当做一个网络“委员会”,它们的输出是每个网络输出的平均值。

3、前馈网络的表征能力:

1)布尔函数:任何布尔函数都可以被具有两层单元的网络准确表示,尽管在最坏的情况下所需隐藏单元的数量随着网络输入数量的增加成指数级增长。

2)连续函数:每个有界的连续函数可以由一个两层的网络以任意小的误差逼近。这个理论适用于在隐藏层使用sigmoid单元、在输出层使用线性单元的网络,所需要的隐藏单元数量依赖于要逼近的函数。

3)任意函数:任意函数可以被一个有三层单元的网络以任意精度逼近。输出层使用线性单元,两个隐藏层使用sigmoid单元,每一层所需的单元数量一般不确定。

4、神经网络的过拟合:

由于神经网络强大的表征能力,很容易遭遇过拟合,训练误差持续降低,但测试误差却可能上升。有两种策略常用来缓解网络的过拟合。

第一种策略是早停:将数据分成训练集合验证集,训练集用来计算梯度、更新连接权和阈值,验证集用来估计误差,若训练集误差降低但验证集误差升高,则停止训练,同时返回具有最小验证集误差的连接权和阈值。

第二种策略是正则化,其基本思想是在目标函数中增加一个用于描述网络复杂度的部分,例如连接权与阈值的平方和。令

表示第k个训练样例上的误差,
表示连接权和阈值,则误差目标函数变为:

三、其他常用神经网络:

RBF(径向基函数)网络是一种单隐层前馈神经网络,使用径向基函数作为隐层神经元激活函数,而输出层则是对隐层神经元输出的线性组合。

典型的深度学习模型就是很深层的神经网络,深度学习模型通常由八九层甚至更多的隐层。

输入:训练集

学习率

过程:

1) 在(0,1)范围内随机初始化网络中所有连接权和阈值

2) repeat

3) for all

do

4) 根据当前参数和

径向基函数神经网络_神经网络相关推荐

  1. cnn神经网络_神经网络之CNN和RNN

    点击上方"认知计算与云安全",然后点击"关注"关键时刻,第一时间送达! 卷积神经网络(CNN)和递归神经网络(RNN)如今在ML中普遍使用.但是,它们通常用于完 ...

  2. 介绍神经网络_神经网络介绍

    介绍神经网络 It is time to set our goals and introduce the framework for creating a machine learning algor ...

  3. 神经网络与卷积神经网络_神经网络与人的思想

    神经网络与卷积神经网络 If you are familiar with the terms Artificial Intelligence, Machine Learning , Deep Lear ...

  4. acc定义代码 神经网络_神经网络的这几个坑,你都躲过了吗

    因为AI这两年的火爆,大家拿着锤子到处找钉子,锤子当然也砸到了我头上,有很多做业务的同事尝试通过AI的方法解决需要一些很复杂的业务逻辑算法,同时需要很多参数组合才能搞定的问题.但因为都是非科班出身也没 ...

  5. 曲线 神经网络_神经网络的数学基础-8(完结)

    详细内容请阅读<Deep Learning with Python> 中文翻译为:<Python深度学习> [美] 弗朗索瓦·肖莱 著 张亮 译 1.随机梯度下降 给定一个可微 ...

  6. gan神经网络_神经联觉:当艺术遇见GAN

    gan神经网络 Neural Synesthesia is an AI art project that aims to create new and unique audiovisual exper ...

  7. 径向基函数神经网络_基于RBF神经网络的网络安全态势感知预测研究

    点击上方"网络空间安全学术期刊"关注我们 基于RBF神经网络的网络安全态势 感知预测研究 钱建, 李思宇 摘要 针对网络安全态势的感知问题,结合巨龙山和者磨山风电场的运行情况,文章 ...

  8. 径向基函数神经网络_卷积神经网络的发展

    1968 Hubel & Wiesel 猫脑实验 Hubel和Wiesel干了一件事,他们将猫麻醉后,把电极插到其视觉神经上连接示波器,并给它们看不同的图像,观察脑电波的反应.他们发现猫看到鱼 ...

  9. python自带rbf函数吗_径向基函数(RBF)神经网络

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

最新文章

  1. caffe转caffe2
  2. 150m虚拟主机容量不足
  3. 华中农业大学2018考研真题之867-数据结构与算法
  4. HDU 1033 水题
  5. eclipse服务器添加项目工程,eclipse创建和发布web项目(示例代码)
  6. mybatis映射longtext类型数据_全网首例全栈实践(五)Spring Boot 集成Mybatis
  7. const与指针变量
  8. codeforces 749
  9. 创意购物海报|吸引你的不止买买买,更是创意!
  10. 乔布斯不在了,世界一大步,苹果一小步。
  11. java实现音频播放小程序_微信小程序实现音频文件播放进度的实例代码
  12. Practical Machine Learning实用机器学习 章1
  13. 使用 Fiddler 分析网页加载过程
  14. vasp软件全名是什么_qvasp一款简单易用的VASP辅助计算软件
  15. linux上的mysql数据库恢复
  16. 维修电工技师、高级技师技能实训考核装置
  17. 机器人无限火力无限e符文_2021LOL无限火力机器人天赋符文、出装推荐-无限火力机器人玩法介绍-色彩电竞...
  18. 数学:(一直很浮躁)
  19. HTML网页黑白滤镜
  20. 一台服务器支持多个域名和站点

热门文章

  1. 2010中国互联网哈哈榜
  2. 树莓派4B-Python-控制HC_SR501(微型人体红外感应模块)
  3. 贝赛尔曲线及其应用全面解析
  4. 树莓派实现温控风扇智能降温
  5. 51单片机智能温控风扇
  6. Linux 安装 MySQL 8.0 并配置远程登录
  7. 语音论文:用于端到端语音识别的简化完全量化的Transformer模型
  8. visual studio设置字体及护眼背景色
  9. Kalman详尽原理介绍合集
  10. fzu2190---非提的救赎 (单调栈)