nlp - 否定句子的算法

标签 nlp text-processing linguistics negation

我想知道是否有人熟悉算法句子否定的任何尝试。

例如,给定“这本书很好”这样的句子,请提供任意数量的意思相反的替代句子,例如“这本书不好”甚至“这本书不好”。

显然,以高精度实现这一目标可能超出了当前 NLP 的范围,但我确信在这个主题上已经有了一些工作。如果有人知道任何工作,愿意给我指出一些论文吗?

最佳答案

虽然我不知道有任何专门研究自动生成否定句的工作,但我想一个好的起点是阅读 formal semantics 中的语言学工作。和 pragmatics 。一个很好理解的介绍是 Steven C. Levinson's Pragmatics书。

我认为您会遇到的一个问题是,否定句子所传达的所有信息可能非常困难。例如,取:

John fixed the vase that he broke.

即使您将其更改为约翰没有修理他打碎的花瓶,也会有一个 presupposition有一个花瓶,约翰打破了它。

同样,简单地否定句子约翰没有停止使用毒品,因为约翰停止使用毒品仍然表达了约翰曾经使用过毒品。更彻底的否定是约翰从未使用过毒品

您可能想要查看的一些现有自然语言处理 (NLP) 工作是 MacCartney 和 Manning 2007 年的 Natural Logic for Textual Inference 。在本文中,他们使用 George Lakoff 的自然逻辑概念和 Sanchez Valencia 的单调性演算来创建软件,可以自动确定一个句子是否包含另一个句子。您可能可以使用他们的一些技术来检测非蕴涵,从而人为地构建否定和矛盾的句子。

关于nlp - 否定句子的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2633353/

相关文章:

python - 使用 NLTK 创建新语料库

java - 是否有适用于 Java 的具有部分功能的现代自然语言日期解析器?

linguistics - 是否有在线应用程序可以自动为短语/句子绘制树形结构?

ruby - 如何将单词转换为它们的等效数字?

python-3.x - 在必要的预处理后,如何使用 nltk 文本分析库预测特定文本或文本组

python-3.x - 如何解决 "logits and labels must have the same first dimension"错误

unique - 查找两个文件之间的唯一行

java - 在replaceAll()方法中调用replace替换字符串

powershell - 如何使用不区分大小写的匹配替换 PowerShell 中的字符串,同时保留输入大小写

nlp - 在哪里可以找到英语短语列表?