我的英文句子。现在我想把这些单词混淆起来并将这组单词输入到一个程序中,该程序应根据英语语法的正常规则解读单词以输出原始句子。我可以模糊地假设它需要自然语言生成算法。
例如:
一句话:玛丽和她的狗一起散步 一组单词:{has,for,a,with,her,dog,Mary,gone,walk}
输出应该是同一个句子。
我可以假设只有一组单词永远不足以生成原始句子。但是还需要包含哪些信息才能恢复原来的句子? 请指导我应该从哪里开始。
答案 0 :(得分:3)
Language models是可以接受文本或句子(任何单词序列)的东西,并根据模型“识别”该文本的程度为其分配概率。
要解决您的问题,您可以使用语言模型并使用它来计算您可以对输入单词进行每种可能排列的概率。符合模型的最可能的句子可能是最连贯的句子。
对于像你这样的情况,尝试一个n-gram模型(对于n> 2 ..我认为2或3应该可以做到这一点)或者利用部分语音标签的隐马尔可夫模型应该可以做到这一点。
答案 1 :(得分:0)
如果没有其他信息,您将无法解决问题。举个例子:
{"happy", "you" "are"}
你可以重建句子吗?是“你快乐”还是“你快乐”吗?请注意,单词是相同的,但含义会发生根本变化。无论你编写多么好的算法,如果你不能,它将无法重建句子。
答案 2 :(得分:0)
您需要做以下事情才能开始: -
- 维护一个分类为名词,形容词,动词等英语单词的词典。
- 构建英语语法规则,您可以从任何英语教程中获取。
- 尝试重新排列单词以匹配语法规则。
醇>
注意: - 英语是非常模糊的语言,所以你可能会以其他方式结束。
例如。
语法规则:文章名词动词
输入词:狗,吠声,
字典查找:dog =>名词,barks =>动词,=>制品
根据规则重新排列单词。
可以有多种规则,单词也可以是多种类型 尝试所有可能性。