1

私の質問を読むのをやめてくれてありがとう:) これは素晴らしい人々でいっぱいのとても素敵な場所です!

「言葉で文章を作る」について質問です。いいえいいえそれは英語の文法についてではありません:)

説明させてください、次のような言葉の袋がある場合

"person apple apple person person a eat person will apple eat hungry apple hungry"

そして、ある種の次の文を生成できます

"hungry person eat apple"

このトピックがどの分野に関連するかはわかりません。どこで答えを見つけようとすればよいでしょうか。私はグーグルを検索しようとしましたが、英語の文法のものしか見つかりませんでした:)

この問題でどのアルゴリズムが機能するかを教えてくれる人はいますか? または任意のプログラム

ありがとう

PS: これは割り当てではありません :) もしそうなら、私はソースコードを求めます! どの分野を探すべきかさえわかりません:)

4

2 に答える 2

3

今日最も成功している言語パーサーは統計に基づいており、これは (たとえば、Google 翻訳がどのように機能するか) です。あなたがすることは、意味的にマークアップされた大規模なコーパスを取得し、単語チャートを歩き始めることです。言語学的に有効な英語の文のセットは、生成文法 (古いアプローチ) よりも多くなりますが、コーパスが大きいと、実行可能な文のテンプレートが大量に得られます。ランダム ウォークから遺伝的アルゴリズムまで、あらゆるデータ トラバーサル手法を使用して、バッグから文章を作成できます。あなたが何をしているか教えてください!

開始するのに最適なリソースのセットは次のとおりです。スタンフォードの統計的自然言語処理とコーパスベースの計算言語学のリソース

以下の OP コメントへの回答: 文を生成するには、有効な文の抽象的な表現が必要です。簡単な例は、生成文法の SUBJECT VERB OBJECT です。また、SUBJECT VERB ADJECTIVE OBJECT も取得する場合があります。問題は、「空腹のリンゴを食べた」など、文法的に正しいナンセンスを入力できることです。統計分析が教えてくれるのは、「空腹のリンゴ」はほとんど目にすることのない組み合わせだということです。実際の英語 (あなたのコーパス) に現れる可能性は非常に低いので、意味を知らなくても可能な限り排除することができます。文。文法チェッカーを作成している場合は、その単語のペアに疑わしいものとして下線を引くことがあります。

文生成プログラムを作成しているので、そのプロセスを逆にする必要があります。単純な可能性の 1 つは、単語のランダムな組み合わせの大規模なセットを生成し、それらをデータベースに対してチェックして、単語チェーンがすべて一致するかどうかを確認することです。可能性の特定のしきい値 (80% など)。もう 1 つのオプションは、個々の単語チェーンを遺伝的アルゴリズムの遺伝子として扱うことです。数世代後には、「空腹のリンゴ」のようなチェーンは消滅し、「赤いリンゴ」のようなより成功した遺伝子が優先されます。あなたが言及したような小さな「単語バッグ」を使用すると、そのような空想を得る必要はありません。おそらく、numwords < n ですべての可能な文を問題なくテストできます。単語バッグが大きすぎて徹底的に計算できない場合にのみ、文章検索アルゴリズムを工夫する必要があります。

上記のリンクには、ダウンロードして使用できるいくつかのマークアップされたコーパスと、独自のコーパスをマークアップするためのサンプル プログラムが多数あります。しかし、これがただの怠惰な好奇心のプロジェクトである場合は、シンプルに保ちたいと思うでしょう. 別の提案をさせてください。利用可能な最大のコーパスの 1 つは、Google の Web インデックスです。Google 検索で引用符で囲んだ文やフレーズは、多数のヒットを返します。たとえば、「red apple」は 100 万件以上のヒットを返しますが、「hungry apple」はわずか 11,000 件を返します。これを使用して、小さな単語バッグを使用して、文の有効性に関する小さな統計マークアップを作成できます。統計プロセスが複雑すぎて実装できない場合は、代わりに、単語バッグを品詞でマークアップし (品詞マークアップを調査します)、プログラムにさまざまな抽象的な文のテンプレートを提供することを考えてみてください。必要に応じて、それで十分な場合があります。:)

PS単語バッグに「an」という単語がないと、ターザン文法と人食いリンゴの世界に限られているように見えます:)

于 2010-03-05T02:55:06.187 に答える
-1

Generative Grammarsについて考えているかもしれませんが、よくわかりません。

于 2010-03-04T03:26:54.087 に答える