一、Greedy search 二、Beam Search beam search的优化 2.Coverage Normalization 3.EOS(End of sentence) token normalization 三、topK采样 四、TopP采样 一、Greedy search 直接选择分布中概率最大的token当作解码出来的词,但是该问题在于,总是选择概率最大的词,将会生成很多重复的句子(get stuck in loops)。 nex...
从零实现基于Transformer的语音识别(ASR)模型 中,我们从零开始实现了一个基于Transformer模型的语音识别模型。在本文中,我们介绍序列解码中的束搜索 (beam search) 技巧,详细拆解束搜索的每一步细节和每一步代码实现,并应用到语音识别的例子中。 相关前置知识:Python、PyTorch、Transformer基础、语音识别基础。 本文共约...
BEAM SEARCH(定向搜索解码器)在贪婪解码器中,我们在每一步都考虑一个字。如果我们可以在每一步跟踪多个单词并使用它们来生成多个假设会怎样呢?这正是定向搜索算法所做的,我们定义了每一步需要保留多少个单词(k)。该算法跟踪k个单词及其得分,每个单词都是从之前得分最高的k个单词中获得种子。分数是由到目前为...
是的,使用Beam Search进行生成时,由于其先选取前几个最优解,因此输出的句子可能会出现类似的或相同的情况。为了使生成结果更多样化,可以引入一些技术。1. 集束搜索宽度(beam width)的调整:增大集束搜索的宽度可以增加生成结果,增强输出多样性。但同时也增加了计算量的成本,因此需要平衡计算成本和多...
第一种方法是用随机采样(sampling)代替取概率最大的词。采样的依据就是解码器输出的词典中每个词的概率分布。相比于按概率“掐尖”,这样会增大所选词的范围,引入更多的随机性。当时那篇论文的结论就是这种随机采样的方法远好于Beam Search。但这其实也是有条件的,随机采样容易产生前后不一致的问题。而在开放闲聊领域...
关于beam search 之前组会中没讲清楚的 beam search,这里给一个案例来说明这种搜索算法。 在Image Caption的测试阶段,为了得到输出的语句,一般会选用两种搜索方式,一种是贪心采样的方法(sample),即:每个时刻都选择输出概率最大的那个单词,作为当前时刻的输出。
随机采样 第一种方法是用随机采样(sampling)代替取概率最大的词。采样的依据就是解码器输出的词典中每个词的概率分布。相比于按概率“掐尖”,这样会增大所选词的范围,引入更多的随机性。当时那篇论文的结论就是这种随机采样的方法远好于Beam Search。但这其实也是有条件的,随机采样容易产生前后不一致的问题。而在开...
Beam Search、GREEDY DECODER、SAMPLING DECODER等解码器工作原理可视化以及在自然语言生成领域的使用,图像标注的任务让我们可以构建和训练一个为任何给定图像生成字幕的神经网络。在设计时使用了解码器的来完成文字
BEAM SEARCH(定向搜索解码器) 在贪婪解码器中,我们在每一步都考虑一个字。如果我们可以在每一步跟踪多个单词并使用它们来生成多个假设会怎样呢? 这正是定向搜索算法所做的,我们定义了每一步需要保留多少个单词(k)。该算法跟踪k个单词及其得分,每个单词都是从之前得分最高的k个单词中获得种子。分数是由到目前为止...
BEAM SEARCH(定向搜索解码器) 在贪婪解码器中,我们在每一步都考虑一个字。如果我们可以在每一步跟踪多个单词并使用它们来生成多个假设会怎样呢? 这正是定向搜索算法所做的,我们定义了每一步需要保留多少个单词(k)。该算法跟踪k个单词及其得分,每个单词都是从之前得分最高的k个单词中获得种子。分数是由到目前为止...