Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 以编程方式从一系列名词组成一个句子_Algorithm_Nlp_Information Retrieval_Linguistics - Fatal编程技术网

Algorithm 以编程方式从一系列名词组成一个句子

Algorithm 以编程方式从一系列名词组成一个句子,algorithm,nlp,information-retrieval,linguistics,Algorithm,Nlp,Information Retrieval,Linguistics,我有一个要求,即给我一组名词,我必须通过编程从这些名词中表达(形成)一个句子。 例如- 假设给我一组名词,比如- {“巧克力”、“糖果”、“糖”、“牛奶”},我必须以编程的方式表达一句话,如-“这是一种巧克力糖果由糖和牛奶制成” 句子可以是任何东西,但它应该包含给定的名词,并且应该是有意义的。 我试着研究本体论,看看它是否有帮助。我查看了WordNet以获得关于每个名词的更多信息,并尝试用短语表达句子。我没有其他更好的方法来这样做。我是NLP的新手,正在努力学习。 如何通过编程实现这类功能?

我有一个要求,即给我一组名词,我必须通过编程从这些名词中表达(形成)一个句子。

例如-
假设给我一组名词,比如- {“巧克力”、“糖果”、“糖”、“牛奶”}
我必须以编程的方式表达一句话,如-
“这是一种巧克力糖果糖和牛奶制成”

句子可以是任何东西,但它应该包含给定的名词,并且应该是有意义的。

我试着研究本体论,看看它是否有帮助。我查看了WordNet以获得关于每个名词的更多信息,并尝试用短语表达句子。我没有其他更好的方法来这样做。我是NLP的新手,正在努力学习。

如何通过编程实现这类功能?
有什么算法我可以使用吗?
请建议。

非常感谢。

语义关联和概念网似乎是一个很好的起点。可在此处找到ConceptNet的链接()

ConceptNet是一个多语言知识库,表示人们使用的单词和短语以及它们之间的常识关系

它基本上是一个图形结构,每个节点表示一个实体(在我们的例子中是名词),节点之间的边表示关系

这是在ConceptNet中获取巧克力图形的API-

根据这一点,我们可以组成如下句子:
“巧克力是一种糖果,是由牛奶固体、糖和香草制成的糖果”

你需要一个有意义的完整句子,还是一个语法上有效的句子?我想你还需要一系列的文章(a、an、the)、动词、副词、形容词和介词短语。基本的句子结构是[Art adj名词动词adv pp],例如,一只绿狗沿着街道慢慢跑。一旦你有了所有这些单词的列表,你就可以从每个列表中随机挑选一个单词来构建一个句子。如果你必须使用多个名词,那么你可以有一个主语名词和多个介词短语。@Elyashiv-这应该是一个有意义的句子。我们可以采取循序渐进的方法,第一步是语法正确。第二步是在第一步的基础上,得到一个有意义的句子。@josephjames-不幸的是,我只有一个名词列表,没有别的。就像我们试图从句子中提取实体一样,我们必须颠倒从实体构建句子的过程。但这对于选择一个主语名词和多个介词短语来说是一个很好的输入。语义关联和概念网似乎是一个很好的起点。有什么想法吗?