2

我目前面临的问题如下。我有一组单词,如果可能的话,我想从中构造一个语法正确的短语/句子。到目前为止,我尝试过的是:

  • 从参考文本语料库中计算每个单词在句子中的平均位置;
  • 使用它,对集合中的单词进行排序,并用空格分隔。

这种方法的问题在于,大多数时候它会产生毫无意义的奇怪短语。有没有办法做到这一点,也许使用技术(假设我只使用英语)?

4

3 回答 3

1

您可以使用 ngram 模型生成文本。也许这是有帮助的:http ://www.uspleste.usp.br/ivandre/papers/improvedTextGenNgramStat.pdf

一种常见的方法是从语料库中获取所有 3 克,然后使用概率生成文本。

于 2013-08-29T09:19:14.327 回答
0

如果你只有词袋,我认为你需要

  1. 查找每个单词的所有可能标签
  2. 以语法/句法有效的方式组合它们

但是,这并不一定会给您带来有意义的句子。它们可能会很奇怪,但如果你的词袋非常有限,可能不会,因为它似乎是这样。

如果您有语料库(我第一次阅读您的问题时错过了该语料库),那么您应该将它与NLTK 的 generate() function 之类的东西一起使用,它使用 n-grams 来生成文本。

于 2013-08-28T20:05:42.823 回答
0

您可以查看以下马尔可夫链示例:http: //phpir.com/text-generation

于 2013-08-28T15:49:52.237 回答