存在するかもしれないし存在しないかもしれない何かを探しています。Windowsプラットフォーム(特に.NETやC#など)で利用できる「英文法ルールエンジン」のようなものはありますか?
具体的には、「未来形」の文を「過去形」に変更できるものを探しています(英語の文法規則に基づく) ...次のようになります。
ウィジェットソフトウェアに取り組み、リカルドと会う
これに:
ウィジェットソフトウェアに取り組み、リカルドと会った
すでにそれを行っているルールエンジンはありますか?
存在するかもしれないし存在しないかもしれない何かを探しています。Windowsプラットフォーム(特に.NETやC#など)で利用できる「英文法ルールエンジン」のようなものはありますか?
具体的には、「未来形」の文を「過去形」に変更できるものを探しています(英語の文法規則に基づく) ...次のようになります。
ウィジェットソフトウェアに取り組み、リカルドと会う
これに:
ウィジェットソフトウェアに取り組み、リカルドと会った
すでにそれを行っているルールエンジンはありますか?
この男と話してください。彼はあなたのためにいくつかのアイデアを持っているかもしれません。一般に、英語はこの種のことにはあいまいすぎます。例えば:
紙を半分に切る。
これは命令命令ですか、それとも過去形の文の断片ですか? そして私の個人的なお気に入り:
時間は矢のように過ぎ去ります。果物はバナナのように飛ぶ。
誰でもそれを解析できますが、それは大量の意味知識があるからにすぎません。
そうは言っても、 SharpNLPのように、検討する価値のあることがいくつかあります。
他の人が述べているように、これは非常に難しい問題であり、一般的なケースでは解決されていません。ただし、かなりうまく機能するシステムがいくつかあります。プリンストンのWordNetはその1つです。品詞や類義語など(時制を含む)をある程度正確に識別できます。特定の活用形で単語の語根を見つけるように見えるこれらの関数に興味があるかもしれません。また、語根で特定の活用形を見つけることができるかもしれません(ただし、そのページには例がないので、私はできます」ドキュメントを正しく解釈していることを確認してください)。
これをチェックしてください、それはGrammaticaと呼ばれています。正確にはあなたが求めているものではないかもしれませんが、C# で英語の文法規則を解析するための良いスタートであることは間違いありません。
簡単に言うとノーです。一般的な NLP 解析エンジンは存在しません。
長い答えは「ちょっと」ですが、一般的なケースでは、それが非常に難しい問題であることを示す 50 年の研究があります。特定の時制変換を行っている人がいるかもしれません。いずれにしても、C# にはおそらくないでしょう。