概要
ChemDataExtractor v2 は、科学文献から化学情報を抽出するためのツールキットです。文書を読み込み、化学分野に対応した自然言語処理でテキストを解析し、その後の利用に向けて化学情報を抽出する文献処理ワークフローをサポートします。これは情報抽出ツールキットであり、文献データベースや化学予測モデルではありません。
文書に記載されている入力形式は HTML、XML、PDF です。抽出コンポーネントには、化学固有表現認識、物性およびスペクトル向けのルールベース文法、表形式データのパーサーが含まれます。これらの機能は文章と表の両方を対象としており、論文から情報を復元する複数の方法をユーザーが評価できます。文書単位の処理は、抽出データ間の相互依存関係を解決するものとも説明されていますが、プロジェクトの README には解決ルールの説明や実例はありません。
想定される出力は、エンティティ、物性およびスペクトルデータ、表の内容など、抽出された化学情報です。出典の抜粋には、出力スキーマ、エクスポート形式、対応する物性カテゴリ、抽出精度の記載がありません。そのため、特定の文献コレクションへの適合性は、機能一覧だけから判断せず、代表的な文書を使い、結果を手動で確認して評価する必要があります。
README には pip によるインストール方法が示され、Python 3.9 から Python 3.11 までのサポートが記載されています。また、開発および貢献のガイダンスを掲載したドキュメントへのリンクもあります。パッケージメタデータには cde という名前のコマンドラインエントリポイントが宣言されていますが、抜粋には呼び出しオプションが記載されていません。setup.py の Python バージョンクラス分類子は README のサポートに関する記述と異なるため、テスト済み互換性の根拠として扱うべきではありません。
主な機能
- 科学文献の HTML、XML、PDF を読み込むドキュメントリーダー。
- 文書テキストを処理する、化学分野に対応した自然言語処理パイプライン。
- 化学固有表現認識。
- 物性およびスペクトルを抽出するためのルールベース解析文法。
- 表形式データを復元するための表解析。
- 抽出データ間の相互依存関係を解決する文書単位の処理。
用途
- 評価案:代表的な論文群から化学物質エンティティを抽出し、結果を手動でアノテーションしたテキストと比較する。
- 評価案:文書に記載されたルールベース解析機能を使い、文献中の記述から物性またはスペクトル情報を復元する。
- 評価案:科学論文の表からデータを抽出し、値とその文脈上の対応関係が保持されているかを確認する。
- 評価案:代表的な文書の HTML、XML、PDF 版からの抽出結果を比較したうえで、取り込みワークフローを選定する。
使い方
- 環境を選ぶ前に、公式 READMEを読み、記載されている入力形式、抽出コンポーネント、Python のサポート範囲を確認します。
- README のインストールガイダンスに従って、分離された環境を作成して有効化します。README では Python 3.11 を使用する conda 環境が例示されています。Python 3.9–3.11 がサポート対象と記載されていますが、ここでは独立した検証を行っていません。
- 提供されている手順
pip install chemdataextractor2でパッケージをインストールします。パッケージ名とプロジェクトの表示名 ChemDataExtractor を区別してください。 - ワークフローの詳細については、リンク先のドキュメントを参照します。関連するドキュメントリーダー、テキストまたは表の抽出コンポーネント、出力処理をどのように接続するかを確認してください。これらの詳細は、出典の抜粋には含まれていません。
- 評価手順として、代表的な文書を少数処理し、原文と照合して化学物質エンティティ、物性、スペクトル、表データを手動で確認します。より大規模な文献処理ワークフローを検討する前に、抽出漏れや誤りを記録してください。