束搜索(与贪心、穷举对比)

一、贪心搜索

1、基于贪心搜索从Y中找到具有最高条件概率的词元,但贪心可能不是最优解

2、比如

(1)贪心:.5*.4*.2*.1=.0024

(2)另外:.5*.3*.6*.6=.0054

二、穷举搜索

(1)穷举地列举所有可能的输出序列及其条件概率, 然后计算输出条件概率最高的一个。

(2)计算上不可行

三、束搜索

1、束搜索是贪心搜索的一个改进版本,有一个超参数,名为束宽K

2、时间复杂度O(knT)

3、每个候选的最终分数(L是最终候选序列的长度, α通常设置为0.75。)

4、举例步骤(其中有一个是“<eos>”):

(1)在时间步1,我们选择具有最高条件概率的k个词元;在每个时刻,对每个候选新加一项(n个可能),在kn中选出最好的k个。

(2)在时间步1,假设具有最高条件概率 P(y1∣c)的词元是A和C。

(3)在时间步2,我们计算所有y2∈Y为:P(A,y2∣c) = P(A∣c)*P(y2∣A,c);P(C,y2∣c)=P(C∣c)*

P(y2∣C,c)从这十个值中选择最大的两个, 比如P(A,B∣c)和P(C,E∣c)。 

(4)在时间步3,我们计算所有y3∈Y为:P(A,B,y3∣c)=P(A,B∣c)*P(y3∣A,B,c);

P(C,E,y3∣c)=P(C,E∣c)*P(y3∣C,E,c),从这十个值中选择最大的两个, 即P(A,B,D∣c)和P(C,E,D∣c)。

(5)得到六个候选输出序列: (1)A;(2)C;(3)A,B;(4)C,E;(5)A,B,D;(6)C,E,D。

(6)基于这六个序列, 我们获得最终候选输出序列集合

(7)选择其中条件概率乘积最高的序列作为输出序列

四、总结

1、序列搜索策略包括贪心搜索、穷举搜索和束搜索。

2、贪心搜索所选取序列的计算量最小,但精度相对较低。

3、穷举搜索所选取序列的精度最高,但计算量最大。

4、束搜索通过灵活选择束宽,在正确率和计算代价之间进行权衡。

  • 8
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值