这个问题是学习和理解某一特定技术是否存在。以下是情况。
我们将提供200个英语单词。软件可以增加40字,相当于200字的20%。现在,使用这些,软件应该写对话框,有意义的对话,没有语法错误。
为此,我研究了Spintax和Article Spinning。但你知道他们做什么,拿现有的文章重写它。但这不是最好的方法(是吗?)如果是的话请告诉我)。那么,是否有任何技术能够做到这一点呢?可能是谷歌使用的语义理论?有证明的人工智能方法吗?
请帮帮忙。
发布于 2013-12-06 15:53:36
首先,警告一下:这是自然语言生成(NLG)研究的前沿,最先进的研究出版物几乎不足以取代人类教师。对于英语作为第二语言(ESL)的学生来说,这个问题尤其复杂,因为他们倾向于用母语思考,然后才能将知识翻译成英语。如果我们忽视这一可怕的前奏,正常的做法是:
非联络组由三个主要组成部分组成:
内容计划:这个阶段将高层通信目标分解为结构化的原子目标。这些原子目标很小,只需一步交流就可以达到(例如,在一个子句中)。
句子规划:这里,实际的lexemes (即具有明确语义的单词或词部分)被选择作为原子交流目标的一部分。词汇通过谓词-自变量结构连接起来。句子规划阶段也决定句子的边界。学生是否应该写:“我去了,但她已经走了。”或者“我去看她了她已经走了”。注意不同的句子边界和不同的词汇,但这两个答案都表示相同的意思。)
曲面实现:句子规划步骤中的半形结构通过结合function words (行列式、助词等)而转化成适当的形式。还有拐弯。
在您的特定场景中,大多数单词都已经提供了,因此选择词汇比较简单。连接词的谓词-自变量结构需要使用一个合适的概率学习模型(如hidden Markov models)来学习。语法规则与statistical language models的结合,才能保证语法结构的最终正确。
在高层次上,请注意内容规划是语言不可知论的(但很可能是与文化有关的),而最后两个阶段是依赖于语言的。
最后,我想补充一点,选择这40个额外的词是我所掩盖的,但它与这一进程的其他部分同样重要。在我看来,这些额外的词应该根据它们与200个给定单词的合成关系来选择。
关于进一步的细节,以下两篇论文提供了一个良好的开端(包括流程体系结构、示例等):
为了更好地理解合成关系的概念,我发现Sahlgren's article on distributional hypothesis非常有用。他的工作中的分布方法也可以用来学习我前面提到的谓词-参数结构。
最后,添加一些可用的工具:看看this ACL list of NLG systems。我没有使用过它们,但是我听说过关于SPUD和OpenCCG的一些好东西。
https://stackoverflow.com/questions/20419028
复制相似问题