Beam search is a go-to strategy for decoding neural sequence models. The algorithm can naturally be viewed as a subset optimization problem, albeit one where the corresponding set function does not reflect interactions between candidates. Empirically, this leads to sets often exhibiting high overlap, e.g., strings may differ by only a single word. Yet in use-cases that call for multiple solutions, a diverse or representative set is often desired. To address this issue, we propose a reformulation of beam search, which we call determinantal beam search. Determinantal beam search has a natural relationship to determinantal point processes (DPPs), models over sets that inherently encode intra-set interactions. By posing iterations in beam search as a series of subdeterminant maximization problems, we can turn the algorithm into a diverse subset selection process. In a case study, we use the string subsequence kernel to explicitly encourage n-gram coverage in text generated from a sequence model. We observe that our algorithm offers competitive performance against other diverse set generation strategies in the context of language generation, while providing a more general approach to optimizing for diversity.
翻译:波束搜索是解码神经序列模型的首选策略。该算法自然可视为子集优化问题,但对应的集合函数未能反映候选解之间的交互作用。实验表明,这通常导致生成的集合存在高度重叠,例如多个字符串可能仅相差一个词。然而在需要多个解决方案的应用场景中,通常期望获得多样化或具有代表性的集合。为解决这一问题,我们提出波束搜索的重构形式——行列式波束搜索。行列式波束搜索与行列式点过程(DPPs)存在天然联系,后者是内嵌集合内部交互作用的集合模型。通过将波束搜索的迭代过程转化为一系列子行列式最大化问题,我们可将该算法转变为多样化子集选择过程。在案例研究中,我们采用字符串子序列核显式增强序列模型生成文本的n-gram覆盖率。实验表明,在语言生成场景下,本算法在与其他多样化集合生成策略的对比中展现出竞争性表现,同时提供了更通用的多样性优化方法。