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. 文法的/構文的に有効な方法でそれらを組み合わせる

ただし、これで必ずしも意味のある文が得られるとは限りません。あなたの言葉の袋が非常に制約されている場合はそうではないかもしれませんが、そうであるように思われます。

コーパスがある場合 (最初に質問を読んだときに見逃していました)、n-gram を使用してテキストを生成するNLTK の generate() function のようなものと一緒に使用する必要があります。

于 2013-08-28T20:05:42.823 に答える