前言
以下内容是个人学习之后的感悟,转载请注明出处~
由于神经网络内容有点儿多,所以在此处建立以下目录,方便读者浏览。
简介
神经细胞和人身上任何其他类型细胞十分不同,每个神经细胞都长着一根像电线一样的称为轴突(axon)的东西,它的
长度有时伸展到几厘米,用来将信号传递给其他的神经细胞。神经细胞的结构如下图所示。它由一个细胞体(soma)、一些树
突(dendrite) 、和一根可以很长的轴突组成。神经细胞体是一颗星状球形物,里面有一个核(nucleus)。树突由细胞体向各个
方向长出,本身可有分支,是用来接收信号的。轴突也有许多的分支。轴突通过分支的末梢(terminal)和其他神经细胞的树突
相接触,形成所谓的突触(Synapse), (图中未画出),一个神经细胞通过轴突和突触把产生的信号送到其他的神经细胞。
正是由于数量巨大的连接,使得大脑具备难以置信的能力。尽管每一个神经细胞仅仅工作于大约100Hz的频率,但因各
个神经细胞都以独立处理单元的形式并行工作着,使人类的大脑具有下面这些非常明显的特点:
因此,一个人工神经网络( Artificial neural network, ANN)简称神经网络(NN), 就是要在当代数字计算机现有规模的
约束下,来模拟这种大量的并行性, 并在实现这一工作时,使它能显示许多和人或动物大脑相类似的特性。
神经网络原理
神经网络是一种非线性学习算法,神经网络中最基本的成分是神经元(neuron),下面给出神经元的基本模型:
进入人工神经细胞的每一个样本特征xi都与一个权重θ相乘,作为图中橘色大圆的输入。橘色大圆的“核”是一个激励函数,
它把所有这些新的、经过权重调整后的输入全部加起来,形成单个的激励值。然后,激励函数根据激励值产生输出。激励函数有
好多种类型,常见的有以下几种:
介绍完神经元的基本模型,接下来介绍的是神经网络的基本模型:
上图中并未画出x0和a0,其值一般取+1,θ10(1)和θ20(2)分别是它们的权值。上图中的三个层次分别是输入层、隐藏层、输
出层,其实现的整个过程如下列公式所示(其中g()即为激励函数):
一般在分类应用中,需要分很多类别,那么,神经网络在多分类应用中又是怎么实现的呢?看下图,我们可以清晰地看到,采
用二进制编码式的形式,可以完美地解决这个问题。
那么又是如何求出这些权重值得呢,其实学过线性回归、逻辑回归的童鞋应该知道,对~,使用代价函数。但是神经网络的激
励函数不同,其代价函数也有所不同,为了方便起见,此处与下文的激励函数全部取为S型函数。神经网络的代价函数如下,由于
此处采用的是S型函数,是否会觉得其形式有点像逻辑回归的代价函数呢?(本人看了一下,正则项还是区别很大的~)
BP神经网络
BP(Back Propagation)神经网络是目前神经网络领域最成功的算法之一。它是一种按误差逆传播算法训练的多层前馈网络,
能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。
- 激活函数:Relu
- 激活函数:tanh
以上是全部内容,如果有什么地方不对,请在下面留言,谢谢~