Sequence-to-Sequence model

标签:#Sequence-to-Sequencemodel# 时间:2019/03/27 21:18:52 作者:夏天的风

在2017年发表在AAAI上的论文Topic Aware Neural Response Generation中看到的Sequence-to-Sequence model(序列到序列模型 / Seq2Seq模型)的定义。

Seq2Seq模型中,给定一个源序列X=(x1,x_2,\cdots,x_T)和一个目标序列Y=(y_1,y_2,\cdots,y{T’}),在X已知的情况下,模型最大化Y的生成概率:p(y1,y_2,\cdots,y{T’}|x1,x_2,\cdots,x_T)具体而言,Seq2Seq模型属于编码器-解码器框架的范畴,编码器逐个读取X中的元素并通过一个RNN模型将其表示成情境向量c,然后解码器将c作为输入并计算Y的生成概率。Seq2Seq模型的目标函数可以变形为以下形式:p(y_1,y_2,\dots,y{T’}|x1,x_2,\dots,x_T)=p(y_1|c)\prod{t=2}^{T’}p(yt|c,y_1,\cdots,y{t-1})作为编码器的RNN模型通过以下方式计算情境向量cht=f(x_t,h{t-1})c=hT,其中h_t表示第t个时间步编码器的隐层状态,f是一个非线性变换,一般是LSTM单元或者GRU单元。
解码器是一个标准的RNN模型,它基于情境向量c在每个时间步t通过以下公式计算候选词的概率分布:s_t=f(y
{t-1},s{t-1},c);p_t=softmax(s_t,y{t-1}),其中st为解码器RNN模型在时间步t的隐状态,y{t-1}是解码器在时间步t-1生成的序列元素。

欢迎大家关注DataLearner官方微信,接受最新的AI技术推送
相关博客