gpt4 book ai didi

algorithm - 预测短语而不仅仅是下一个单词

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:30:35 30 4
gpt4 key购买 nike

对于我们构建的应用程序,我们使用简单的单词预测统计模型(如 Google Autocomplete)来指导搜索。

它使用从大量相关文本文档中收集的一系列 ngram。通过考虑前面的 N-1 个词,它使用 Katz back-off 按概率降序建议 5 个最有可能的“下一个词” .

我们想将其扩展到预测短语(多个单词)而不是单个单词。然而,当我们预测一个短语时,我们不希望显示它的前缀。

例如,考虑输入the cat

在这种情况下,我们想做出像the cat in the hat这样的预测,而不是the cat in & not the cat in the.

enter image description here

假设:

  • 我们无法访问过去的搜索统计信息

  • 我们没有标记的文本数据(例如,我们不知道词性)

进行此类多词预测的典型方法是什么?我们已经尝试对较长的短语进行乘法和加法加权,但我们的权重是任意的,并且对我们的测试过拟合。

最佳答案

对于这个问题,您需要定义您认为什么是有效的完成 - 然后应该可以想出一个解决方案。

在您给出的示例中,“the cat in the hat”比“the cat in the hat”要好得多。我可以将其解释为“它应该以名词结尾”或“它不应该以过于常见的词结尾”。

  1. 您已限制“标记文本数据”的使用,但您可以使用预训练模型(例如 NLTK、spacy、StanfordNLP)来猜测词性并尝试将预测限制为仅完成名词短语(或以名词结尾的序列)。请注意,您不一定需要标记输入模型的所有文档,而只需标记您保留在自动完成数据库中的那些短语。

  2. 或者,您可以避免以停用词(或高频词)结尾的补全。 “in”和“the”都是几乎所有英文文档中都会出现的词,所以你可以通过实验找到一个频率截止点(不能以出现在超过 50% 的文档中的词结尾)来帮助你过滤。您还可以查看短语——如果短语的结尾作为较短的短语更为常见,那么将其标记为没有意义,因为用户可能会自己想出它。

  3. 最终,您可以创建一组标记好的和坏的实例,并尝试创建一个基于单词特征的监督重新排序器——上述两种想法都可能是监督模型中的强大特征(文档频率 = 2 , 位置标记 = 1)。这通常是具有数据的搜索引擎可以做到的。请注意,为此您不需要搜索统计信息或用户,只需愿意为几百个查询标记前 5 个完成。建立一个正式的评估(可以以自动方式运行)可能会在将来尝试改进系统时有所帮助。任何时候您观察到一个错误的完成,您都可以将其添加到数据库中并做一些标签——随着时间的推移,监督方法会变得更好。

关于algorithm - 预测短语而不仅仅是下一个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42962349/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com