打字猴:1.700540618e+09
1700540618
1700540619 问题1 如何构建生成器,生成文字组成的序列来表示句子?
1700540620
1700540621 难度:★★☆☆☆
1700540622
1700540623 分析与解答
1700540624
1700540625
1700540626
1700540627
1700540628 假定生成器产生一个定长(记T)的句子,即文字序列,yi∈,其中yi表示一个词,表示词库。一般地,序列建模采用RNN框架(见图13.18),具体单元可以是LSTM或GRU,甚至带上注意力机制。
1700540629
1700540630
1700540631
1700540632
1700540633 (13.28)
1700540634
1700540635
1700540636
1700540637
1700540638 (13.29)
1700540639
1700540640
1700540641
1700540642
1700540643 (13.30)
1700540644
1700540645
1700540646
1700540647 上面式子刻画了RNN的第t步,ht−1表示前一步的隐状态,xt采用前一步生成词yt−1的表示向量,xt和ht−1共同作为g的输入,计算当前步的隐状态ht。如果g是一个LSTM单元,隐状态要包含一个用作记忆的状态。隐状态ht是一个d维向量,经线性变换成为一个|Y|维向量,再经过一个Softmax层,计算出选择词的概率分布zt,并采样一个词yt。概率分布zt是一个条件概率,因为xt为词yt−1的表示向量,x1作为一个空字符或RNN头输入暂忽略,所以条件概率写成,进而生成文字序列Y1:T的概率为:
1700540648
1700540649
1700540650
1700540651
1700540652 (13.31)
1700540653
1700540654 实际上,RNN每个单元的输出就是联合概率分解后的各个条件概率,根据每个条件概率挑选一个词,依次进行,最终得到一个长度为T的句子。
1700540655
1700540656
1700540657
1700540658
1700540659 图13.18 序列建模LSTM框架
1700540660
1700540661 问题2 训练序列生成器的优化目标通常是什么?GANs框架下有何不同?
1700540662
1700540663 难度:★★★★★
1700540664
1700540665 分析与解答
1700540666
1700540667 GANs框架下有一个生成器Gθ和一个判别器Dφ。对于本问题,生成器的目标是生成文字序列,高度地模仿真实句子;判别器的目标是区分哪些是生成器给的句子,哪些是真实数据集中挑的句子。通俗地讲,就是机器模仿人造句,一方面要让模仿尽可能像,一方面要辨认哪些是机器说的、哪些是人说的。前者工作由生成器负责,后者工作则交给判别器,生成器的工作成果要受到判别器的评判。判别器的优化目标为:
[ 上一页 ]  [ :1.700540618e+09 ]  [ 下一页 ]