机器学习——人工神经网络之多层神经网络(多层与三层)
目录
一、多层神经网络
1、多层神经网络数学模型
2、数学模型中的非线性函数fai
1)非线性函数fai存在的意义
2)非线性函数fai具体是什么?
3、多层神经网络与单层神经网络的区别与改进
1)单层神经网络数学模型
2)多层神经网络模型
3)区别
二、三层神经网络
1、定理
2、一些概念(决策面、神经元、神经网络层数)
1)决策面
2)神经元
3)神经网络层数n
3、常见的三层神经网络模型(含w,b的参数设置)
1)一个三角形决策面的神经网络模型(两层神经网络)
2)一个四边形决策面的神经网络模型(两层神经网络)
3)一个曲线围成决策面的神经网络模型(两层神经网络)
小结1:一个决策面时最后一层常用w,b参数的设置
4)两个决策面的神经网络模型(三层神经网络)
5)两个以上决策面的神经网络模型(三层神经网络)
小结2:多个决策面时最后一层w,b常用参数和第二层w,b常用参数的设置
疑问:
一、多层神经网络
1、多层神经网络数学模型
并行化的系统
2、数学模型中的非线性函数fai
1)非线性函数fai存在的意义
如下图可知如果没有非线性函数最后得出的y依据是线性的,这就又回到了最初的单层神经网络,没有新的突破,而fai函数则图突破了这个局限性
2)非线性函数fai具体是什么?
fai函数就是阶跃函数
3、多层神经网络与单层神经网络的区别与改进
1)单层神经网络数学模型
具体见:《机器学习——人工神经网络之发展历史(神经元数学模型、感知器算法)》
2)多层神经网络模型
3)区别
多层神经网络顾名思义具有多层的神经网络,经过多层的变化后将输入的xi变化后进行y的输出
该多层神经网络数学模型和阶跃函数(fai函数)的结合可以解决所有的非线性问题,这也是多层神经网络最大的优势所在
二、三层神经网络
1、定理
三层神经网络可以模拟所有的决策面
2、一些概念(决策面、神经元、神经网络层数)
1)决策面
决策面就是每一类样本所分布的一块区域,由多条线所围成的一个区域(若由曲线围成,可以将曲线看成由无数条非常短的线组成的曲线)
三条线围成一个决策面(C1类的区域)
四条线围成一个决策面(C1类的区域)
曲线围成一个决策面(C1类的区域)——将曲线看成由无数直线构成
直线围成多个分开的决策面(C1类的区域)
2)神经元
神经元在数学模型中的位置如下图所示,神经元的个数其实就是围成决策面的直线条数,围成决策面的条数有多少,那么神经元就有多少个,若是曲线,则有无数个神经元
3)神经网络层数n
神经网络层数一般由决策面的个数决定,若决策面只有一个,神经网络数学模型采用两层神经网络就可以实现,但是如果决策面有多个(如上面的C1类的区域分开成了两个决策面)则神经网络数学模型采用三层神经网络就可以实现
决策面个数m,则神经网络层数n:
所以三层神经网络可以模拟所有的决策面
3、常见的三层神经网络模型(含w,b的参数设置)
1)一个三角形决策面的神经网络模型(两层神经网络)
2)一个四边形决策面的神经网络模型(两层神经网络)
3)一个曲线围成决策面的神经网络模型(两层神经网络)
将曲线用无数个非常短的线去替代曲线,只是神经元为无限个
小结1:一个决策面时最后一层常用w,b参数的设置
答:设决策面为1个,围成决策面的直线条数为n,则取:所有w = 1 ; b = - n + 0.5
只有一个决策面的数学模型最后一层神经网络是与逻辑关系,即所有输入为1,归类为C1,反之归类为C2
4)两个决策面的神经网络模型(三层神经网络)
一个决策面的神经元在第二层的输出为一个,有多少个决策面第二层就会有多少个输出(与关系)
5)两个以上决策面的神经网络模型(三层神经网络)
两个以上的决策面的神经网络模型和两个决策面是类似的,只是第一层的神经元数目多了,第二层的与关系多了而已
小结2:多个决策面时最后一层w,b常用参数和第二层w,b常用参数的设置
答:多个决策面时,最后一层的w,b参数固定为:w = 1 , b = -0.5
第二层每个与关系处即每一个决策面的第二层的w,b参数设置参考上面的小结1
疑问:
那么该怎么取利用这个神经网络模型去解决实际的问题呢?至今为止神经网络的理论还不够完善,大部分还是通过实验的方式来获得神经网络模型中的参数(主要是第一层中的w,b参数),也因为这样,神经网络成为了一个实验性的学科,但是也有常用的神经网络模型训练方法(训练就是通过训练样本求解参数的一个过程,,进而获得完整的模型,利用模型可以对测试样本进行分类),可以参见文章:《机器学习——人工神经网络之后向传播算法(BP算法)》
机器学习——人工神经网络之多层神经网络(多层与三层)相关推荐
- bp神经网络预测python代码_机器学习之多层神经网络(附Python代码和数据)
1 引言 多层神经网络,Multiple-layers Perceptron (MLP),又被称为多层感知机,是机器学习中深度学习的典型算法.关于多层神经网络的算法原理,我们在Stata和R实现的文章 ...
- 机器学习--多层感知机、卷积神经网络、循环神经网络
目录 一.多层感知机 二.卷积神经网络 三.循环神经网络 总结 一.多层感知机 手工提取特征(用人的知识进行) --> 神经网络来提取特征. 神经网络(可能更懂机器学习)来提取 可能对后面的线 ...
- 机器学习——人工神经网络之BP算法编程(python二分类数据集:马疝病数据集)
目录 一.理论知识回顾 1.神经网络模型 2.明确任务以及参数 1)待估参数: 2)超参数: 3)任务 3.神经网络数学模型定义 1)激活函数 2)各层权重.阈值定义 3)各层输入输出定义 4.优 ...
- 机器学习——人工神经网络之后向传播算法(BP算法)
目录 一.后向传播算法的本质--梯度下降法求局部极值 1.w迭代公式的合理性 二.后向传播算法的推导(以二层神经网络为例) 1.问题描述(创建目标函数loss函数,求参数) 2.求解参数的流程(四步曲 ...
- 机器学习——人工神经网络之发展历史(神经元数学模型、感知器算法)
目录 一.神经元的数学模型 二.感知器算法(SVM算法前身) 1.目的 2.流程 >>>问题1:下图w和b的调整是什么意思? 3.算法的有效性验证 1)原算法 2)增广矩阵 3) ...
- 实验三 多层神经网络
一.实验目的 (1)学习并掌握常见的机器学习方法: (2)能够结合所学的python知识实现机器学习算法: (3)能够用所学的机器学习算法解决实际问题. 二.实验内容与要求 (1)理解多层神经网络的架 ...
- 人工智能-机器学习人工神经网络
机器学习 机器学习部分主要学习的内容是朴素贝叶斯算法和决策树算法. 机器学习研究计算机如何模拟人类的学习行为,获取新的知识或新的技能,重新组织已有知识改善自身性能,使得计算机具有人的学习能力,从而实现 ...
- ufldl学习笔记与编程作业:Multi-Layer Neural Network(多层神经网络+识别手写体编程)...
ufldl学习笔记与编程作业:Multi-Layer Neural Network(多层神经网络+识别手写体编程) ufldl出了新教程,感觉比之前的好,从基础讲起,系统清晰,又有编程实践. 在dee ...
- 【BP神经网络】使用反向传播训练多层神经网络的原则+“常见问题”
(Principles of training multi-layer neural network using backpropagation) 使用反向传播训练多层神经网络的原则 (The pro ...
最新文章
- 5G 标准的走向,为何越来越不同寻常?
- Spring事务失效的 8 大原因,这次可以吊打面试官了!
- python按正则方式搜索文件
- 【数据分析】年轻人如何才能实现年薪百万呢?用数据分析来帮你探探路
- 【Boost】以boost::function和boost:bind取代虚函数
- 3D环动画css3实现,CSS3 3D酷炫立方体变换动画的实现
- UVA494 Kindergarten Counting Game
- Python3中queue模块的使用
- spss因子分析结果解读_因子分析巴特利特球形度检验结果解读
- otool 与dylib
- 第十一周学习周报(20180514-20180520)
- 身份实名认证增强版API开发文档
- Tomcat异常,tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException
- fatal error C1189: #error : This file requires _WIN32_WINNT to be #defined at least to 0x0403. Valu
- Google Earth Engine ——MOD11A1/A2 V6产品Emis_31和32波段下载
- UI设计中有关颜色的几点建议
- 华为手机微信如何与电脑连接到服务器,有华为手机,还用微信QQ传文件到电脑?Huawei share秒传了解一下...
- LVDS高速PCB布局布线设计
- 微信如何批量自动添加好友
- 剪映电脑版详细使用教程,让视频剪辑变得更简单了