赞
踩
我希望自己也是一颗星星。如果我会发光,就不必害怕黑暗。
如果我自己是那么美好,那么一切恐惧就可以烟消云散。
于是我开始存下了一点希望。——王小波
下面所有内容均来自网络和自己的一点点理解。(侵删)
额,它好像是属于神经网络的知识,so我先查了一下啥是神经网络
神经网络可以指向两种,一是生物神经网络,一是人工神经网络
生物神经网络:一般指生物的大脑神经元,细胞,触点等组成的网络,用于产生生物的意识,帮助生物进行思考和行动。
人工神经网络(Artificial Neural Networks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
大概有一点明白了,就是一种算法模型对吧,关键词抓取:分布式、内部大量结点之间相互连接
在机器学习和相关领域,人工神经网络(人工神经网络)的计算模型灵感来自动物的中枢神经系统(尤其是脑),并且被用于估计或可以依赖于大量的输入和一般的未知近似函数。人工神经网络通常呈现为相互连接的“神经元”,它可以从输入的计算值,并且能够机器学习以及模式识别由于它们的自适应性质的系统。
例如,用于手写体识别的神经网络是由一组可能被输入图像的像素激活的输入神经元来限定。后进过加权,并通过一个函数(由网络的设计者确定的)转化,这些神经元的致动被上到其他神经元然后被传递。重复此过程,直到最后,一输出神经元被激活。这决定了哪些字符被读取。
像其他的从数据-神经网络认识到的机器学习系统方法已被用来解决各种各样的很难用普通的以规则为基础的编程解决的任务,包括计算机视觉和语音识别。
也许,人工神经网络的最大优势是他们能够被用作一个任意函数逼近的机制,那是从观测到的数据“学习”。然而,使用起来也不是那么简单的,一个比较好理解的基本理论是必不可少的。
好,下面开始看看啥是前向传播
神经网络实际上就是一个输入为x,输出为y的映射函数
前向传播就是给网络输入一个样本向量,该样本向量的各元素,经过各隐藏层的逐级加权求和+非线性激活,最终由输出层输出一个预测向量的过程
然后我又去查了啥是加权求和:
就是根据权重比求和(就是比如我们学校高数的最终分数是根据平时作业,月考,期中考,期末考四项决定的,而这四项对最终成绩影响不同,期末成绩占70%)
啥又是非线性激活?
这就要先知道啥是线性激活函数了。。。
a=z 叫做线性激活函数 或 恒等激活函数
无论你有多少个隐含层,只要是使用线性激活函数,一直做的就只是计算线性激活函数(这就是最原始的感知机)
只有一个地方可以使用线性激活函数,那就是回归问题。或者在输出层用也是可以的。
非线性函数就是:(我在网上搜了好久啥是非线性激活函数,怎么都查不到。。。没想要拆开来查就能查到了)
图像不是一条直线的函数
激活函数:
它们将非线性特性引入到我们的网络中。比如:在神经元中,输入的 inputs 通过加权,求和后,还被作用了一个函数,这个函数就是激活函数。
引入激活函数是为了增加神经网络模型的非线性。没有激活函数的每层都相当于矩阵相乘。就算你叠加了若干层之后,无非还是个矩阵相乘罢了。前向传播和反向传播模拟的是人脑中神经元的正向传导和反向反馈信号回路
前向传播输入信号直至输出产生误差,反向传播误差更新权重矩阵。
还有好多常用的激活函数(全来自百度哈)
Sigmoid函数
图像:
Tanh函数
Tanh是双曲函数中的一个,Tanh()为双曲正切。(在数学中,双曲正切“Tanh”是由基本双曲函数双曲正弦和双曲余弦推导而来。)
ReLU函数
Relu激活函数(The Rectified Linear Unit),用于隐层神经元输出。
啥是隐层神经元啊?(来自csdn的n篇文章)
要说明隐藏层的意义,需要从两个方面理解,一个是单个隐藏层的意义,一个是多层隐藏层的意义。
单个隐藏层的意义就是把输入数据的特征,抽象到另一个维度空间,来展现其更抽象化的特征,这些特征能更好的进行线性划分。
多个隐藏层其实是对输入特征多层次的抽象,最终的目的就是为了更好的线性划分不同类型的数据(不是层数越多越好的)
层数越多参数会爆炸式增多
到了一定层数,再往深了加隐藏层,分类效果的增强会越来越不明显。
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。