文法チェッカー

ほとんどのテキスト編集システムには、スペルミスを自動的にチェックするツールがあります(1つまたは複数の文字の単語のスペルが間違っている場合、英語のスペラー )。 アクションの原則:プログラムはテキスト内のすべての単語を分析し、すべての単語とそのさまざまな形式のデータベースで同じ単語を検索します。



このようなテキストの検証により、テキスト内の単語のスペルが(辞書のように)確実になりますが、文の一致エラーや構文エラーから保護されません。 たとえば、「私は面白い雑誌を読んでいます」という文は間違っていますが、テキスト編集システムは正しいオプション「私は面白い雑誌を読んでいます」を表示しません。

文の文法エラーをチェックするプログラムは、そのようなエラーを回避するのに役立ちます(英語- 文法チェッカー )。



多くのスペルチェックプログラムが作成されました。 しかし、これまでのところ(私が知る限り)、文の文法エラーをチェックするプログラムはありません(語形変化語/語形変化語-単語には多くの形式があります)。 つまり、スペルチェックだけでなく、エラーと構文の一致もチェックします。 したがって、これを行うプログラムを紹介したいと思います(判明した限り)。



画像



2003年から2007年に、私は(リトアニア語で)できるだけ早くテキストを分析し、スペルミスだけでなく、文章の文法やコミュニケーションエラーも修正するプログラム(3つのバージョン)を作成しました。

2011年1月、Wikipediaを介してhabrahabr.ruにダイヤルし、次にrg_softwareユーザーの記事「NLPに関する注意事項」および「NLP:スペルチェック- 内観 」と「ルールのパターンを作成する方法」というフレーズに会います。主題と同じ種類?」彼の作品について書く価値があると思いました-おそらくそれは専門家にとって興味深く、無関心ではないでしょう。

それから私は1ヶ月半でプログラムのロシア語版を作りました。



このプログラムは、プログラミング言語のパーサーの原理に基づいて動作します。文中の一致する単語のすべての可能なバリエーションを記述する、大きな「ユニバーサルテンプレート/文パターン」が使用されます。 可能なすべての提供オプション。

パーサーは、人間の言語に合わせて若干変更されています(詳細については、pdfの説明を参照してください)。 さらに、プログラムがより成功した(彼女の意見では)入力文のバージョンを提供するには、このために、入力文の各単語のすべての形式を考慮する必要があります。 たとえば、「このコンピュータープログラムはプレーンテキストを認識します」という文では、オプションの13.934.592の組み合わせ(24 * 24 * 12 * 7 * 24 * 12)を考慮する必要があります。 これを完了するには約5秒かかります。



画像



文法の修正に加えて、プログラムは以下を行います。

*文ツリーのすべてのレベルで単語とフレーズの多変量をサポートします。

*選択された(修正された)バージョンの文またはその認識された部分のツリーをグラフィカルに表示します。 ユニバーサルセンテンステンプレートの「ツリー」、入力センテンスの「単語」およびそれらの変形も表示されます。

**修正されたプロポーザルの構造とユニバーサルプロポーザルテンプレートのグラフィカル表示のウィンドウでは、次のことができます。ビューを移動する、空のビューを左クリックまたは右クリックする

場所(要素の選択を解除)、要素ごと(左-要素を開く/折りたたむ(「-EXP-」リンク)、右-選択する)、または部分(マウスの左ボタンのみ-「-AND-」リンク(水平)でおよび「-OR-」(垂直)-それらを開く/折りたたみます)。



さまざまな言語のこのプログラムのページへのリンク(クイックリファレンス)です。

ロシア語: sites.google.com/site/sergprogrammer/main/main_ru/grammar_ru

英語: sites.google.com/site/sergprogrammer/main/main_en/grammar_en

現時点では、リトアニア語の「剥ぎ取られた」バージョンのプログラムをダウンロードできます。このバージョンでは、すべての木/グラフの要素のグラフィック表示が無効になり、一部の機能が無効になります。



プログラムの最新バージョン(ロシア語およびロシア語での作業用)は、プロジェクト「multigrammar」のWebサイトのsourceforge.net/projects/grammar-multi/filesにあります。

「すべての仕組み」という大きなPDFまたはドキュメントの説明をダウンロードすることもできます。

未登録ユーザーからの質問に答えることができるフォーラムもあります。



「ロシア語」バージョンのプログラムのインターフェースは、messages.txtファイル、dic.txtファイルの辞書(顕微鏡)、rules.txtファイルのユニバーサルセンテンステンプレートで変更されます。



私はまだ英語版を作成しようとしています。 結果のバージョンは、もはや使用するためではなく、動作の原理を示すためのものです。



2011年11月15日更新:英語版の文法のスクリーンショットをここに追加することにしました:



画像



画像



画像



後者では、ちなみに、「ユニバーサルオファーテンプレート」ファイルrules.txtのバージョンに応じたプログラムのプレゼンテーションの解析された文の構造



All Articles