7

ここの誰かが「死語」ラテン語を話す(または書く)ことができるかどうかはわかりません。しかし、多分あなたはこの言語を知らなくても私を助けることができます...

単語(名詞と動詞を含む)のデータベースがあります。ここで、これらの名詞と動詞のさまざまな(語形変化した)形をすべて生成したいと思います。これを行うための最良の戦略は何でしょうか?

ラテン語は非常に屈折した言語であるため、次のようなものがあります。

a)名詞の曲用

b)動詞の活用

動詞の活用(「マンダレ」)の例については、この翻訳されたページを参照してください:活用

すべての単語に対してこれらすべてのフォームを手動で入力したくありません。では、どうすればそれらを自動的に生成できますか?最善のアプローチは何ですか?

  • すべての単語を活用する方法の複雑なルールのリスト
  • ベイズ法
  • ..。

事前にどうもありがとうございました!

編集(可能な解決策?):

「WilliamWhitaker'sWords」というプログラムがあることを知りました。ラテン語の語尾変化も作成するので、私がやりたいことを正確に実行しています。

ウィキペディアによると、このプログラムは次のように機能します。「Wordsは、自然な前、中、接尾辞、曲用、活用に基づく一連のルールを使用して、エントリの可能性を判断します。構造を分析するこのアプローチの結果としてプログラムが特定の単語に可能な意味を見つけたとしても、これらの単語がラテン語の文学やスピーチで使用されたことは保証されません。」

プログラムのソースもここから入手できます。しかし、私はこれがどのように機能するのか本当に理解していません。手伝って頂けますか?多分これは私の質問の解決策になるでしょう...

4

4 に答える 4

5

hunspell 辞書形式と同様のことができます ( http://www.manpagez.com/man/4/hunspell/を参照) 。

2 つのテーブルを定義します。1 つは語根 (変更されない部分) を含み、もう 1 つは特定のクラスの変更を含みます。特定のクラスについて、語形変化 (または活用) ごとに、ルートの末尾 (または先頭) に追加する文字を示します。指定した数の文字を置き換えるように指定することもできます。さて、特定の語形変化で単語を取得するには、ルートを取得し、それが属するクラスから変換を適用します。

たとえば、mandare の場合、ルートは mand になり、クラスにはoasateamousatisなどの接尾辞が含まれます。

于 2011-04-07T19:09:44.400 に答える
3

おそらくこれが役立つでしょう

于 2011-04-01T14:33:34.967 に答える
2

名詞を例に挙げますが、動詞にも当てはまります。

まず、 と の 2 つのクラスを作成しRegularますIrregular。名詞についてはRegular、3 つの語用変化に対して 3 つのクラスを作成し、それらすべてに Declensable (または、単語は英語です :) インターフェイス ( FirstDeclension extends Regular implements Declensable) を実装します。インターフェイスは 2 つstatic enumの を定義します ( NOMINATIVEVOCATIVEなど、およびSINGULARPLURAL)。すべてには、ルートの文字列とサフィックスの静的ハッシュマップがあります。メソッドFirstDeclension#get (case, number)は、ハッシュマップに基づいて正しいサフィックスを追加します。

クラスは、Irregular各単語のローカル ハッシュマップを定義してから、同じ Declensable インターフェイスを実装する必要があります。

意味はありますか?

補遺:明確にするために、のコンストラクターclass Regular

public Regular (String stem) {
    this.stem = stem
}
于 2011-04-10T20:51:06.323 に答える
0

おそらく、実装で AOT の行に従うことができます。(LGPLの傘下です。)

AOT にはラテン語の形態論はなく、ロシア語、ドイツ語、英語だけです。もちろん、ロシア語はラテン語と同じくらい複雑な屈折形態学の例であるため、AOT はそれを実装するためのフレームワークとして準備ができている必要があります。

それでも、プログラミングに進む前に、すでに明確に定義されたモルフォロジーのための精巧で正確な形式システムが必要であると私は信じています。ロシア語に関して言えば、動作している形態学的コンピュータ システムのほとんどは、Andrey Zalizniak によって行われたロシア語形態学の真剣な分析と、ロシア語文法辞書および関連作品に基づいていると思います。

于 2011-04-11T08:18:39.403 に答える