Model Card for sociocom/MedTXTNER

本モデルは、日本語医療テキストの NER(固有表現抽出)タスク向けに cl-tohoku/bert-base-japanese-v3 をファインチューニングしたモデルです。

モデル詳細

説明

  • ベースに cl-tohoku/bert-base-japanese-v3を使用
  • 奈良先端大で作成された日本語医療テキストのアノテーション付きデータ(症例報告、読影レポート、看護記録)でファインチューニングを実施
項目 詳細
Developed by NAIST ソーシャルコンピューティング研究室
Model type Token classification
Language(s) Japanese
Finetuned from cl-tohoku/bert-base-japanese-v3

モデルソース

利用方法

import torch
from transformers import AutoTokenizer, AutoModelForTokenClassification

model_dir = "sociocom/MedTXTNER"
model     = AutoModelForTokenClassification.from_pretrained(model_dir)
tokenizer = AutoTokenizer.from_pretrained(model_dir, use_fast=True)
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model.to(device)
model.eval()

def predict_text(text: str):
    enc = tokenizer(
        text,
        return_tensors="pt",
        truncation=True,
        padding="longest",
        is_split_into_words=False
    ).to(device)

    with torch.no_grad():
        outputs = model(**enc)
        logits  = outputs.logits

    pred_ids = torch.argmax(logits, dim=-1)[0].cpu().tolist()
    tokens = tokenizer.convert_ids_to_tokens(enc["input_ids"][0])
    id2label = model.config.id2label

    result = []
    for tok, pid in zip(tokens, pred_ids):
        if tok in tokenizer.all_special_tokens:
            continue
        result.append((tok, id2label[pid]))
    return result

sample = "症例】53歳女性。発熱と嘔気を認め、プレドニゾロンを中断しました。"
for tok, lab in predict_text(sample):
    print(f"{tok}\t{lab}")

Evaluation

属性なし(エンティティタイプのみ評価)

Dataset Micro‑F1 Macro‑F1 Weighted‑F1
Overall 0.699 0.673 0.700
MedTxt‑CR 0.608 0.575 0.612
MedTxt‑RR 0.903 0.930 0.903
MedTxt‑NR 0.800 0.788 0.800

属性あり(エンティティタイプ+属性を区別して評価)

Dataset Micro‑F1 Macro‑F1 Weighted‑F1
Overall 0.638 0.480 0.641
MedTxt‑CR 0.551 0.396 0.559
MedTxt‑RR 0.887 0.708 0.888
MedTxt‑NR 0.730 0.552 0.731
Downloads last month
12
Safetensors
Model size
111M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support