EmilStenstrom/conllu
A CoNLL-U parser that takes a CoNLL-U formatted string and turns it into a nested python dictionary.
何を解決するか
CoNLL-U Parser は、自然言語処理(NLP)タスクの出力としてよく使われる CoNLL-U 形式の文字列を処理する軽量な Python ライブラリです。このライブラリは、これらの形式化された文字列を、プログラム的に操作しやすい構造化された Python データ型(辞書とリスト)に変換します。
動作方法
このライブラリは、主に以下の2つのパースメソッドを提供しています:
parse(): CoNLL-U データを、各文が順序付き辞書として表されたTokenListを含むフラットな文のリストに変換します。parse_tree(): データをネストされたTokenTree構造に変換し、CoNLL-U ファイルのhead列に基づいて文の依存関係木を表現します。
大規模なファイルに対しては、parse_incr および parse_tree_incr というインクリメンタルパースメソッドを提供しており、データ全体をメモリに読み込む必要がありません。
対象ユーザー
CoNLL-U 形式の NLP データセットを扱う開発者や研究者で、データのパース、フィルタリング、変更、そして再び CoNLL-U 形式へのシリアル化が必要な方々です。
特徴
- 依存関係なし: ライブラリは約300行のコードで構成されており、外部依存関係が一切ありません。
- 柔軟なパース: カスタムフィールド名、カスタムフィールドパーサー、カスタムメタデータパーサーをサポートし、非標準的な CoNLL-U 形式に対応できます。
TokenListのユーティリティ: ラムダベースのフィルタリングを含む組み込みフィルタリング機能と、データをテキストに戻すシリアル化機能を備えています。- 依存関係木のサポート: フラットなトークンリストを階層的な依存関係木に変換でき、走査が容易になります。
- 強力なテスト: 100%のテストブランチカバレッジとミューテーションテストを実装しています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト