0%

技术发展历程

RNN

由于深度神经网络DNN参数量过大以及丢失了时序信息,在NLP处理中不如RNN。

但是RNN关键在于将之前保存的信息应用到当前的任务之上。
当距离过大时,容易出现梯度衰减和爆炸。

所以采用LSTM和GRU弥补。

seq2seq

虽然RNN输入可以不定长,但是输出是定长的,所以无法解决机器翻译的问题。
seq2seq将输入通过Encoder编码成向量C,然后作为Decoder的一部分用来预测,Decode的输入是前一时刻Decoder的输出,所以可以输出不定长。

attention

当输入的句子很长时,将所有的输入都融合成一个向量C显然不合适。
attention就是将C变成一个随时间变化的权重变量。

transformer

由于RNN无法并行,attention的编码器和解码器还是使用了RNN。所以transformer完全抛弃了RNN,在编码器和解码器采用self-attention机制,可以很好地并行化。

BERT

BERT就是采用的transformer的编码器,