スペイン語のバルセロナスーパーコンピューティングセンター(BSC)の生物医学および臨床前の言語モデルの公式リポジトリ。
Apacheライセンス2.0の下で最高のモデルをリリースして、生物医学および臨床ドメインでのスペインNLPアプリケーションの開発を促進しました。
2つのモデルをトレーニングし、次のリンクでHuggingfaceのモデルハブで使用できるようにします。
さらに、LongFormerバージョンは、臨床コーディングなどのより大きなコンテキストを必要とするタスクを操作できるように訓練されています。使用されるコーパスは、以下と同じです。モデルはHugginfaceでも見つけることができます:
指定されたエンティティ認識(NER)タスクのモデルを微調整し、次のリンクでHuggingfaceのモデルハブで最適なモデルを利用可能にします。
トレーニングコーパスは、スペイン語のいくつかの生物医学的corporaで構成されており、公開されているコーポラとクローラーから収集され、278k以上の臨床文書とメモから収集された現実世界の臨床コーパスです。臨床言語の特異性を保持しながら高品質のトレーニングコーパスを取得するために、クリーニングパイプラインは生物医学のcorporaにのみ適用され、臨床コーパスが汚れていません。基本的に、使用されるクリーニング操作は次のとおりです。
次に、生物医学のcorporaは連結され、生物医学のコーパスの間でさらにグローバルな重複排除が適用されています。結果は、約91mのトークンの臨床コーパスと約963mのトークンの生物医学的コーパスです。最終的に、臨床コーパスは洗浄された生物医学コーパスに連結され、1Bを超えるトークンで構成されるスペイン語の中型生物医学的臨床コーパスをもたらします。以下の表は、個々のクリーニングされたコーパの基本統計を示しています。
| 名前 | いいえ。トークン | 説明 |
|---|---|---|
| 医療クローラー | 903,558,136 | スペインの生物医学および健康領域に属する3,000を超えるURLのクローラー。 |
| 臨床症例その他。 | 102,855,267 | 医療含有量のその他、本質的に臨床症例。臨床症例報告は、開業医が患者の症例を共有する科学的出版物であり、臨床メモや文書とは異なることに注意してください。 |
| EHRドキュメント | 95,267,20 | 排出レポート、臨床コースノート、X線報告を含む278K以上の臨床文書のコレクションは、合計91mのトークンを使用しています。 https://huggingface.co/plantl-gob-es/longformer-base-4096-biomedical-clinical-es |
| Scielo | 60,007,289 | スペイン語で書かれた出版物は、2017年にスペインのScieloサーバーからrawいました。 |
| barr2_background | 24,516,442 | さまざまな臨床分野からのスペインの臨床事例研究セクションを含む生物医学的略語認識と解像度(barr2)。 |
| wikipedia_life_sciences | 13,890,501 | ウィキペディアの記事は、「Ciencias_de_la_vida」カテゴリから最大5つのサブカテゴリまで、ウィキペディアAPI Pythonライブラリで04/01/2021をクロールしました。その後、同じ記事への複数のリンクが破棄され、コンテンツの繰り返しを避けます。 |
| 特許 | 13,463,387 | スペインの医療ドメインのGoogle特許(スペイン語)。特許のJSONファイルの受け入れられたコード(医療ドメイン)は、「A61B」、「A61C」、「A61F」、「A61H」、「A61K」、「A61L」、「A61M」、「A61B」、「A61P」です。 |
| EMEA | 5,377,448 | 欧州医薬品機関からのPDF文書から作られた並列コーパスから抽出されたスペイン側の文書。 |
| mispen_medline | 4,166,077 | 生物医学の科学文献からなるスペイン語と英語の平行なコーパスのコレクションから抽出されたスペイン側の記事。並列リソースのコレクションは、MedlinePlusソースから集約されます。 |
| PubMed | 1,858,966 | PubMedリポジトリのオープンアクセス記事は2017年にクロールされました。 |
このモデルは、Pharmaconer、Cantemist、ICTUSNETなどの3つの臨床NERデータセットを使用して、指定されたエンティティ認識(NER)タスクで微調整されています。標準の線形層とバイオタグスキーマを使用して、Token分類問題としてNERタスクに対処しました。モデルを、一般的なドメインのスペインのロベルタベース - bne、スペインのムバート、ドメイン固有の英語モデルのバイオバート、および継続的なプリトレーニング、Mbert-Galén、XLM-R-Galén、Beto-galénに基づく3つのドメイン固有のモデルをサポートする一般的なドメイン多言語モデルと比較しました。以下の表は、取得したF1スコアを示しています。
| タスク/モデル | bsc-bio-es | bsc-bio-ehr-es | xlm-r-galén | beto-galén | Mbert-Galén | Mbert | Biobert | Roberta-Base-Bne |
|---|---|---|---|---|---|---|---|---|
| ファーマコナー | 0.8907 | 0.8913 | 0.8754 | 0.8537 | 0.8594 | 0.8671 | 0.8545 | 0.8474 |
| カンテミスト | 0.8220 | 0.8340 | 0.8078 | 0.8153 | 0.8168 | 0.8116 | 0.8070 | 0.7875 |
| ICTUSNET | 0.8727 | 0.8756 | 0.8716 | 0.8498 | 0.8509 | 0.8631 | 0.8521 | 0.8677 |
次の例では、Pharmaconer Datasetで微調整されたBSC-Bio-EHR-ESモデルを予測する方法を示します。
from transformers import AutoTokenizer , AutoModelForTokenClassification , pipeline
tokenizer = AutoTokenizer . from_pretrained ( "PlanTL-GOB-ES/bsc-bio-ehr-es-pharmaconer" )
model = AutoModelForTokenClassification . from_pretrained ( "PlanTL-GOB-ES/bsc-bio-ehr-es-pharmaconer" )
pipe = pipeline ( task = 'token-classification' , model = 'PlanTL-GOB-ES/bsc-bio-ehr-es-pharmaconer' )
sentence = 'Por el hallazgo de múltiples fracturas por estrés, se procedió a estudio en nuestras consultas, realizándose análisis con función renal, calcio sérico y urinario, calcio iónico, magnesio y PTH, que fueron normales.'
results = pipe ( sentence )
print ( results ) # Expected output with the predicted entities:
[
{'word': 'Ġcalcio', 'score': 0.9963880181312561, 'entity': 'B-NORMALIZABLES', 'index': 24, 'start': 137, 'end': 143}, {'word': 'Ġcalcio', 'score': 0.9965023398399353, 'entity': 'B-NORMALIZABLES', 'index': 29, 'start': 163, 'end': 169}, {'word': 'Ġmagnesio', 'score': 0.996299147605896, 'entity': 'B-NORMALIZABLES', 'index': 32, 'start': 178, 'end': 186}, {'word': 'ĠPTH', 'score': 0.9950509667396545, 'entity': 'B-PROTEINAS', 'index': 34, 'start': 189, 'end': 192}
]
まず、プロジェクトをクローンします。
git clone https://github.com/PlanTL-GOB-ES/lm-biomedical-clinical-es/blob/master/README.md
Python仮想環境をセットアップしてアクティブにします
python3.8 -m venv venv; source venv/bin/activate
プロジェクトメインフォルダーから次の行を実行している仮想環境に必要なすべてのPythonパッケージをインストールします: pip install -r requirements.txt 。
最後に、プロジェクトメインフォルダーで次のコマンドを実行します: bash ner.sh [MODEL_NAME] [DATASET_NAME] [SEED] 、ここで
[MODEL_NAME] :Huggingface '使用する前払いモデルのモデル名。[DATASET_NAME] :Huggingface '使用するNERデータセットのデータセット名。使用するデータセットに応じて、「Plantl-gob-es/cantemist-ner」および「plantl-gob-es/pharmaconer」から選択できます。[SEED] :使用したい種。これにより、同じ結果を再現できます。 ner.shスクリプト線形分類ヘッドを適用するNERタスクの前提条件の言語モデルを微調整します。デフォルトでは、10エポックの微調整は、すべてのエポックで開発セットで評価された状態で実行されます。開発セットで最高のパフォーマンスを達成するモデルは、最終モデルとして選択され、テストセットで評価されます。最良の訓練されたモデルは、タイプ./output/model-$model_name/dataset-$dataset_name/seed-$seedとともに、チェックポイントフォルダーとテンソルボードデータ( tbディレクトリ内)の出力パスに保存されます。
たとえば、Pharmaconer DatasetでBSC-Bio-Ehr-ES言語モデルを微調整するには、コマンドを実行します。
bash ner.sh PlanTL-GOB-ES/bsc-bio-ehr-es PlanTL-GOB-ES/pharmaconer 42
これらのモデルを使用する場合は、私たちの作業を引用してください。
@inproceedings{carrino-etal-2022-pretrained,
title = "Pretrained Biomedical Language Models for Clinical {NLP} in {S}panish",
author = "Carrino, Casimiro Pio and
Llop, Joan and
P{`a}mies, Marc and
Guti{'e}rrez-Fandi{~n}o, Asier and
Armengol-Estap{'e}, Jordi and
Silveira-Ocampo, Joaqu{'i}n and
Valencia, Alfonso and
Gonzalez-Agirre, Aitor and
Villegas, Marta",
booktitle = "Proceedings of the 21st Workshop on Biomedical Language Processing",
month = may,
year = "2022",
address = "Dublin, Ireland",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2022.bionlp-1.19",
doi = "10.18653/v1/2022.bionlp-1.19",
pages = "193--199",
abstract = "This work presents the first large-scale biomedical Spanish language models trained from scratch, using large biomedical corpora consisting of a total of 1.1B tokens and an EHR corpus of 95M tokens. We compared them against general-domain and other domain-specific models for Spanish on three clinical NER tasks. As main results, our models are superior across the NER tasks, rendering them more convenient for clinical NLP applications. Furthermore, our findings indicate that when enough data is available, pre-training from scratch is better than continual pre-training when tested on clinical tasks, raising an exciting research question about which approach is optimal. Our models and fine-tuning scripts are publicly available at HuggingFace and GitHub.",
}
このプロジェクトは、バージョン2.0のApacheライセンスに基づいてライセンスされています
Copyright(c)2021SecretaríadeEstado deDigitalizacióneInteligencia人工(SEDIA)
この作業は、Plan-TLの枠組みの中で、スペイン州事務局によってデジタル化と人工知能(SEDIA)のために資金提供されました。
このリポジトリで公開されているモデルは、ジェネラリストの目的を目的としており、第三者が利用できます。これらのモデルには、バイアスやその他の望ましくない歪みがあります。
第三者、これらのモデルのいずれかを使用して他の関係者にシステムおよび/またはサービスを展開または提供する場合(またはこれらのモデルに基づいてシステムを使用している)、またはモデルのユーザーになる場合、彼らは使用から生じるリスクを軽減し、いずれにせよ、人工知能の使用に関する規制を含む該当する規制を遵守することは彼らの責任であることに注意する必要があります。
いかなる場合でも、モデルの所有者(セディア - デジタル化および人工知能の州事務局)も、作成者(BSC - バルセロナスーパーコンピューティングセンター)が、これらのモデルの第三者によって行われた使用から生じる結果に対して責任を負います。
los modelos publicados en este repositorio tienen una fanigridad generalista yestánadispuricióndeterceros。 Estos Modelos Pueden Tener sesgos y/u otro tipo de distorsiones indeseables。
Cuando Terceros Desplieguen o Proporcionen sistemas y/o servicios a otras cartes usando alguno de estos modelos(o utilizando sistemas basados en estos modelos) de su uso y、en todo caso、cumplir con la normativa aplubly、incluyendo la normativa en materia de uso de inteligencia人工。
enningúnasoel propietario de los modelos(セディア - 秘書デジタルザシオンEインテリゲンシア人工)ni el creador(bsc - バルセロナスーパーコンピューティングセンター)los resultados derivados delivados del uso uso hagan terceros de estos modelos。