1.前者的输出作为后者的输入(循环),有先后关系的信息,前影响后,时间序列。处理数字信息。
2.独热编码 ont-hot Encoding:处理的文字数据地位相同,相当于用二进制数01给数据编码,会增加数据维度。
3.优点:有记忆力,每个神经元上一个时间点的输出会作为这个时间点的输入而加进来。
但是存在短期记忆的问题 记忆衰减,越近的输入占比越大。
但是前后文记忆的长度也不能太长,影响运行。太短会导致没理解意思。
4.隐藏层的激活函数:tanh,常用在rnn
tanh函数具有如下的优缺点:
优点:
零中心性质:tanh函数的输出范围在-1到1之间(可以更好的表示两种相反意思的数据),具有零中心性质,即均值为0,这有助于减少梯度消失问题,使得神经网络的训练更加稳定和快速。
非线性特性:tanh函数是一种非线性函数,引入了非线性变换,使得神经网络能够学习和表示更复杂的非线性函数关系。
平滑性:tanh函数是光滑且连续的,在整个定义域上都具有可导性,这对于基于梯度的优化方法(如梯度下降)非常重要。
特征缩放:tanh函数可以将输入数据映射到范围在-1到1之间,有助于对输入数据进行标准化和特征缩放,加速神经网络的训练过程。
缺点:
梯度饱和:当输入值较大或较小时,tanh函数的梯度会接近于零,可能会导致梯度消失问题,使得训练过程变得缓慢或停滞。
指数运算开销大:计算tanh函数需要进行指数运算,计算量较大,特别是在大规模数据集和深层网络中,可能会导致计算效率较低。
输出范围有限:虽然tanh函数的输出范围在-1到1之间,但与ReLU等激活函数相比,它的输出范围相对较小,可能会限制神经网络的表达能力。
5.LSTM(解决了RNN短期记忆)和GRU(优化了LSTM)
LSTM:
遗忘门:上图的sigmoid,遗忘过去。wf是初始化要给的值
输入门:用sigmoid选择是否记忆现在的信息。i用0 1表示是否记忆,c表示输入信息,然后把i和c相乘就能选择记忆了。
合并操作: