【问题标题】:Converting an English Statement into a Questi0n将英语语句转换为问题
【发布时间】:2013-10-02 20:10:46
【问题描述】:

(为标题道歉。堆栈溢出不允许标题中出现“问题”一词。)

如何编写一种算法将英语语句转换为问题?甚至从哪里开始?例如:

煎蛋的成分是鸡蛋、培根、奶酪和洋葱”会变成“煎蛋的成分是什么?”或“煎蛋的成分是什么?"

我可以想象将一个句子解析成它的组成部分,然后在添加和删除单词的同时重新排列它们以形成一个语法正确的句子,但我不知道从哪里开始。我知道这绝不是一项微不足道的任务,而且我认为目前最有帮助的事情是指向文学或类似问题的指针。

【问题讨论】:

  • 本可以写出“将英语祈使句转换为疑问句”。
  • @DonReba 必须与权力作斗争,伙计。
  • 似乎是 Watson Jeopardy 项目,en.wikipedia.org/wiki/…
  • @DonReba 那么我不会从谷歌上找到这个(我从来没有在我的搜索查询中使用过祈使词和疑问词)

标签: algorithm nlp artificial-intelligence


【解决方案1】:

查看ACL Anthology,了解使用基于模板的方法生成问题的论文。

以下是一些开始:

波波维奇、大卫·林德伯格·弗雷德和约翰·内斯比特·菲尔·温恩。 “生成自然语言问题以支持在线学习。” https://aclweb.org/anthology/W/W13/W13-2114.pdf

Rokhlenko、Oleg 和 Idan Szpektor。 “为新闻文章生成综合可比问题。” http://aclweb.org/anthology/P/P13/P13-1073.pdf

赵世奇等。 “从查询中自动生成问题以进行基于社区的问答。” IJCNLP。 2011 年。 https://aclweb.org/anthology/I/I11/I11-1104.pdf

【讨论】:

  • 我在 5 年前作为本科生问过这个问题。 5 年后,我正在使用您引用的第二篇论文作为研究生院工作的引文。这很酷。
【解决方案2】:

如果您不想从头开始,请查看斯坦福的 lex 解析器。 http://nlp.stanford.edu/software/lex-parser.shtml 这是一个非常棒的工具。

我会解析文本并找出句子的语法结构。完成后,您只需为特定的词性找到一个问题。

您还可以在http://nlp.stanford.edu/publications.shtml 阅读大量出版物 祝您搜索顺利。

【讨论】:

    【解决方案3】:

    这是一个有趣的问题。就在我的脑海中:你需要构建一个数据库来保存按它们是什么分类的词,例如介词、“链接词”(或者它们被称为的任何东西,等等......

    将句子中的单词排列在一个数组(列表)中并循环遍历每个单词。当某个单词出现在某个类别中时,请执行某些操作。

    例如: “The”可能会告诉你下一个词是主语。

    “ingredients”是主语,但有一个“s”,所以期待多个东西, 寻找下一个象征(链接)的词,如“是”

    “of”告诉你下一个词是上面链接的主题,

    “are”告诉你接下来是一个列表,将它们存储在一个单独的表中,但将它们链接到主题。

    介词和陈述=把它们去掉,因为它们不需要。

    将所有内容分成不同的列表后,只需构建您的简单问题即可。如果您知道答案有多个以“什么是”开头的答案,则添加元素的主题。

    类似的基本内容。但我非常确定,您将不得不弄清楚句子中每个单词的含义,以便您可以了解如何对它们进行分类并存储它们一些如何提出问题。

    希望能给你指明方向。

    【讨论】:

      猜你喜欢
      • 2021-12-25
      • 2015-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多