Beam Search vs. Greedy Decoding vs. Breadth First Search

Beam Search vs. Greedy Decoding vs. Breadth First Search

在文本生成問題的解碼階段,定義句子長度爲T,詞匯總個數爲n, 每步需要計算的概率排名的詞匯的數量爲k(top k).可以將解碼方式分爲三種(計算當前步的詞匯的概率值需要考
慮到之前一步的詞匯的概率):

  • greedy decoding:每步只選擇概率最高的詞匯作爲下一步的輸入,並且不考慮上一步之前的概率值,O(nT)

  • beam search: (剪枝版viterbi decoding)每步選擇top k個詞匯作爲下一步的輸入(1<k<n),O(knT)

  • Breadth First Search: (暴力搜索) 每步選擇所有的詞匯作爲下一步的輸入(k =
    n),並且在每一步都要將之前每一步的概率值計算在內,O(n^T)

所以greedy decoding 和beam search 是多項式時間算法,而viterbi decoding是非多項式時間算法。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值