在我的 NLP 项目中,我构建了自己的模型来识别 PDF 文档中的句子。现在我想检查我提取的句子是否是完整的句子。在我的研究过程中,我已经遇到了 this question ,其中提供的解决方案允许相当多的误报。有没有人可以告诉我如何检查一个句子是否是一个完整的句子?
最佳答案
这是一个非常重要的问题,因此没有一种方法适用于所有情况。您还应该考虑到,无论您使用什么解析器,都可能合并或拆分原始文档中的完整句子,但在解析后它们就不再是完整的句子了。
通常是纯基于规则的方法的替代方法:您可以使用在 CoLA (Corpus of Linguistic Acceptability) 任务上预训练的模型。这些模型试图将句子/文档分类为“语言可接受”和“语言 Not Acceptable ”的类别。
在 huggingface 的模型中心有几个预训练的转换器模型,例如这个推理 API 是 Facebook 的 RoBERTa 模型的微调版本:
不过,当涉及到要点/独立半句等时,您应该看看模型是如何训练的,因为有些分数乍一看可能会令人惊讶。
您可能希望将模型结果与基于规则的方法结合起来,例如:“如果分数为 0.95 或更高并且句子至少有 4 个词并且以 .
结尾,则该句子是可以接受的?
或 !
。”。您可以看到您的模型 + 基于规则的方法组合吐出了哪些句子,并不断修改规则,直到结果令您满意为止。
关于python - NLP:检查检测到的句子是否是完整的句子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71590785/