神经网络从原理到实现
一、神经网络简介
1、人工神经网络(artificial neural network,ANN)
1)结构(Architecture)指定了网络中的变量和它们的拓扑关系
2)激励函数(Activity Rule),一般激励函数较依赖于网络中的权重(即该网络的参数)
3)学习规则(Learning Rule)指定了网络中的权重如何随着时间推进而调整
2、初识神经网络
1)神经网络主要包括三部分:结构、激励函数、学习规则
2)除了输入层,每一层的节点都包含一个非线性变换:
2.1)如果只进行线性变换,那么即使是多层的神经网络,依然只有一层的效果。类似于0.6*(0.2*1+0.3*2)=0.12*1+0.18*2
2.2)进行非线性变化,可以使得神经网络可以拟合任意一个函数
2.3)使用数学公式描述一个神经元工作的方式:
a)输入x
b)计算z=w*x
c)输出new_x=f(z),这里的f是一个函数,可以是sigmoid、tanh、relu等,f就是上文所说的激励函数
3、反向传播(bp)算法
有了上面的网络结构和”激励函数“之后,这个网络是如何学习参数(学习规则)的呢?
二、循环神经网络(RNN)
RNN比NN多了指向自己的环,RNN之所以循环,是因为它针对系列中的每一个元素都执行相同的操作,每一个操作都依赖于之前的计算结果
三、Long-Short-Term-Memories(LSTM)