CONLL-Uファイルのインポート

CONLL-Uフォーマットは、Universal Dependencyフレームワークで定義された、言語共通の文法アノテーションを可能とするCONLL形式の拡張です。( https://universaldependencies.org/format.html )

ChaKi.NETではインポート・エクスポート形式として"CONLLU"を選択するとこの形式による読み込み・書き出しを行います。

CONLL-U形式の要点は以下の通りです。品詞フィールドの定義や MISCフィールドの使用法がCONLLと異なります。

  • Plain Textファイルである。
  • 文は1個の空行にて区切る。
  • 各行は文内のトークン(単語)に対応し、下記のタブ区切りカラムにより構成される。各カラムの値がない(不定値)の場合は、半角のアンダースコア("_")を入れる。
  1. ID: 文内のトークン番号で、1から開始される。
  2. FORM: 表層形(句読点等も含む)
  3. LEMMA: 基本形
  4. UPOS: 共通品詞タグ
  5. XPOS: 言語毎の品詞タグ
  6. FEATS: 付加的な形態属性。属性は制御文字および"|"以外の文字列で表される。複数の属性を持つ場合、"|"によって結合して一つの文字列とする。
  7. HEAD: 現トークンのHEAD(係り先)トークンのID。なければ0。
  8. DEPREL: 係りの種別(文字列)。
  9. DEPS: 使用しません。
  10. MISC:その他の属性情報。複数の属性を持つ場合、"|"によって結合して一つの文字列とする

ChaKi.NETのインポートでは、さらに https://github.com/megagonlabs/UD_Japanese-GSD の定義により、

  • XPOSはUniDicの短単位品詞とします("名詞-普通名詞-一般"など)
    UPOSとXPOSはさらにハイフン("-")で接続され、その結果が単語の品詞として使用されます("NOUN-名詞-普通名詞-一般"など)。 ハイフンで結合される要素数は最大5となりますので、デフォルトのMecabやMecab|Caboca形式で出力すると第5要素が落ちることになります。ご注意ください。
  • MISCフィールドの値として、
    • BunsetuPositionType, LUWBILabel, LUWPOS, SpaceAfterの各属性は、Bunsetsu SegmentのAttribute (※)として格納されます。 (CONLL/CONLLU/Git Annotation形式でエクスポートした場合に出力されます。)
      ※ 1単語1文節なので、実質的にWordに対するAttributeという位置づけでもあります。
    • UniDicLemma属性は、Lex要素のカスタム属性として格納されます。
  • 各文の開始前に存在する"# sent_id = <idstr>"形式のコメント行は、Sentence Attribute (@sent_id)として格納されます。

のようにデータベース内要素への格納が行われます。