导航:首页 > 网络营销 > 网络模型的实例有哪些

网络模型的实例有哪些

发布时间:2024-03-20 12:02:03

㈠ 人工神经网络概念梳理与实例演示

人工神经网络概念梳理与实例演示
神经网络是一种模仿生物神经元的机器学习模型,数据从输入层进入并流经激活阈值的多个节点。
递归性神经网络一种能够对之前输入数据进行内部存储记忆的神经网络,所以他们能够学习到数据流中的时间依赖结构。
如今机器学习已经被应用到很多的产品中去了,例如,siri、Google Now等智能助手,推荐引擎——亚马逊网站用于推荐商品的推荐引擎,Google和Facebook使用的广告排名系统。最近,深度学习的一些进步将机器学习带入公众视野:AlphaGo 打败围棋大师李世石事件以及一些图片识别和机器翻译等新产品的出现。
在这部分中,我们将介绍一些强大并被普遍使用的机器学习技术。这当然包括一些深度学习以及一些满足现代业务需求传统方法。读完这一系列的文章之后,你就掌握了必要的知识,便可以将具体的机器学习实验应用到你所在的领域当中。
随着深层神经网络的精度的提高,语音和图像识别技术的应用吸引了大众的注意力,关于AI和深度学习的研究也变得更加普遍了。但是怎么能够让它进一步扩大影响力,更受欢迎仍然是一个问题。这篇文章的主要内容是:简述前馈神经网络和递归神经网络、怎样搭建一个递归神经网络对时间系列数据进行异常检测。为了让我们的讨论更加具体化,我们将演示一下怎么用Deeplearning4j搭建神经网络。
一、什么是神经网络?
人工神经网络算法的最初构思是模仿生物神经元。但是这个类比很不可靠。人工神经网络的每一个特征都是对生物神经元的一种折射:每一个节点与激活阈值、触发的连接。
连接人工神经元系统建立起来之后,我们就能够对这些系统进行训练,从而让他们学习到数据中的一些模式,学到之后就能执行回归、分类、聚类、预测等功能。
人工神经网络可以看作是计算节点的集合。数据通过这些节点进入神经网络的输入层,再通过神经网络的隐藏层直到关于数据的一个结论或者结果出现,这个过程才会停止。神经网络产出的结果会跟预期的结果进行比较,神经网络得出的结果与正确结果的不同点会被用来更正神经网络节点的激活阈值。随着这个过程的不断重复,神经网络的输出结果就会无限靠近预期结果。
二、训练过程
在搭建一个神经网络系统之前,你必须先了解训练的过程以及网络输出结果是怎么产生的。然而我们并不想过度深入的了解这些方程式,下面是一个简短的介绍。
网络的输入节点收到一个数值数组(或许是叫做张量多维度数组)就代表输入数据。例如, 图像中的每个像素可以表示为一个标量,然后将像素传递给一个节点。输入数据将会与神经网络的参数相乘,这个输入数据被扩大还是减小取决于它的重要性,换句话说,取决于这个像素就不会影响神经网络关于整个输入数据的结论。
起初这些参数都是随机的,也就是说神经网络在建立初期根本就不了解数据的结构。每个节点的激活函数决定了每个输入节点的输出结果。所以每个节点是否能够被激活取决于它是否接受到足够的刺激强度,即是否输入数据和参数的结果超出了激活阈值的界限。
在所谓的密集或完全连接层中,每个节点的输出值都会传递给后续层的节点,在通过所有隐藏层后最终到达输出层,也就是产生输入结果的地方。在输出层, 神经网络得到的最终结论将会跟预期结论进行比较(例如,图片中的这些像素代表一只猫还是狗?)。神经网络猜测的结果与正确结果的计算误差都会被纳入到一个测试集中,神经网络又会利用这些计算误差来不断更新参数,以此来改变图片中不同像素的重要程度。整个过程的目的就是降低输出结果与预期结果的误差,正确地标注出这个图像到底是不是一条狗。
深度学习是一个复杂的过程,由于大量的矩阵系数需要被修改所以它就涉及到矩阵代数、衍生品、概率和密集的硬件使用问题,但是用户不需要全部了解这些复杂性。
但是,你也应该知道一些基本参数,这将帮助你理解神经网络函数。这其中包括激活函数、优化算法和目标函数(也称为损失、成本或误差函数)。
激活函数决定了信号是否以及在多大程度上应该被发送到连接节点。阶梯函数是最常用的激活函数, 如果其输入小于某个阈值就是0,如果其输入大于阈值就是1。节点都会通过阶梯激活函数向连接节点发送一个0或1。优化算法决定了神经网络怎么样学习,以及测试完误差后,权重怎么样被更准确地调整。最常见的优化算法是随机梯度下降法。最后, 成本函数常用来衡量误差,通过对比一个给定训练样本中得出的结果与预期结果的不同来评定神经网络的执行效果。
Keras、Deeplearning4j 等开源框架让创建神经网络变得简单。创建神经网络结构时,需要考虑的是怎样将你的数据类型匹配到一个已知的被解决的问题,并且根据你的实际需求来修改现有结构。
三、神经网络的类型以及应用
神经网络已经被了解和应用了数十年了,但是最近的一些技术趋势才使得深度神经网络变得更加高效。
GPUs使得矩阵操作速度更快;分布式计算结构让计算能力大大增强;多个超参数的组合也让迭代的速度提升。所有这些都让训练的速度大大加快,迅速找到适合的结构。
随着更大数据集的产生,类似于ImageNet 的大型高质量的标签数据集应运而生。机器学习算法训练的数据越大,那么它的准确性就会越高。
最后,随着我们理解能力以及神经网络算法的不断提升,神经网络的准确性在语音识别、机器翻译以及一些机器感知和面向目标的一些任务等方面不断刷新记录。
尽管神经网络架构非常的大,但是主要用到的神经网络种类也就是下面的几种。
3.1前馈神经网络
前馈神经网络包括一个输入层、一个输出层以及一个或多个的隐藏层。前馈神经网络可以做出很好的通用逼近器,并且能够被用来创建通用模型。
这种类型的神经网络可用于分类和回归。例如,当使用前馈网络进行分类时,输出层神经元的个数等于类的数量。从概念上讲, 激活了的输出神经元决定了神经网络所预测的类。更准确地说, 每个输出神经元返回一个记录与分类相匹配的概率数,其中概率最高的分类将被选为模型的输出分类。
前馈神经网络的优势是简单易用,与其他类型的神经网络相比更简单,并且有一大堆的应用实例。
3.2卷积神经网络
卷积神经网络和前馈神经网络是非常相似的,至少是数据的传输方式类似。他们结构大致上是模仿了视觉皮层。卷积神经网络通过许多的过滤器。这些过滤器主要集中在一个图像子集、补丁、图块的特征识别上。每一个过滤器都在寻找不同模式的视觉数据,例如,有的可能是找水平线,有的是找对角线,有的是找垂直的。这些线条都被看作是特征,当过滤器经过图像时,他们就会构造出特征图谱来定位各类线是出现在图像的哪些地方。图像中的不同物体,像猫、747s、榨汁机等都会有不同的图像特征,这些图像特征就能使图像完成分类。卷积神经网络在图像识别和语音识别方面是非常的有效的。
卷积神经网络与前馈神经网络在图像识别方面的异同比较。虽然这两种网络类型都能够进行图像识别,但是方式却不同。卷积神经网络是通过识别图像的重叠部分,然后学习识别不同部分的特征进行训练;然而,前馈神经网络是在整张图片上进行训练。前馈神经网络总是在图片的某一特殊部分或者方向进行训练,所以当图片的特征出现在其他地方时就不会被识别到,然而卷积神经网络却能够很好的避免这一点。
卷积神经网络主要是用于图像、视频、语音、声音识别以及无人驾驶的任务。尽管这篇文章主要是讨论递归神经网络的,但是卷积神经网络在图像识别方面也是非常有效的,所以很有必要了解。
3.3递归神经网络
与前馈神经网络不同的是,递归神经网络的隐藏层的节点里有内部记忆存储功能,随着输入数据的改变而内部记忆内容不断被更新。递归神经网络的结论都是基于当前的输入和之前存储的数据而得出的。递归神经网络能够充分利用这种内部记忆存储状态处理任意序列的数据,例如时间序列。
递归神经网络经常用于手写识别、语音识别、日志分析、欺诈检测和网络安全
递归神经网络是处理时间维度数据集的最好方法,它可以处理以下数据:网络日志和服务器活动、硬件或者是医疗设备的传感器数据、金融交易、电话记录。想要追踪数据在不同阶段的依赖和关联关系需要你了解当前和之前的一些数据状态。尽管我们通过前馈神经网络也可以获取事件,随着时间的推移移动到另外一个事件,这将使我们限制在对事件的依赖中,所以这种方式很不灵活。
追踪在时间维度上有长期依赖的数据的更好方法是用内存来储存重要事件,以使近期事件能够被理解和分类。递归神经网络最好的一点就是在它的隐藏层里面有“内存”可以学习到时间依赖特征的重要性。
接下来我们将讨论递归神经网络在字符生成器和网络异常检测中的应用。递归神经网络可以检测出不同时间段的依赖特征的能力使得它可以进行时间序列数据的异常检测。
递归神经网络的应用
网络上有很多使用RNNs生成文本的例子,递归神经网络经过语料库的训练之后,只要输入一个字符,就可以预测下一个字符。下面让我们通过一些实用例子发现更多RNNs的特征。
应用一、RNNs用于字符生成
递归神经网络经过训练之后可以把英文字符当做成一系列的时间依赖事件。经过训练后它会学习到一个字符经常跟着另外一个字符(“e”经常跟在“h”后面,像在“the、he、she”中)。由于它能预测下一个字符是什么,所以它能有效地减少文本的输入错误。
Java是个很有趣的例子,因为它的结构包括很多嵌套结构,有一个开的圆括号必然后面就会有一个闭的,花括号也是同理。他们之间的依赖关系并不会在位置上表现的很明显,因为多个事件之间的关系不是靠所在位置的距离确定的。但是就算是不明确告诉递归神经网络Java中各个事件的依赖关系,它也能自己学习了解到。
在异常检测当中,我们要求神经网络能够检测出数据中相似、隐藏的或许是并不明显的模式。就像是一个字符生成器在充分地了解数据的结构后就会生成一个数据的拟像,递归神经网络的异常检测就是在其充分了解数据结构后来判断输入的数据是不是正常。
字符生成的例子表明递归神经网络有在不同时间范围内学习到时间依赖关系的能力,它的这种能力还可以用来检测网络活动日志的异常。
异常检测能够使文本中的语法错误浮出水面,这是因为我们所写的东西是由语法结构所决定的。同理,网络行为也是有结构的,它也有一个能够被学习的可预测模式。经过在正常网络活动中训练的递归神经网络可以监测到入侵行为,因为这些入侵行为的出现就像是一个句子没有标点符号一样异常。
应用二、一个网络异常检测项目的示例
假设我们想要了解的网络异常检测就是能够得到硬件故障、应用程序失败、以及入侵的一些信息。
模型将会向我们展示什么呢?
随着大量的网络活动日志被输入到递归神经网络中去,神经网络就能学习到正常的网络活动应该是什么样子的。当这个被训练的网络被输入新的数据时,它就能偶判断出哪些是正常的活动,哪些是被期待的,哪些是异常的。
训练一个神经网络来识别预期行为是有好处的,因为异常数据不多,或者是不能够准确的将异常行为进行分类。我们在正常的数据里进行训练,它就能够在未来的某个时间点提醒我们非正常活动的出现。
说句题外话,训练的神经网络并不一定非得识别到特定事情发生的特定时间点(例如,它不知道那个特殊的日子就是周日),但是它一定会发现一些值得我们注意的一些更明显的时间模式和一些可能并不明显的事件之间的联系。
我们将概述一下怎么用 Deeplearning4j(一个在JVM上被广泛应用的深度学习开源数据库)来解决这个问题。Deeplearning4j在模型开发过程中提供了很多有用的工具:DataVec是一款为ETL(提取-转化-加载)任务准备模型训练数据的集成工具。正如Sqoop为Hadoop加载数据,DataVec将数据进行清洗、预处理、规范化与标准化之后将数据加载到神经网络。这跟Trifacta’s Wrangler也相似,只不过它更关注二进制数据。
开始阶段
第一阶段包括典型的大数据任务和ETL:我们需要收集、移动、储存、准备、规范化、矢量话日志。时间跨度的长短是必须被规定好的。数据的转化需要花费一些功夫,这是由于JSON日志、文本日志、还有一些非连续标注模式都必须被识别并且转化为数值数组。DataVec能够帮助进行转化和规范化数据。在开发机器学习训练模型时,数据需要分为训练集和测试集。
训练神经网络
神经网络的初始训练需要在训练数据集中进行。
在第一次训练的时候,你需要调整一些超参数以使模型能够实现在数据中学习。这个过程需要控制在合理的时间内。关于超参数我们将在之后进行讨论。在模型训练的过程中,你应该以降低错误为目标。
但是这可能会出现神经网络模型过度拟合的风险。有过度拟合现象出现的模型往往会在训练集中的很高的分数,但是在遇到新的数据时就会得出错误结论。用机器学习的语言来说就是它不够通用化。Deeplearning4J提供正则化的工具和“过早停止”来避免训练过程中的过度拟合。
神经网络的训练是最花费时间和耗费硬件的一步。在GPUs上训练能够有效的减少训练时间,尤其是做图像识别的时候。但是额外的硬件设施就带来多余的花销,所以你的深度学习的框架必须能够有效的利用硬件设施。Azure和亚马逊等云服务提供了基于GPU的实例,神经网络还可以在异构集群上进行训练。
创建模型
Deeplearning4J提供ModelSerializer来保存训练模型。训练模型可以被保存或者是在之后的训练中被使用或更新。
在执行异常检测的过程中,日志文件的格式需要与训练模型一致,基于神经网络的输出结果,你将会得到是否当前的活动符合正常网络行为预期的结论。
代码示例
递归神经网络的结构应该是这样子的:
MultiLayerConfiguration conf = new NeuralNetConfiguration.Builder(
.seed(123)
.optimizationAlgo(OptimizationAlgorithm.STOCHASTIC_GRADIENT_DESCENT).iterations(1)
.weightInit(WeightInit.XAVIER)
.updater(Updater.NESTEROVS).momentum(0.9)
.learningRate(0.005)
.gradientNormalization(GradientNormalization.ClipElementWiseAbsoluteValue)
.(0.5)
.list()
.layer(0, new GravesLSTM.Builder().activation("tanh").nIn(1).nOut(10).build())
.layer(1, new RnnOutputLayer.Builder(LossFunctions.LossFunction.MCXENT)
.activation("softmax").nIn(10).nOut(numLabelClasses).build())
.pretrain(false).backprop(true).build();
MultiLayerNetwork net = new MultiLayerNetwork(conf);
net.init();
下面解释一下几行重要的代码:
.seed(123)
随机设置一个种子值对神经网络的权值进行初始化,以此获得一个有复验性的结果。系数通常都是被随机的初始化的,以使我们在调整其他超参数时仍获得一致的结果。我们需要设定一个种子值,让我们在调整和测试的时候能够用这个随机的权值。
.optimizationAlgo(OptimizationAlgorithm.STOCHASTIC_GRADIENT_DESCENT).iterations(1)
决定使用哪个最优算法(在这个例子中是随机梯度下降法)来调整权值以提高误差分数。你可能不需要对这个进行修改。
.learningRate(0.005)
当我们使用随机梯度下降法的时候,误差梯度就被计算出来了。在我们试图将误差值减到最小的过程中,权值也随之变化。SGD给我们一个让误差更小的方向,这个学习效率就决定了我们该在这个方向上迈多大的梯度。如果学习效率太高,你可能是超过了误差最小值;如果太低,你的训练可能将会永远进行。这是一个你需要调整的超参数。

㈡ 神经网络ART1模型

一、ART1模型概述

自适应共振理论(Adaptive Resonance Theory)简称ART,是于1976年由美国Boston大学S.Grossberg提出来的。

这一理论的显着特点是,充分利用了生物神经细胞之间自兴奋与侧抑制的动力学原理,让输入模式通过网络双向连接权的识别与比较,最后达到共振来完成对自身的记忆,并以同样的方法实现网络的回想。当提供给网络回想的是一个网络中记忆的、或是与已记忆的模式十分相似的模式时,网络将会把这个模式回想出来,提出正确的分类。如果提供给网络回想的是一个网络中不存在的模式,则网络将在不影响已有记忆的前提下,将这一模式记忆下来,并将分配一个新的分类单元作为这一记忆模式的分类标志。

S.Grossberg和G.A.Carpenter经过多年研究和不断发展,至今已提出了ART1,ART2和ART3三种网络结构。

ART1网络处理双极型(或二进制)数据,即观察矢量的分量是二值的,它只取0或1。

二、ART1模型原理

ART1网络是两层结构,分输入层(比较层)和输出层(识别层)。从输入层到输出层由前馈连接权连接,从输出层到输入层由反馈连接权连接。

设网络输入层有N个神经元,网络输出层有M个神经元,二值输入模式和输出向量分别为:Xp=(

,…,

),Yp=(

,…,

),p=1,2,…,P,其中P为输入学习模式的个数。设前馈连接权和反馈连接权矩阵分别为W=(wnm)N×M,T=(tnm)N×M,n=1,2,…,N,m=1,2,…,M。

ART1网络的学习及工作过程,是通过反复地将输入学习模式由输入层向输出层自下而上的识别和由输出层向输入层自上而下的比较过程来实现的。当这种自下而上的识别和自上而下的比较达到共振,即输出向量可以正确反映输入学习模式的分类,且网络原有记忆没有受到不良影响时,网络对一个输入学习模式的记忆分类则告完成。

ART1网络的学习及工作过程,可以分为初始化阶段、识别阶段、比较阶段和探寻阶段。

1.初始化阶段

ART1网络需要初始化的参数主要有3个:

即W=(wnm)N×M,T=(tnm)N×M和ρ。

反馈连接权T=(tnm)N×M在网络的整个学习过程中取0或1二值形式。这一参数实际上反映了输入层和输出层之间反馈比较的范围或强度。由于网络在初始化前没有任何记忆,相当于一张白纸,即没有选择比较的余的。因此可将T的元素全部设置为1,即

tnm=1,n=1,2,…,N,m=1,2,…,M。(1)

这意味着网络在初始状态时,输入层和输出层之间将进行全范围比较,随着学习过程的深入,再按一定规则选择比较范围。

前馈连接权W=(wnm)N×M在网络学习结束后,承担着对学习模式的记忆任务。在对W初始化时,应该给所有学习模式提供一个平等竞争的机会,然后通过对输入模式的竞争,按一定规则调整W。W的初始值按下式设置:

中国矿产资源评价新技术与评价新模型

ρ称为网络的警戒参数,其取值范围为0<ρ≤1。

2.识别阶段

ART1网络的学习识别阶段发生在输入学习模式由输入层向输出层的传递过程中。在这一阶段,首先将一个输入学习模式Xp=(

,…,

)提供给网络的输入层,然后把作为输入学习模式的存储媒介的前馈连接权W=(wnm)N×M与表示对这一输入学习模式分类结果的输出层的各个神经元进行比较,以寻找代表正确分类结果的神经元g。这一比较与寻找过程是通过寻找输出层神经元最大加权输入值,即神经元之间的竞争过程实现的,如下式所示:

中国矿产资源评价新技术与评价新模型

中国矿产资源评价新技术与评价新模型

中国矿产资源评价新技术与评价新模型

至此,网络的识别过程只是告一段落,并没有最后结束。此时,神经元m=g是否真正有资格代表对输入学习模式Xp的正确分类,还有待于下面的比较和寻找阶段来进一步确定。一般情况下需要对代表同一输入学习模式的分类结果的神经元进行反复识别。

3.比较阶段

ART1网络的比较阶段的主要职能是完成以下检查任务,每当给已学习结束的网络提供一个供识别的输入模式时,首先检查一下这个模式是否是已学习过的模式,如果是,则让网络回想出这个模式的分类结果;如果不是,则对这个模式加以记忆,并分配一个还没有利用过的输出层神经元来代表这个模式的分类结果。

具体过程如下:把由输出层每个神经元反馈到输入层的各个神经元的反馈连接权向量Tm=(t1m,t2m,…,tNm),m=1,2,…,M作为对已学习的输入模式的一条条记录,即让向量Tm=(t1m,t2m,…,tNm)与输出层第m个神经元所代表的某一学习输入模式Xp=(

,…,

)完全相等。

当需要网络对某个输入模式进行回想时,这个输入模式经过识别阶段,竞争到神经元g作为自己的分类结果后,要检查神经元g反馈回来的向量Tg是否与输入模式相等。如果相等,则说明这是一个已记忆过的模式,神经元g代表了这个模式的分类结果,识别与比较产生了共振,网络不需要再经过寻找阶段,直接进入下一个输入模式的识别阶段;如果不相符,则放弃神经元g的分类结果,进入寻找阶段。

在比较阶段,当用向量Tg与输入模式XP进行比较时,允许二者之间有一定的差距,差距的大小由警戒参数ρ决定。

首先计算

中国矿产资源评价新技术与评价新模型

Cg表示向量Tg与输入模式XP的拟合度。

在式中,

(tng*xn)表示向量Tg=(t1g,t2g,…,tNg)与输入模式Xp=(

,…,

)的逻辑“与”。

当Tg=XP时,Cg=1。

当Cg≥ρ时,说明拟合度大于要求,没有超过警戒线。

以上两种情况均可以承认识别结果。

当Cg≠1且Cg>ρ时,按式(6)式(7)将前馈连接权Wg=(w1g,w2g,…,wNg)和反馈连接权Tg=(t1g,t2g,…,tNg)向着与XP更接近的方向调整。

中国矿产资源评价新技术与评价新模型

tng(t+1)=tng(t)*xn,n=1,2,…,N。(7)

当Cg<ρ时,说明拟合度小于要求,超过警戒线,则拒绝识别结果,将神经元g重新复位为0,并将这个神经元排除在下次识别范围之外,网络转入寻找阶段。

4.寻找阶段

寻找阶段是网络在比较阶段拒绝识别结果之后转入的一个反复探寻的阶段,在这一阶段中,网络将在余下的输出层神经元中搜索输入模式Xp的恰当分类。只要在输出向量Yp=(

,…

)中含有与这一输入模式Xp相对应、或在警戒线以内相对应的分类单元,则网络可以得到与记忆模式相符的分类结果。如果在已记忆的分类结果中找不到与现在输入的模式相对应的分类,但在输出向量中还有未曾使用过的单元,则可以给这个输入模式分配一个新的分类单元。在以上两种情况下,网络的寻找过程总能获得成功,也就是说共振终将发生。

三、总体算法

设网络输入层有N个神经元,网络输出层有M个神经元,二值输入模式和输出向量分别为:Xp=(

,…,

),Yp=(

,…,

)p=1,2,…,p,其中p为输入学习模式的个数。设前馈连接权和反馈连接权矩阵分别为W=(wnm)N×M,T=(tnm)N×M,n=1,2,…,N,m=1,2,…,M。

(1)网络初始化

tnm(0)=1,

中国矿产资源评价新技术与评价新模型

n=1,2,…,N,m=1,2,…,M。

0<ρ≤1。

(2)将输入模式Xp=(

,…,

)提供给网络的输入层

(3)计算输出层各神经元输入加权和

中国矿产资源评价新技术与评价新模型

(4)选择XP的最佳分类结果

中国矿产资源评价新技术与评价新模型

令神经元g的输出为1。

(5)计算

中国矿产资源评价新技术与评价新模型

中国矿产资源评价新技术与评价新模型

判断

中国矿产资源评价新技术与评价新模型

当式(8)成立,转到(7),否则,转到(6)。

(6)取消识别结果,将输出层神经元g的输出值复位为0,并将这一神经元排除在下一次识别的范围之外,返回步骤(4)。当所有已利用过的神经元都无法满足式(8),则选择一个新的神经元作为分类结果,转到步骤(7)。

(7)承认识别结果,并按下式调整连接权

中国矿产资源评价新技术与评价新模型

tng(t+1)=tng(t)*xn,n=1,2,…,N。

(8)将步骤(6)复位的所有神经元重新加入识别范围之内,返回步骤(2)对下一模式进行识别。

(9)输出分类识别结果。

(10)结束。

四、实例

实例为ART1神经网络模型在柴北缘-东昆仑造山型金矿预测的应用。

1.建立综合预测模型

柴北缘—东昆仑地区位于青海省的西部,是中央造山带的西部成员——秦祁昆褶皱系的一部分,是典型的复合造山带(殷鸿福等,1998)。根据柴北缘—东昆仑地区地质概括以及造山型金矿成矿特点,选择与成矿相关密切的专题数据,建立柴北缘—东昆仑地区的综合信息找矿模型:

1)金矿重砂异常数据是金矿的重要找矿标志。

2)金矿水化异常数据是金矿的重要找矿标志。

3)金矿的化探异常数据控制金矿床的分布。

4)金矿的空间分布与通过该区的深大断裂有关。

5)研究区内断裂密集程度控制金矿的产出。

6)重力构造的存在与否是金矿存在的一个标志。

7)磁力构造线的存在也是金矿存在的一个重要标志。

8)研究区地质复杂程度也对金矿的产出具有重要的作用。

9)研究区存在的矿(化)点是一个重要的标志。

2.划分预测单元

预测工作是在单元上进行的,预测工作的结果是与单元有着较为直接的联系,在找矿模型指导下,以最大限度地反映成矿信息和预测单元面积最小为原则,通过对研究区内地质、地球物理、地球化学等的综合资料分析,对可能的成矿地段圈定了预测单元。采用网格化单元作为本次研究的预测单元,网格单元的大小是,40×40,将研究区划分成774个预测单元。

3.变量选择(表8-6)

4.ART1模型预测结果

ART1神经网络模型算法中,给定不同的阈值,将改变预测分类的结果。本次实验选取得阈值为ρ=0.41,系统根据此阈值进行计算获得计算结果,并通过将不同的分类结果赋予不同的颜色,最终获得ART模型预测单元的分类结果。分类的结果是形成29个类别。分类结果用不同的颜色表示,其具体结果地显示见图8-5。图形中颜色只代表类别号,不代表分类的好坏。将矿点专题图层叠加以后,可以看出,颜色为灰色的单元与矿的关系更为密切。

表8-6 预测变量标志的选择表

图8-5 东昆仑—柴北缘地区基于ARTL模型的金矿分类结果图

㈢ 手机上运行的深度神经网络模型-MobileNet

文章引用自《 从MobileNet看轻量级神经网络的发展 》,详情请点击原文观看

前  言 

随着深度学习的火热,计算机视觉领域内的卷积神经网络模型也层出不穷。从1998年的LeNet,到2012年引爆深度学习热潮的AlexNet,再到后来2014年的VGG,2015年的ResNet,深度学习网络模型在图像处理中应用的效果越来越好。神经网络体积越来越大,结构越来越复杂,预测和训练需要的硬件资源也逐步增多,往往只能在高算力的服务器中运行深度学习神经网络模型。移动设备因硬件资源和算力的限制,很难运行复杂的深度学习网络模型。

深度学习领域内也在努力促使神经网络向小型化发展。在保证模型准确率的同时体积更小,速度更快。到了2016年直至现在,业内提出了SqueezeNet、ShuffleNet、NasNet、MnasNet以及MobileNet等轻量级网络模型。这些模型使移动终端、嵌入式设备运行神经网络模型成为可能。而MobileNet在轻量级神经网络中较具代表性。

谷歌在2019年5月份推出了最新的MobileNetV3。新版MobileNet使用了更多新特性,使得MobileNet非常具有研究和分析意义,本文将对MobileNet进行详细解析。

MobileNet的优势

MobileNet网络拥有更小的体积,更少的计算量,更高的精度。在轻量级神经网络中拥有极大的优势。

1

更小的体积

MobileNet相比经典的大型网络,参数量明显更少,参数量越少模型体积越小。

2

更少的计算量

MobileNet优化网络结构使模型计算量成倍下降。

3

更高的准确率

MobileNet凭借网络结构优化,在更少的参数及更少的计算量情况下,网络精度反而超过了部分大型神经网络。在最新的MobileNetV3-Large中,实现ImageNet数据集Top1准确率达到75.2%。

4

更快的速度

使用Google Pixel-1手机测试,MobileNet各版本都能保持运行时间在120ms以下,最新版MobileNetV3-Large运行时间达到66ms,参数量和计算量更低的MobileNetV3-Small更是能达到22ms;GoogleNet运行速度约为250ms,而VGG-16由于一次性需要加载至内存的空间已超过500MB,手机系统会报内存溢出错误导致无法运行。

5

多种应用场景

MobileNet可以在移动终端实现众多的应用,包括目标检测,目标分类,人脸属性识别和人脸识别等。

MobileNet各版本介绍

1

MobileNetV1网络结构

整个网络不算平均池化层与softmax层,共28层;

在整个网络结构中步长为2的卷积较有特点,卷积的同时充当下采样的功能;

第一层之后的26层都为深度可分离卷积的重复卷积操作;

每一个卷积层(含常规卷积、深度卷积、逐点卷积)之后都紧跟着批规范化和ReLU激活函数;

最后一层全连接层不使用激活函数。

2

MobileNetV2网络结构

MobileNetV2中主要引入线性瓶颈结构和反向残差结构。

MobileNetV2网络模型中有共有17个Bottleneck层(每个Bottleneck包含两个逐点卷积层和一个深度卷积层),一个标准卷积层(conv),两个逐点卷积层(pw conv),共计有54层可训练参数层。MobileNetV2中使用线性瓶颈(Linear Bottleneck)和反向残差(Inverted Resials)结构优化了网络,使得网络层次更深了,但是模型体积更小,速度更快了。

3

MobileNetV3网络结构

MobileNetV3分为Large和Small两个版本,Large版本适用于计算和存储性能较高的平台,Small版本适用于硬件性能较低的平台。

Large版本共有15个bottleneck层,一个标准卷积层,三个逐点卷积层。

Small版本共有12个bottleneck层,一个标准卷积层,两个逐点卷积层。

MobileNetV3中引入了5×5大小的深度卷积代替部分3×3的深度卷积。引入Squeeze-and-excitation(SE)模块和h-swish(HS)激活函数以提高模型精度。结尾两层逐点卷积不使用批规范化(Batch Norm),MobileNetV3结构图中使用NBN标识。

(图片来源https://arxiv.org/pdf/1905.02244.pdf)

网络结构上相对于MobileNetV2的结尾部分做了优化,去除三个高阶层,如上图所示。去除后减少了计算量和参数量,但是模型的精度并没有损失。

值得一提的是,不论是Large还是Small版本,都是使用神经架构搜索(NAS)技术生成的网络结构。

4

MobileNet各版本特性

MobileNet实现计算量减小、参数量减少的同时保证了较高的准确率,这和其拥有的特性息息相关:

MobileNetV1提出的特性

MobileNetV2提出的特性

MobileNetV3提出的特性

MobileNet各个版本拥有的特性汇总

下文将对上表中的各个特性详细阐述。

MobileNet的特性详解

1

深度可分离卷积

从MobileNetV1开始,到V2、V3的线性瓶颈结构都大量使用了深度可分离卷积。

深度可分离卷积(Depthwise Separable Convolution)是一种卷积结构。它是由一层深度卷积(Depthwise convolution)与一层逐点卷积(Pointwise Convolution)组合而成的,每一层卷积之后都紧跟着批规范化和ReLU激活函数。跟标准卷积的区别就是精度基本不变的情况下,参数与计算量都明显减少。

深度卷积

深度卷积(Depthwise convolution, DW)不同于常规卷积操作,深度卷积中一个卷积核只有一维,负责一个通道,一个通道只被一个卷积核卷积;常规卷积每个卷积核的维度与输入维度相同,每个通道单独做卷积运算后相加。

以一张5x5x3(长和宽为5,RGB3通道)的彩色图片举例。每层深度卷积卷积核的数量与上一层的通道数相同(通道和卷积核一一对应)。设padding=1,stride=1,一个三通道的图像经过运算后生成了3个特征图,如下图所示:

深度卷积完成后的输出特征图通道数与输入层的通道数相同,无法扩展通道数。而且这种运算对输入层的每个通道独立进行卷积运算,没有有效的利用不同通道在相同空间位置上的特征信息。因此需要逐点卷积来将生成的特征图进行组合生成新的特征图。

逐点卷积

逐点卷积(Pointwise Convolution, PW)的运算与标准卷积运算非常相似。

逐点卷积卷积核大小为1×1xM(M为输入数据的维度),每次卷积一个像素的区域。逐点卷积运算会将上一层的特征图在深度方向上进行加权组合,生成新的特征图,新的特征图的大小与输入数据大小一致;然后组合各通道的特征图,以较少的计算量进行降维或升维操作(改变输出数据的维度)。

以一张5x5x3(长和宽为5,RGB3通道)的彩色图片举例,使用4个1x1x3的逐点卷积核进行卷积,逐点卷积运算后生成了4个特征图。这个例子是使用逐点卷积进行升维的操作,特征图从5x5x3 升维到5x5x4。如下图所示:

深度可分离卷积结构解析

将深度卷积和逐点卷积组成深度可分离卷积后的示意图,如下图所示:

首先进行深度卷积操作,得出的特征图各通道之间是不关联的。接着进行逐点卷积把深度卷积输出的特征图各通道关联起来。

深度可分离卷积使用了更小的空间代价(参数减少)和更少的时间代价(计算量更少)实现了标准卷积层一样的效果(提取特征)。

一般的设Df为输入特征图边长,Dk为卷积核边长,特征图和卷积核均为长宽一致,输入通道数为M,输出通道数为N,则:

标准卷积计算量为:Df×Df×Dk×Dk×M×N

深度卷积的计算量为:Df×Df×Dk×Dk×M

逐点卷积的计算量为:Df×Df×M×N

上图所示实现输入特征图大小为5×5×3,输出特成图大小为5×5×4,设padding=1,stride=1,深度卷积卷积核大小为3×3,标准卷积也使用3×3尺寸卷积核。实现相同的卷积效果,参数量(不包含偏置)与计算量对比如下表所示:

深度可分离卷积的演变

事实上深度可分离卷积不是在MobileNetV1中第一次提出的,而是在2016年由谷歌的Xception网络结构中提出的。MobileNetV1在Xception的基础上,对深度可分离卷积进行了改进,做到了计算量与参数量的下降:

假定M为输入层的通道数,N为输出层的通道数。

Xcenption的深度可分离卷积是由输入参数开始,使用1x1xMxN卷积将输入层的通道数转换为目标通道数,再通过3x3x1卷积核对每个通道进行卷积,每次卷积过后使用ReLU进行激活。

MobileNetV1的深度可分离卷积则是先使用3x3x1xM对输入层的每个通道分别卷积,之后通过1x1xMxN将输入层通道数转换为输出层通道数,每次卷积过后做一次批规范化操作,再使用ReLU进行激活。

这里我们使用MobileNetV1网络结构的第一个深度可分离卷积层来举例,输入层维度为112x112x32,输出层维度为112x112x64,Xception与MobileNet的深度可分离卷积的计算量与参数个数对比如下表:

由此可知将PW卷积与DW卷积的顺序调整后,优化了网络的空间复杂度和时间复杂度。

2

宽度因子

MobileNet本身的网络结构已经比较小并且执行延迟较低,但为了适配更定制化的场景,MobileNet提供了称为宽度因子(Width Multiplier)的超参数给我们调整。宽度因子在MobileNetV1、V2、V3都可以运用。

通过宽度因子,可以调整神经网络中间产生的特征的大小,调整的是特征数据通道数大小,从而调整了运算量的大小。

宽度因子简单来说就是新网络中每一个模块要使用的卷积核数量相较于标准的MobileNet比例。对于深度卷积结合1x1方式的卷积核,计算量为:

算式中α即为宽度因子,α常用的配置为1,0.75,0.5,0.25;当α等于1时就是标准的MobileNet。通过参数α可以非常有效的将计算量和参数数量约减到α的平方倍。

下图为MobileNetV1使用不同α系数进行网络参数的调整时,在ImageNet上的准确率、计算量、参数数量之间的关系(每一个项中最前面的数字表示α的取值)。

(数据来源https://arxiv.org/pdf/1704.04861.pdf)

可以看到当输入分辨率固定为224x224时,随着宽度因子的减少,模型的计算量和参数越来越小。从上表可以看到, 0.25 MobileNet的正确率比标准版1.0MobileNet低20%,但计算量和参数量几乎只有标准版1.0MobileNet计算量、参数量的10%!对于计算资源和存储资源都十分紧张的移动端平台,可以通过α宽度因子调节网络的餐数量是非常实用的,在真正使用时我们可以按需调整α宽度因子达到准确率与性能的平衡。

3

分辨率因子

MobileNet还提供了另一个超参数分辨率因子(Resolution Multiplier)供我们自定义网络结构,分辨率因子同样在MobileNetV1、V2、V3都可以运用。

分辨率因子一般用β来指代,β的取值范围在(0,1]之间,是作用于每一个模块输入尺寸的约减因子,简单来说就是将输入数据以及由此在每一个模块产生的特征图都变小了,结合宽度因子α,深度卷积结合1x1方式的卷积核计算量为:

下图为MobileNetV1使用不同的β系数作用于标准MobileNet时,在ImageNet上对精度和计算量的影响(α固定1.0)

(数据来源https://arxiv.org/pdf/1704.04861.pdf)

上图中的 224、192、160、128 对应的分辨率因子分别为 1、 6/7、5/7、4/7。

β=1时,输入图片的分辨率为224x224,卷积后的图像大小变化为: 224x224 、112x112、56x56、28x28、14x14、7x7。

β= 6/7时,输入图片的分辨率为192x192,卷积后各层特征图像大小变化为:192x192、96x96、48x48、24x24、12x12、6x6。

卷积特征图像的大小变化不会引起参数量的变化,只改变模型M-Adds计算量。上图中 224分辨率模型测试ImageNet数据集准确率为70.6%,192分辨率的模型准确率为69.1%,但是M-Adds计算量减少了151M,对移动平台计算资源紧张的情况下,同样可以通过β分辨率因子调节网络输入特征图的分辨率,做模型精度与计算量的取舍。

4

规范化

深度学习中的规范化操作(Normalization),有助于加快基于梯度下降法或随机梯度下降法模型的收敛速度,提升模型的精度,规范化的参数能够提升模型泛化能力,提高模型的可压缩性。

按照规范化操作涉及对象的不同可以分为两大类,一类是对输入值进行规范化操作,比如批规范化(Batch Normalization)、层规范化(Layer Normalization)、实例规范化(Instance Normalization)、组规范化(Group Normalization)方法都属于这一类。另外一类是对神经网络中参数进行规范化操作,比如使用L0,L1范数。

批规范化

批规范化(Batch Normalization)几乎存在于MobileNetV1、V2、V3的每个卷积层的后面,目的是加快训练收敛速度,提升准确率。

批规范化是一种对数值的特殊函数变换方法,也就是说假设原始的某个数值是 x,套上一个起到规范化作用的函数,对规范化之前的数值 x 进行转换,形成一个规范化后的数值,即:

所谓规范化,是希望转换后的数值满足一定的特性,至于对数值具体如何变换,跟规范化目标有关,不同的规范化目标导致具体方法中函数所采用的形式不同。通过自适应的重新参数化的方法,克服神经网络层数加深导致模型难以训练的问题。

参数规范化

参数规范化(Weight Normalization, WN)是规范化的一种, 通过人为的设定稀疏算法,去除模型中多余的参数(置为0)使得模型参数稀疏化,可以通过L1范式实现。

参数规范化是防止模型过分拟合训练数据。当训练一批样本的时候,随着训练的推移模型会越来越趋向于拟合样本数据。因为参数太多,会导致模型复杂度上升,容易过拟合。

需要保证模型"简单"的基础上最小化训练误差,这样得到的参数才具有好的泛化性能(也就是测试误差也小),而模型"简单"就是通过规则函数来实现的。

如上图所示,左侧分类明显的是欠拟合,模型并没有能够拟合数据。中间图示为合适的拟合,右边图示是过拟合,模型在训练样本中拟合度是很好的,但是却违背了特征分类规律,在新的测试样本中表现糟糕,影响模型的泛化能力。显然右侧模型在训练是受到额外参数干扰。参数规则化能够使参数稀疏,减少额外参数的干扰,提高泛化能力。

模型拥有稀疏的参数(模型中有大量参数为0),也有利于通过压缩算法压缩模型的大小。

5

线性瓶颈

线性瓶颈英文为Linear Bottleneck,是从Bottleneck结构演变而来的,被用于MobileNetV2与V3。

Bottleneck结构首次被提出是在ResNet网络中。该结构第一层使用逐点卷积,第二层使用3×3大小卷积核进行深度卷积,第三层再使用逐点卷积。MobileNet中的瓶颈结构最后一层逐点卷积使用的激活函数是Linear,所以称其为线性瓶颈结构(Linear Bottleneck)。线性瓶颈结构有两种,第一种是步长为1时使用残差结构,第二种是步长为2时不使用残差结构。

其中输入通道数为M,扩大倍数系数为T。T的值为大于0 的正数,当 0<T<1时,第一层逐点卷积起到的作用是降维。当 1<T时,第一层逐点卷积起到的作用是升维。

第二层为深度卷积,输入通道数 = 输出通道数 = M×T。

第三层为逐点卷积,作用是关联深度卷积后的特征图并输出指定通道数N。

线性瓶颈结构相对标准卷积能够减少参数数量,减少卷积计算量。从空间和时间上优化了网络。

6

反向残差

MobileNetV2中以ResNet的残差(Resials)结构为基础进行优化,提出了反向残差(Inverted Resials)的概念,之后也同样运用与MobileNetV3中。

ResNet中提出的残差结构解决训练中随着网络深度增加而出现的梯度消失问题,使反向传播过程中深度网络的浅层网络也能得到梯度,使浅层网络的参数也可训练,从而增加特征表达能力。

ResNet的残差结构实际是在线性瓶颈结构的基础上增加残差传播。如下图所示:

ResNet中的残差结构使用第一层逐点卷积降维,后使用深度卷积,再使用逐点卷积升维。

MobileNetV2版本中的残差结构使用第一层逐点卷积升维并使用Relu6激活函数代替Relu,之后使用深度卷积,同样使用Relu6激活函数,再使用逐点卷积降维,降维后使用Linear激活函数。这样的卷积操作方式更有利于移动端使用(有利于减少参数与M-Adds计算量),因维度升降方式与ResNet中的残差结构刚好相反,MobileNetV2将其称之为反向残差(Inverted Resials)。

7

5x5 的深度卷积

MobileNetV3中,深度卷积大量使用5x5大小的卷积核。这是因为使用神经结构搜索(NAS)技术计算出的MobileNetV3网络结构的过程中,发现了在深度卷积中使用5x5大小的卷积核比使用3x3大小的卷积核效果更好,准确率更高。关于NAS技术将会在下文的单独章节中做介绍。

8

Squeeze-and-excitation 模块

Squeeze-and-Excitation模块(简称SE模块)的首次提出是在2017年的Squeeze-and-Excitation Networks(SENet)网络结构中,在MNasNet中进行了改进,之后在MobileNetV3中大量使用。研究人员期望通过精确的建模卷积特征各个通道之间的作用关系来改善网络模型的表达能力。为了达到这个期望,提出了一种能够让网络模型对特征进行校准的机制,使得有效的权重大,无效或效果小的权重小的效果,这就是SE模块。

(图片来源https://arxiv.org/pdf/1905.02244.pdf)

如上图,MobileNetV3的SE模块被运用在线性瓶颈结构最后一层上,代替V2中最后的逐点卷积,改为先进行SE操作再逐点卷积。这样保持了网络结构每层的输入和输出,仅在中间做处理,类似于软件开发中的钩子。

SE模块结构详解

下图表示一个SE 模块。主要包含Squeeze和Excitation两部分。W,H表示特征图宽,高。C表示通道数,输入特征图大小为W×H×C。

压缩(Squeeze)

第一步是压缩(Squeeze)操作,如下图所示

这个操作就是一个全局平均池化(global average pooling)。经过压缩操作后特征图被压缩为1×1×C向量。

激励(Excitation)

接下来就是激励(Excitation)操作,如下图所示

由两个全连接层组成,其中SERatio是一个缩放参数,这个参数的目的是为了减少通道个数从而降低计算量。

第一个全连接层有C*SERatio个神经元,输入为1×1×C,输出1×1×C×SERadio。

第二个全连接层有C个神经元,输入为1×1×C×SERadio,输出为1×1×C。

scale操作

最后是scale操作,在得到1×1×C向量之后,就可以对原来的特征图进行scale操作了。很简单,就是通道权重相乘,原有特征向量为W×H×C,将SE模块计算出来的各通道权重值分别和原特征图对应通道的二维矩阵相乘,得出的结果输出。

这里我们可以得出SE模块的属性:

参数量 = 2×C×C×SERatio

计算量 = 2×C×C×SERatio

总体来讲SE模块会增加网络的总参数量,总计算量,因为使用的是全连接层计算量相比卷积层并不大,但是参数量会有明显上升,所以MobileNetV3-Large中的总参数量比MobileNetV2多了2M。

MobileNetV3中的SE模块

SE模块的使用是很灵活的,可以在已有网络上添加而不打乱网络原有的主体结构。

ResNet中添加SE模块形成SE-ResNet网络,SE模块是在bottleneck结构之后加入的,如下图左边所示。

MobileNetV3版本中SE模块加在了bottleneck结构的内部,在深度卷积后增加SE块,scale操作后再做逐点卷积,如上图右边所示。MobileNetV3版本的SERadio系数为0.25。使用SE模块后的MobileNetV3的参数量相比MobileNetV2多了约2M,达到5.4M,但是MobileNetV3的精度得到了很大的提升,在图像分类和目标检测中准确率都有明显提升。

9

h-swish激活函数

MobileNetV3中发现swish激活函数能够有效提高网络的精度,但是swish的计算量太大了,并不适合轻量级神经网络。MobileNetV3找到了类似swish激活函数但是计算量却少很多的替代激活函数h-swish(hard version of swish)如下所示:

sigmoid、h-sigmoid、swish、h-swish激活函数的比较:

(图片来源https://arxiv.org/pdf/1905.02244.pdf)

这种非线性在保持精度的情况下带来了很多优势,首先ReLU6在众多软硬件框架中都可以实现,其次量化时避免了数值精度的损失,运行快。这一非线性改变将模型的延时增加了15%。但它带来的网络效应对于精度和延时具有正向促进,剩下的开销可以通过融合非线性与先前层来消除。

计算机网络的功能主要有哪些能不能举出几种应用实例…

计算机网络的功能主要体现在三个方面:信息交换、资源共享、分布式处理。

1、信息交换

这是计算机网络最基本的功能,主要完成计算机网络中各个节点之间的系统通信。用户可以在网上传送电子邮件、发布新闻消息、进行电子购物、电子贸易、远程电子教育等。

2、资源共享

所谓的资源是指构成系统的所有要素,包括软、硬件资源,如:计算处理能力、大容量磁盘、高速打印机、绘图仪、通信线路、数据库、文件和其他计算机上的有关信息。

由于受经济和其他因素的制约,这些资源并非(也不可能)所有用户都能独立拥有,所以网络上的计算机不仅可以使用自身的资源,也可以共享网络上的资源。因而增强了网络上计算机的处理能力,提高了计算机软硬件的利用率。

3、分布式处理

一项复杂的任务可以划分成许多部分,由网络内各计算机分别协作并行完成有关部分,使整个系统的性能大为增强。

(4)网络模型的实例有哪些扩展阅读:

一、发展历程

中国计算机网络设备制造行业是改革开放后成长起来的,早期与世界先进水平存在巨大差距;但受益于计算机网络设备行业生产技术不断提高以及下游需求市场不断扩大,我国计算机网络设备制造行业发展十分迅速。

近两年,随着我国国民经济的快速发展以及国际金融危机的逐渐消退,计算机网络设备制造行业获得良好发展机遇,中国已成为全球计算机网络设备制造行业重点发展市场。

二、组成分类

计算机网络的分类与一般的事物分类方法一样,可以按事物所具有的不同性质特点(即事物的属性)分类。计算机网络通俗地讲就是由多台计算机(或其它计算机网络设备)通过传输介质和软件物理(或逻辑)连接在一起组成的。

总的来说计算机网络的组成基本上包括:计算机、网络操作系统、传输介质(可以是有形的,也可以是无形的,如无线网络的传输介质就是空间)以及相应的应用软件四部分。

㈤ 神经网络BP模型

一、BP模型概述

误差逆传播(Error Back-Propagation)神经网络模型简称为BP(Back-Propagation)网络模型。

Pall Werbas博士于1974年在他的博士论文中提出了误差逆传播学习算法。完整提出并被广泛接受误差逆传播学习算法的是以Rumelhart和McCelland为首的科学家小组。他们在1986年出版“Parallel Distributed Processing,Explorations in the Microstructure of Cognition”(《并行分布信息处理》)一书中,对误差逆传播学习算法进行了详尽的分析与介绍,并对这一算法的潜在能力进行了深入探讨。

BP网络是一种具有3层或3层以上的阶层型神经网络。上、下层之间各神经元实现全连接,即下层的每一个神经元与上层的每一个神经元都实现权连接,而每一层各神经元之间无连接。网络按有教师示教的方式进行学习,当一对学习模式提供给网络后,神经元的激活值从输入层经各隐含层向输出层传播,在输出层的各神经元获得网络的输入响应。在这之后,按减小期望输出与实际输出的误差的方向,从输入层经各隐含层逐层修正各连接权,最后回到输入层,故得名“误差逆传播学习算法”。随着这种误差逆传播修正的不断进行,网络对输入模式响应的正确率也不断提高。

BP网络主要应用于以下几个方面:

1)函数逼近:用输入模式与相应的期望输出模式学习一个网络逼近一个函数;

2)模式识别:用一个特定的期望输出模式将它与输入模式联系起来;

3)分类:把输入模式以所定义的合适方式进行分类;

4)数据压缩:减少输出矢量的维数以便于传输或存储。

在人工神经网络的实际应用中,80%~90%的人工神经网络模型采用BP网络或它的变化形式,它也是前向网络的核心部分,体现了人工神经网络最精华的部分。

二、BP模型原理

下面以三层BP网络为例,说明学习和应用的原理。

1.数据定义

P对学习模式(xp,dp),p=1,2,…,P;

输入模式矩阵X[N][P]=(x1,x2,…,xP);

目标模式矩阵d[M][P]=(d1,d2,…,dP)。

三层BP网络结构

输入层神经元节点数S0=N,i=1,2,…,S0;

隐含层神经元节点数S1,j=1,2,…,S1;

神经元激活函数f1[S1];

权值矩阵W1[S1][S0];

偏差向量b1[S1]。

输出层神经元节点数S2=M,k=1,2,…,S2;

神经元激活函数f2[S2];

权值矩阵W2[S2][S1];

偏差向量b2[S2]。

学习参数

目标误差ϵ;

初始权更新值Δ0

最大权更新值Δmax

权更新值增大倍数η+

权更新值减小倍数η-

2.误差函数定义

对第p个输入模式的误差的计算公式为

中国矿产资源评价新技术与评价新模型

y2kp为BP网的计算输出。

3.BP网络学习公式推导

BP网络学习公式推导的指导思想是,对网络的权值W、偏差b修正,使误差函数沿负梯度方向下降,直到网络输出误差精度达到目标精度要求,学习结束。

各层输出计算公式

输入层

y0i=xi,i=1,2,…,S0;

隐含层

中国矿产资源评价新技术与评价新模型

y1j=f1(z1j),

j=1,2,…,S1;

输出层

中国矿产资源评价新技术与评价新模型

y2k=f2(z2k),

k=1,2,…,S2。

输出节点的误差公式

中国矿产资源评价新技术与评价新模型

对输出层节点的梯度公式推导

中国矿产资源评价新技术与评价新模型

E是多个y2m的函数,但只有一个y2k与wkj有关,各y2m间相互独立。

其中

中国矿产资源评价新技术与评价新模型

中国矿产资源评价新技术与评价新模型

设输出层节点误差为

δ2k=(dk-y2k)·f2′(z2k),

中国矿产资源评价新技术与评价新模型

同理可得

中国矿产资源评价新技术与评价新模型

对隐含层节点的梯度公式推导

中国矿产资源评价新技术与评价新模型

E是多个y2k的函数,针对某一个w1ji,对应一个y1j,它与所有的y2k有关。因此,上式只存在对k的求和,其中

中国矿产资源评价新技术与评价新模型

中国矿产资源评价新技术与评价新模型

设隐含层节点误差为

中国矿产资源评价新技术与评价新模型

中国矿产资源评价新技术与评价新模型

同理可得

中国矿产资源评价新技术与评价新模型

4.采用弹性BP算法(RPROP)计算权值W、偏差b的修正值ΔW,Δb

1993年德国 Martin Riedmiller和Heinrich Braun 在他们的论文“A Direct Adaptive Method for Faster Backpropagation Learning:The RPROP Algorithm”中,提出Resilient Backpropagation算法——弹性BP算法(RPROP)。这种方法试图消除梯度的大小对权步的有害影响,因此,只有梯度的符号被认为表示权更新的方向。

权改变的大小仅仅由权专门的“更新值”

确定

中国矿产资源评价新技术与评价新模型

其中

表示在模式集的所有模式(批学习)上求和的梯度信息,(t)表示t时刻或第t次学习。

权更新遵循规则:如果导数是正(增加误差),这个权由它的更新值减少。如果导数是负,更新值增加。

中国矿产资源评价新技术与评价新模型

RPROP算法是根据局部梯度信息实现权步的直接修改。对于每个权,我们引入它的

各自的更新值

,它独自确定权更新值的大小。这是基于符号相关的自适应过程,它基

于在误差函数E上的局部梯度信息,按照以下的学习规则更新

中国矿产资源评价新技术与评价新模型

其中0<η-<1<η+

在每个时刻,如果目标函数的梯度改变它的符号,它表示最后的更新太大,更新值

应由权更新值减小倍数因子η-得到减少;如果目标函数的梯度保持它的符号,更新值应由权更新值增大倍数因子η+得到增大。

为了减少自由地可调参数的数目,增大倍数因子η+和减小倍数因子η被设置到固定值

η+=1.2,

η-=0.5,

这两个值在大量的实践中得到了很好的效果。

RPROP算法采用了两个参数:初始权更新值Δ0和最大权更新值Δmax

当学习开始时,所有的更新值被设置为初始值Δ0,因为它直接确定了前面权步的大小,它应该按照权自身的初值进行选择,例如,Δ0=0.1(默认设置)。

为了使权不至于变得太大,设置最大权更新值限制Δmax,默认上界设置为

Δmax=50.0。

在很多实验中,发现通过设置最大权更新值Δmax到相当小的值,例如

Δmax=1.0。

我们可能达到误差减小的平滑性能。

5.计算修正权值W、偏差b

第t次学习,权值W、偏差b的的修正公式

W(t)=W(t-1)+ΔW(t)

b(t)=b(t-1)+Δb(t)

其中,t为学习次数。

6.BP网络学习成功结束条件每次学习累积误差平方和

中国矿产资源评价新技术与评价新模型

每次学习平均误差

中国矿产资源评价新技术与评价新模型

当平均误差MSE<ε,BP网络学习成功结束。

7.BP网络应用预测

在应用BP网络时,提供网络输入给输入层,应用给定的BP网络及BP网络学习得到的权值W、偏差b,网络输入经过从输入层经各隐含层向输出层的“顺传播”过程,计算出BP网的预测输出。

8.神经元激活函数f

线性函数

f(x)=x,

f′(x)=1,

f(x)的输入范围(-∞,+∞),输出范围(-∞,+∞)。

一般用于输出层,可使网络输出任何值。

S型函数S(x)

中国矿产资源评价新技术与评价新模型

f(x)的输入范围(-∞,+∞),输出范围(0,1)。

f′(x)=f(x)[1-f(x)],

f′(x)的输入范围(-∞,+∞),输出范围(0,

]。

一般用于隐含层,可使范围(-∞,+∞)的输入,变成(0,1)的网络输出,对较大的输入,放大系数较小;而对较小的输入,放大系数较大,所以可用来处理和逼近非线性的输入/输出关系。

在用于模式识别时,可用于输出层,产生逼近于0或1的二值输出。

双曲正切S型函数

中国矿产资源评价新技术与评价新模型

f(x)的输入范围(-∞,+∞),输出范围(-1,1)。

f′(x)=1-f(x)·f(x),

f′(x)的输入范围(-∞,+∞),输出范围(0,1]。

一般用于隐含层,可使范围(-∞,+∞)的输入,变成(-1,1)的网络输出,对较大的输入,放大系数较小;而对较小的输入,放大系数较大,所以可用来处理和逼近非线性的输入/输出关系。

阶梯函数

类型1

中国矿产资源评价新技术与评价新模型

f(x)的输入范围(-∞,+∞),输出范围{0,1}。

f′(x)=0。

类型2

中国矿产资源评价新技术与评价新模型

f(x)的输入范围(-∞,+∞),输出范围{-1,1}。

f′(x)=0。

斜坡函数

类型1

中国矿产资源评价新技术与评价新模型

f(x)的输入范围(-∞,+∞),输出范围[0,1]。

中国矿产资源评价新技术与评价新模型

f′(x)的输入范围(-∞,+∞),输出范围{0,1}。

类型2

中国矿产资源评价新技术与评价新模型

f(x)的输入范围(-∞,+∞),输出范围[-1,1]。

中国矿产资源评价新技术与评价新模型

f′(x)的输入范围(-∞,+∞),输出范围{0,1}。

三、总体算法

1.三层BP网络(含输入层,隐含层,输出层)权值W、偏差b初始化总体算法

(1)输入参数X[N][P],S0,S1,f1[S1],S2,f2[S2];

(2)计算输入模式X[N][P]各个变量的最大值,最小值矩阵 Xmax[N],Xmin[N];

(3)隐含层的权值W1,偏差b1初始化。

情形1:隐含层激活函数f( )都是双曲正切S型函数

1)计算输入模式X[N][P]的每个变量的范围向量Xrng[N];

2)计算输入模式X的每个变量的范围均值向量Xmid[N];

3)计算W,b的幅度因子Wmag

4)产生[-1,1]之间均匀分布的S0×1维随机数矩阵Rand[S1];

5)产生均值为0,方差为1的正态分布的S1×S0维随机数矩阵Randnr[S1][S0],随机数范围大致在[-1,1];

6)计算W[S1][S0],b[S1];

7)计算隐含层的初始化权值W1[S1][S0];

8)计算隐含层的初始化偏差b1[S1];

9))输出W1[S1][S0],b1[S1]。

情形2:隐含层激活函数f( )都是S型函数

1)计算输入模式X[N][P]的每个变量的范围向量Xrng[N];

2)计算输入模式X的每个变量的范围均值向量Xmid[N];

3)计算W,b的幅度因子Wmag;

4)产生[-1,1]之间均匀分布的S0×1维随机数矩阵Rand[S1];

5)产生均值为0,方差为1的正态分布的S1×S0维随机数矩阵Randnr[S1][S0],随机数范围大致在[-1,1];

6)计算W[S1][S0],b[S1];

7)计算隐含层的初始化权值W1[S1][S0];

8)计算隐含层的初始化偏差b1[S1];

9)输出W1[S1][S0],b1[S1]。

情形3:隐含层激活函数f( )为其他函数的情形

1)计算输入模式X[N][P]的每个变量的范围向量Xrng[N];

2)计算输入模式X的每个变量的范围均值向量Xmid[N];

3)计算W,b的幅度因子Wmag

4)产生[-1,1]之间均匀分布的S0×1维随机数矩阵Rand[S1];

5)产生均值为0,方差为1的正态分布的S1×S0维随机数矩阵Randnr[S1][S0],随机数范围大致在[-1,1];

6)计算W[S1][S0],b[S1];

7)计算隐含层的初始化权值W1[S1][S0];

8)计算隐含层的初始化偏差b1[S1];

9)输出W1[S1][S0],b1[S1]。

(4)输出层的权值W2,偏差b2初始化

1)产生[-1,1]之间均匀分布的S2×S1维随机数矩阵W2[S2][S1];

2)产生[-1,1]之间均匀分布的S2×1维随机数矩阵b2[S2];

3)输出W2[S2][S1],b2[S2]。

2.应用弹性BP算法(RPROP)学习三层BP网络(含输入层,隐含层,输出层)权值W、偏差b总体算法

函数:Train3BP_RPROP(S0,X,P,S1,W1,b1,f1,S2,W2,b2,f2,d,TP)

(1)输入参数

P对模式(xp,dp),p=1,2,…,P;

三层BP网络结构;

学习参数。

(2)学习初始化

1)

2)各层W,b的梯度值

初始化为零矩阵。

(3)由输入模式X求第一次学习各层输出y0,y1,y2及第一次学习平均误差MSE

(4)进入学习循环

epoch=1

(5)判断每次学习误差是否达到目标误差要求

如果MSE<ϵ,

则,跳出epoch循环,

转到(12)。

(6)保存第epoch-1次学习产生的各层W,b的梯度值

(7)求第epoch次学习各层W,b的梯度值

1)求各层误差反向传播值δ;

2)求第p次各层W,b的梯度值

3)求p=1,2,…,P次模式产生的W,b的梯度值

的累加。

(8)如果epoch=1,则将第epoch-1次学习的各层W,b的梯度值

设为第epoch次学习产生的各层W,b的梯度值

(9)求各层W,b的更新

1)求权更新值Δij更新;

2)求W,b的权更新值

3)求第epoch次学习修正后的各层W,b。

(10)用修正后各层W、b,由X求第epoch次学习各层输出y0,y1,y2及第epoch次学习误差MSE

(11)epoch=epoch+1,

如果epoch≤MAX_EPOCH,转到(5);

否则,转到(12)。

(12)输出处理

1)如果MSE<ε,

则学习达到目标误差要求,输出W1,b1,W2,b2

2)如果MSE≥ε,

则学习没有达到目标误差要求,再次学习。

(13)结束

3.三层BP网络(含输入层,隐含层,输出层)预测总体算法

首先应用Train3lBP_RPROP( )学习三层BP网络(含输入层,隐含层,输出层)权值W、偏差b,然后应用三层BP网络(含输入层,隐含层,输出层)预测。

函数:Simu3lBP( )。

1)输入参数:

P个需预测的输入数据向量xp,p=1,2,…,P;

三层BP网络结构;

学习得到的各层权值W、偏差b。

2)计算P个需预测的输入数据向量xp(p=1,2,…,P)的网络输出 y2[S2][P],输出预测结果y2[S2][P]。

四、总体算法流程图

BP网络总体算法流程图见附图2。

五、数据流图

BP网数据流图见附图1。

六、实例

实例一 全国铜矿化探异常数据BP 模型分类

1.全国铜矿化探异常数据准备

在全国铜矿化探数据上用稳健统计学方法选取铜异常下限值33.1,生成全国铜矿化探异常数据。

2.模型数据准备

根据全国铜矿化探异常数据,选取7类33个矿点的化探数据作为模型数据。这7类分别是岩浆岩型铜矿、斑岩型铜矿、矽卡岩型、海相火山型铜矿、陆相火山型铜矿、受变质型铜矿、海相沉积型铜矿,另添加了一类没有铜异常的模型(表8-1)。

3.测试数据准备

全国化探数据作为测试数据集。

4.BP网络结构

隐层数2,输入层到输出层向量维数分别为14,9、5、1。学习率设置为0.9,系统误差1e-5。没有动量项。

表8-1 模型数据表

续表

5.计算结果图

如图8-2、图8-3。

图8-2

图8-3 全国铜矿矿床类型BP模型分类示意图

实例二 全国金矿矿石量品位数据BP 模型分类

1.模型数据准备

根据全国金矿储量品位数据,选取4类34个矿床数据作为模型数据,这4类分别是绿岩型金矿、与中酸性浸入岩有关的热液型金矿、微细浸染型型金矿、火山热液型金矿(表8-2)。

2.测试数据准备

模型样本点和部分金矿点金属量、矿石量、品位数据作为测试数据集。

3.BP网络结构

输入层为三维,隐层1层,隐层为三维,输出层为四维,学习率设置为0.8,系统误差1e-4,迭代次数5000。

表8-2 模型数据

4.计算结果

结果见表8-3、8-4。

表8-3 训练学习结果

表8-4 预测结果(部分)

续表

㈥ 鐩存帴鐢ㄧ炵粡缃戠粶宸ュ叿绠辨瀯寤篵p绁炵粡缃戠粶锛屽笇链涜兘缁欎釜渚嫔瓙璇存槑锛屾湁娉ㄨВ链濂斤纴链浜簃atlab鏂版坠锛岃阿璋

BP锛圔ack Propagation锛夌炵粡缃戠粶鏄1986骞寸敱Rumelhart鍜孧cCelland涓洪栫殑绉戝﹀跺皬缁勬彁鍑猴纴鏄涓绉嶆寜璇宸阃嗕紶鎾绠楁硶璁缁幂殑澶氩眰鍓嶉堢绣缁滐纴鏄鐩鍓嶅簲鐢ㄦ渶骞挎硾镄勭炵粡缃戠粶妯″瀷涔嬩竴銆侭P缃戠粶鑳藉︿範鍜屽瓨璐澶ч噺镄勮緭鍏-杈揿嚭妯″纺鏄犲皠鍏崇郴锛岃屾棤闇浜嫔墠鎻绀烘弿杩拌繖绉嶆椠灏勫叧绯荤殑鏁板︽柟绋嬨傚畠镄勫︿範瑙勫垯鏄浣跨敤链阃熶笅闄嶆硶锛岄氲繃鍙嶅悜浼犳挱𨱒ヤ笉鏂璋冩暣缃戠粶镄勬潈鍊煎拰阒埚硷纴浣跨绣缁灭殑璇宸骞虫柟鍜屾渶灏忋侭P绁炵粡缃戠粶妯″瀷𨰾撴墤缁撴瀯鍖呮嫭杈揿叆灞傦纸input锛夈侀殣灞(hidden layer)鍜岃緭鍑哄眰(output layer)銆


闄勪欢灏辨槸鍒╃敤绁炵粡缃戠粶宸ュ叿绠辨瀯寤筑P绁炵粡缃戠粶杩涜岄勬祴镄勫疄渚嬨傚傛灉瑕佺敤鍙瑙嗗寲宸ュ叿锛屽彲浠ュ湪锻戒护绐楀彛杈揿叆nntool.

㈦ 最好用一个网络实例图表示出来!标明每层所用到的协议,每个网络设备如何传输!实物模型图最好!N倍加分!

从网上看到的,我获益匪浅,希望对您也有帮助。Goodluck!

不再困惑互联网OSI七层模型全解析

作者:中关村在线白宁

第1页:认识OSI了解网络为什么要分层

“互联网”这个词相信大家都不陌生,因为大家几乎每天都在接触互联网,它已经完全融入到我们的日常生活当中。但你知道吗?互联网的各项应用,其实都是分层的,也就是很多网络达人口中的OSI七层模型。不了解吗?没关系,看过下面的介绍你就明白了,随笔者一起变身网络达人吧。

什么是OSI?

OSI参考模型(OSI/RM)的全称是开放系统互连参考模型(,OSI/RM),它是由国际标准化组织ISO提出的一个网络系统互连模型。它是网络技术的基础,也是分析、评判各种网络技术的依据,它揭开了网络的神秘面纱,让其有理可依,有据可循。

网络应用为什么要分层?

因为计算机网络中存在着众多的体系结构,例如IBM公司的SNA(系统网络体系结构,7层)和DEC公司的DNA(数字网络体系结构,3层)等。由于体系结构的差异化,使得网络产品出现了严重的兼容性问题,影响了网络的快速发展。为了解决这个问题,ISO于1984年正式颁布了OSIRM。

这个模型把网络通信的工作分为7层。1至4层被认为是低层,这些层与数据移动密切相关。5至7层是高层,包含应用程序级的数据。每一层负责一项具体的工作,然后把数据传送到下一层。由低到高具体分为:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。

OSI七层模型图如图一。

OSI模型的最低层或第一层:物理层

物理层包括物理连网媒介,实际上就是布线、光纤、网卡和其它用来把两台网络通信设备连接在一起的东西。它规定了激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性。虽然物理层不提供纠错服务,但它能够设定数据传输速率并监测数据出错率。

产品代表:TP-LINKTL-HP8MU集线器(如图二)

物理层定义的标准包括:EIA/TIARS-232、EIA/TIARS-449、V.35、RJ-45等。

第2页:OSI二至四层数据移动的关键

OSI模型的第二层:数据链路层

数据链路层主要作用是控制网络层与物理层之间的通信。它保证了数据在不可靠的物理线路上进行可靠的传递。它把从网络层接收到的数据分割成特定的可被物理层传输的帧,保证了传输的可靠性。它的主要作用包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等。它是独立于网络层和物理层的,工作时无需关心计算机是否正在运行软件还是其他操作。

产品代表:D-LinkDES-1024D(如图三)

数据链路层协议的代表包括:SDLC、HDLC、PPP、STP、帧中继等。

OSI模型的第三层:网络层

很多用户经常混淆2层和3层的相关问题,简单来说,如果你在谈论一个与IP地址、路由协议或地址解析协议(ARP)相关的问题,那么这就是第三层的问题。

网络层负责对子网间的数据包进行路由选择,它通过综合考虑发送优先权、网络拥塞程度、服务质量以及可选路由的花费来决定从一个网络中两个节点的最佳路径。另外,它还可以实现拥塞控制、网际互连等功能。

产品代表:TP-LINKTL-R4148(如图四)

网络层协议的代表包括:IP、IPX、RIP、OSPF等。

OSI模型的第四层:传输层

传输层是OSI模型中最重要的一层,它是两台计算机经过网络进行数据通信时,第一个端到端的层次,起到缓冲作用。当网络层的服务质量不能满足要求时,它将提高服务,以满足高层的要求;而当网络层服务质量较好时,它只需进行很少的工作。另外,它还要处理端到端的差错控制和流量控制等问题,最终为会话提供可靠的,无误的数据传输。

产品代表:NETGEARGS748TS(如图五)

传输层协议的代表包括:TCP、UDP、SPX等。

网络通信工作的低层(1-4层)我们已经了解了,一起去看看高层(5-7层)吧。

第3页:关注OSI五至七层总结

OSI模型的第五层:会话层

会话层负责在网络中的两节点之间建立和维持通信,并保持会话获得同步,它还决定通信是否被中断以及通信中断时决定从何处重新发送。

OSI模型的第六层:表示层

表示层的作用是管理数据的解密与加密,如常见的系统口令处理,当你的账户数据在发送前被加密,在网络的另一端,表示层将对接收到的数据解密。另外,表示层还需对图片和文件格式信息进行解码和编码。

OSI模型的第七层:应用层

简单来说,应用层就是为操作系统或网络应用程序提供访问网络服务的接口,包括文件传输、文件管理以及电子邮件等的信息处理。

应用层协议的代表包括:Telnet、FTP、HTTP、SNMP等。

会话层,表示层,应用层构成开放系统的高3层,它们为应用进程提供分布处理,对话管理,信息表示,恢复最后的差错等,它们每一层负责一项具体的工作,然后把数据传送到下一层。

通过上面的介绍,相信你对OSI七层模型已经有了一定的了解,但是这些概念性的文字有点儿难懂,所以笔者引用了一段来自网络上的关于OSI七层模型的幽默描写,让OSI七层模型的概念变得简单明了。

恋爱和OSImodel七层

起初只是近距离地点对点无线收发爱的信号,乃物理层;

然后就是通过某个媒体(比如一支花、一本书)将信号传输,乃数据链路层;

开始有选择地分组分割发送和装配接收爱的信号,选择最佳的传送路径,乃网络层;

拖手和接吻可谓传输层,确保信号顺利地传送到目的地;

甜言蜜语与鸿雁往来属于会话层,包括名字查找和安全防护;

订婚归于表示层,将信号格式转换进行爱的解释并加以巩固;

结婚,当然是应用层,因为它提供了所有应用程序的直接支持。

总结:

OSI七层模型有效的解决了不同网络体系互连时所遇到的兼容性问题,它的出现减轻了网络的复杂程度,一旦网络发生故障,可迅速定位故障所处层次,便于查找和纠错;通过在各层上定义标准接口,它使同属一层的不同网络设备间能实现互操作;它还保证了各层之间的相对独立;而高层协议可以放在多种低层协议上运行,提高了网络的效率;因为每次更新都只需在一个层次进行,不受整体网络的制约,所以它的出现有效刺激了网络技术革新,它是网络技术发展的源动力。

㈧ SPSS统计分析案例:多层感知器神经网络

SPSS统计分析案例:多层感知器神经网络
神经网络模型起源于对人类大脑思维模式的研究,它是一个非线性的数据建模工具, 由输入层和输出层、 一个或者多个隐藏层构成神经元,神经元之间的连接赋予相关的权重, 训练学习算法在迭代过程中不断调整这些权重,从而使得预测误差最小化并给出预测精度。
在SPSS神经网络中,包括多层感知器(MLP)和径向基函数(RBF)两种方法。
本期主要学习多层感知器神经网络,要把它讲清楚是比较困难的,为了能直观感受它的功能,首先以一个案例开始,最后再总结知识。
案例数据
该数据文件涉及某银行在降低贷款拖欠率方面的举措。该文件包含 700 位过去曾获得贷款的客户财务和人口统计信息。请使用这 700 名客户的随机样本创建多层感知器神经网络模型。银行需要此模型对新的客户数据按高或低信用风险对他们进行分类。
第一次分析:菜单参数
要运行“多层感知器”分析,请从菜单中选择:
分析 > 神经网络 > 多层感知器
如上图所示,MLP主面板共有8个选项卡,至少需要设置其中"变量"、"分区"、"输出"、"保存"、"导出"等5个选项卡,其他接受软件默认设置。
▌ "变量"选项卡
将"是否拖欠"移入因变量框;
将分类变量"学历"移入因子框,其他数值变量移入"协变量"框;
因各协变量量纲不同,选择"标准化"处理;
▌ "分区"选项卡
在此之前,首先在 "转换 > 随机数生成器"菜单中设置随机数固定种子为9191972(此处同SPSS官方文档,用户可以自由设定),因为"分区"选项卡中,要求对原始数据文件进行随机化抽样,将数据划分为"训练样本"、"支持样本"、"检验样本"3个区块,为了随机过程可重复,所以此处指定固定种子一枚;
初次建模,先抽样70%作为训练样本,用于完成自学习构建神经网络模型,30%作为支持样本,用于评估所建立模型的性能,暂不分配检验样本;
▌ "输出"选项卡
勾选"描述"、"图";
勾选"模型摘要"、"分类结果"、"预测实测图";
勾选"个案处理摘要";
构成"自变量重要性分析";
这是第一次尝试性的分析,主要参数设置如上,其他选项卡接受软件默认设置,最后返回主面板,点击"确定"按钮,软件开始执行MLP过程。
第一次分析产生的结果:
主要看重点的结果,依次如下:
个案处理摘要表,700个贷款客户的记录,其中480个客户被分配到训练样本,占比68.6%,另外220个客户分配为支持样本。
模型摘要表,首次构建的MLP神经网络模型其不正确预测百分比为12.7%,独立的支持样本检验模型的不正确百分比为20.9%,提示"超出最大时程数",模型非正常规则中止,显示有过度学习的嫌疑。
判断:首次建立的模型需要预防过度训练。
第二次分析:菜单参数
首次分析怀疑训练过度,所以第二次分析主要是新增检验样本以及输出最终的模型结果。
运行“多层感知器”分析,请从菜单中选择:
分析 > 神经网络 > 多层感知器
▌ "分区"选项卡
对样本进行重新分配,总700样本,支持样本继续30%,训练样本由原来的70%缩减至50%,另外的20%分配给独立的检验样本空间;
▌ "保存"选项卡
保存每个因变量的预测值或类别;
保存每个因变量的预测拟概率;
▌ "导出"选项卡
将突触权重估算值导出到XML文件;
给XML模型文件起名并制定存放路径;
其他选项卡的操作和第一次分析保持一致。返回主面板,点击"确定"开始执行第二次分析。
第一次分析产生的结果:
总样本在3个分区的分配比例。
MLP神经网络图,模型包括1个输入层、1个隐藏层和1个输出层,输入层神经元个数12个,隐藏层9个,输出层2个。
模型摘要表,模型误差在1个连续步骤中未出现优化减少现象,模型按预定中止。模型在3个分区中的不正确预测百分比较接近。
模型分类表,软件默认采用0.5作为正确和错误的概率分界,将3大分区样本的正确率进行交叉对比,显示出预测为NO,即预测为不拖欠的概率高于拖欠,模型对有拖欠的贷款客户风险识别能力较低。
预测-实测图,按照贷款客户是否拖欠与预测结果进行分组,纵坐标为预测概率。以0.5为分界时,对优质客户的识别效果较好,但是有较大的概率在识别有拖欠客户上出错。
显然以0.5作为分界并不是最优解,可以尝试将分界下移至0.3左右,此操作会使第四个箱图中大量欠贷客户正确地重新分类为欠贷者,提高风险识别能力。
自变量重要性图,重要性图为重要性表格中值的条形图,以重要性值降序排序。其显示与客户稳定性(employ、address)和负债(creddebt、debtinc)相关的变量对于网络如何对客户进行分类有重大影响;
最后来看导出的XML模型文件:
以XML文件存储了第二次构建的MLP神经网络模型,可以用于新客户的分类和风险识别。
新客户分类
假设现在有150名新客户,现在需要采用此前建立的模型,对这些客户进行快速的风险分类和识别。
打开新客户数据,菜单中选择:
实用程序 > 评分向导
型"XML文件,点击"下一步":
检查新数据文件变量的定义是否准确。下一步。
选择输出"预测类别的概率"、"预测值"。完成。
新客户数据文件新增3列,分别给出每一个新客户的预测概率和风险分类(是否欠贷)。
多层感知器神经网络 总结
一种前馈式有监督的学习技术;
多层感知器可以发现极为复杂的关系;
如果因变量是分类型,神经网络会根据输入数据,将记录划分为最适合的类别;
如果因变量是连续型,神将网络预测的连续值是输入数据的某个连续函数;
建议创建训练-检验-支持三个分区,网络训练学习将更有效;
可将模型导出成 XML 格式对新的数据进行打分;

阅读全文

与网络模型的实例有哪些相关的资料

热点内容
训练网络的样本需要多少 浏览:358
荣耀20网络加速设置 浏览:1000
打印机网络连接不在同一路由器 浏览:72
网络营销和seo公司哪个好 浏览:262
手机优酷通过网络投屏 浏览:847
电脑新装系统网络卡 浏览:899
手机易达电话就没网络信号 浏览:673
海度网络科技怎么样 浏览:614
网络语言如何玩 浏览:51
苹果手机蜂窝网络为1g 浏览:147
网络情报有哪些 浏览:564
电脑网络发现无法恢复 浏览:63
苹果网络热点怎么分享给别人 浏览:466
网络官方对外汉语培训价格是多少 浏览:318
路由器ap网络插哪个口 浏览:636
移动网络手机接入点代理怎么设置 浏览:497
网络写文章哪里找 浏览:687
怀化整合营销网络推广怎么做 浏览:852
无线网络组网有哪些 浏览:843
联想电脑网络连上后自己断开了 浏览:591

友情链接