【无标题】

绑定输入输出的词向量矩阵 W m , v W_{m,v} Wm,v

节省一半的参数量,词向量矩阵非常耗内存,只需维护一个即可。

解码方式

auto-regressive:seq2seq
CRF:建模隐状态之间的线性依赖关系

Train with teacher forcing

好处:加快模型训练速度,噪声少,收敛快
坏处:没有自我纠错的能力
解码过程预测错误的现象:exposure bias 解决方案:teacher forcing与non-teacher forcing结合
先用teacher forcing训练前几个epoch(或几个batch),然后non-teacher forcing训练后几个epoch,模型会具备一定的纠错能力。

How to decode

a r g m a x P θ ( Y ∣ X ) = a r g m a x ∏ i = 1 n P θ ( y i ∣ y 1 . . . y i − 1 , X ) argmaxP_\theta(Y|X)=argmax\prod_{i=1}^{n}P_\theta(y_i|y_1...y_{i-1},X) argmaxPθ(YX)=argmaxi=1nPθ(yiy1...yi1,X)
解码过程:维特比算法不行
启发式解码:
Greedy Decode:在当前位置只选择最优的输出
问题:在每个位置都是唯一的预测,不可能对前面的错误进行修改
Beam Search:在每个位置留出k个(score最大)可能的候选,一定程度上解决上面的问题
s c o r e ( y 1 , . . . , y t ) = ∑ i = 1 t l o g P l m ( y t ∣ y 1 . . . y t − 1 , x ) score(y_1,...,y_t)=\sum_{i=1}^tlogP_{lm}(y_t|y_1...y_{t-1},x) score(y1,...,yt)=i=1tlogPlm(yty1...yt1,x)
因为在beam search中的每一个score都是负数,越长的序列加起来越小,所以beam search更倾向于生成短句子
维特比算法和Beam search的区别:
维特比算法在生成当前位置的输出时依赖前面一个(或有限个)的输出,而beam search是依赖所有前面位置的输出

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

石头猿rock

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值