このプロジェクトについて
HanLP(Han Language Processing)は、本番環境向けの多言語自然言語処理ツールキットであり、PyTorchとTensorFlow 2.xのデュアルエンジンを基盤としています。プロジェクトの目標は、最先端のNLP技術を普及・実用化することであり、機能の充実、精度の高さ、高性能、最新のコーパス、明確なアーキテクチャ、カスタマイズ可能などの特徴を備えています。
機能範囲:
- 分かち書き(粗分、細分)
- 品詞タグ付け(CTB、PKU、863などの基準)
- 固有表現認識(PKU、MSRA、OntoNotesなどの基準)
- 依存構文解析(SD、UD、PMT)
- 句構造解析(Chinese Tree Bank)
- 意味依存解析(CSDP)
- 意味役割付与(Chinese Proposition Bank)
- 抽象意味表現(CAMR)
- 照応解決
- 意味的テキスト類似度
- テキストスタイル変換
- キーワード・フレーズ抽出
- 抽出型および生成型自動要約
- テキスト文法誤り訂正
- テキスト分類と感情分析
- 言語検出
- 単語ベクトルと穴埋め問題
- 簡体字・繁体字変換、ピンイン、新語発見、テキストクラスタリング(1.xバージョンを参照)
多言語サポート:大規模な多言語コーパスを活用し、HanLP 2.1は、簡体字・繁体字中国語、英語、日本語、ロシア語、フランス語、ドイツ語を含む130言語において、10種類のジョイントタスクおよび複数のシングルタスクをサポートしています。
2種類のAPI形態:
1. 軽量RESTful API:サイズはわずか数KBで、アジャイル開発やモバイルアプリなどのシーンに適しており、GPU環境は不要で、インストールが迅速です。Python、Golang、Javaなどのクライアントを提供します。
2. 大規模native API:PyTorch、TensorFlowなどの深層学習技術に依存し、専門のNLPエンジニア、研究者、およびローカルの大規模データシーンに適しています。Python 3.6〜3.10が必要で、Windowsをサポートし、Unix系システムを推奨します。CPUで動作可能ですが、GPU/TPUを推奨します。
モデルタイプ:
- マルチタスクモデル:速度が速く、メモリ消費が少なく、一度の呼び出しで複数のタスクを完了できます。
- シングルタスクモデル:精度が高く、より柔軟で、パイプラインモードで組み立てることができます。
カスタマイズ機能:効率的なtrie木によるカスタム辞書をサポートし、強制、統合、校正の3つのルールを備えています。ルールの効果は後続の統計モデルにシームレスに適用でき、新しい分野に迅速に適応できます。
出力形式:どのAPI、開発言語、自然言語であっても、出力は統一してJSON形式であり、dict互換のDocumentオブジェクトとして、分かち書き、品詞、固有表現、意味役割、依存構文、意味依存、句構造などのフィールドを含みます。PythonのRESTful APIとnative APIは、等幅フォントに基づく可視化もサポートしており、コンソールで直接言語学構造を表示できます。
プロジェクトはまた、カスタムドメインモデルをトレーニングする手段を提供し、EMNLP論文の引用も付属しています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.