2009-11-03 5 views
5

ランダムで現実的なテキストを生成するツールを探しています。私は自分でMarkov Chainテキストジェネレータを実装しましたが、結果が有望な間に、それらを改善しようとすると大きな成果は得られませんでした。ランダムで現実的なテキストを生成するためのライブラリやツール

私は、コーパスを使用するツールや文脈依存文脈や文脈自由文法に基づいて動作するツールに満足しています。私はこのツールを別のプロジェクトに組み込むのに適していると思います。 私の最近の仕事のほとんどはJavaで書かれているので、その言語のツールが好まれますが、C#、C、C++、またはJavaScriptでもOKです。

これはquestionと似ていますが、範囲が広いです。

+0

- 元のテキストへの類似性のためのあなたのパラメータは何ですか:

私は、このツールを使用してからテキストを抽出してきましたか?単語の長さ?文字の確率?文章の長さ?文字や言葉で?おそらく、あなたの要求にもっと具体的になったら、何かを見つけることができます。 –

答えて

6

"ランダムな"テキストが必要な場合は、独自のマルコフチェーンジェネレータを拡張することがおそらく最適です。コンテキストを持ったものを生成することは、オープンな研究課題です。

てみてください(あなたがいない場合):

  • 別途句読点をTokenising、または既にいないのであれば、あなたのチェーンに句読点が含まれます。これには段落記号も含まれます。
  • 2回または3回の履歴マルコフチェーンを使用している場合は、完全停止または改行に遭遇したときに履歴1つを使用するようにリセットしてみてください。

また、あなたはあなたのコーパスとの2回のパスでWordNetを使用することができます。

  1. 文章を分析ワードタイプ、すなわち名詞、動詞、形容詞、副詞の共通シーケンスを決定します。 WordNetにはこれらが含まれています。他のすべてのもの(代名詞、結合詞、その他)は除外されますが、基本的にそれらをそのまま通過させることができます。 これは、 "怠惰な犬の上を急いで茶色のキツネが" [形容詞] [名詞] [形容詞] [形容詞]に変わるだろう。
  2. ランダムに選択して文章を再現する実際の形容詞名詞や動詞に[形容词]、[名詞]、[動詞]を置き換えます。

このアプローチにはかなりの問題があります。たとえば、選択する同音異義語を知るために周囲の単語からのコンテキストが必要です。 wordnetで "クイック"を検索すると、速くなることについての情報が得られますが、手のひらの部分も速くなります。


これはライブラリやツールの要件を解決するものではありませんが、いくつかのアイデアを与えるかもしれません。

+0

私は最近、この1つと同様の解決策 –

0

と同様のものthis Lorem ipsum generator?いくつかのAPIへのリンクもあります。

+0

非常に似ていますが、私はテキストのコーパスを消費し、ランダムであるが類似したテキストを生成できるものを探しています。私はお詫び申し上げます、私は質問でより明確にすべきでした。 –

関連する問題