polish_medical_ner / README.md
rigonsallauka's picture
Update README.md
58b2019 verified
|
raw
history blame
2.42 kB
metadata
license: apache-2.0
datasets:
  - rigonsallauka/polish_ner_dataset
language:
  - pl
metrics:
  - f1
  - recall
  - precision
  - confusion_matrix
base_model:
  - google-bert/bert-base-cased
pipeline_tag: token-classification
tags:
  - NER
  - medical
  - extraction
  - symptom
  - polish

Polish Medical NER

Use

  • Primary Use Case: This model is designed to extract medical entities such as symptoms, diagnostic tests, and treatments from clinical text in the Polish language.
  • Applications: Suitable for healthcare professionals, clinical data analysis, and research into medical text processing.
  • Supported Entity Types:
    • PROBLEM: Diseases, symptoms, and medical conditions.
    • TEST: Diagnostic procedures and laboratory tests.
    • TREATMENT: Medications, therapies, and other medical interventions.

Training Data

  • Data Sources: Annotated datasets, including clinical data and translations of English medical text into Polish.
  • Data Augmentation: The training dataset underwent data augmentation techniques to improve the model's ability to generalize to different text structures.
  • Dataset Split:
    • Training Set: 80%
    • Validation Set: 10%
    • Test Set: 10%

Model Training

  • Training Configuration:
    • Optimizer: AdamW
    • Learning Rate: 3e-5
    • Batch Size: 64
    • Epochs: 200
    • Loss Function: Focal Loss to handle class imbalance
  • Frameworks: PyTorch, Hugging Face Transformers, SimpleTransformers

Evaluation metrics

  • eval_loss = 0.3968946770636102
  • f1_score = 0.7556232119891866
  • precision = 0.7552069671056083
  • recall = 0.7560399159663865

How to Use

You can easily use this model with the Hugging Face transformers library. Here's an example of how to load and use the model for inference:

from transformers import AutoTokenizer, AutoModelForTokenClassification
import torch

model_name = "rigonsallauka/polish_medical_ner"

# Load the tokenizer and model
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForTokenClassification.from_pretrained(model_name)

# Sample text for inference
text = "Pacjent skar偶y艂 si臋 na silne b贸le g艂owy i nudno艣ci, kt贸re utrzymywa艂y si臋 przez dwa dni. W celu z艂agodzenia objaw贸w przepisano mu paracetamol oraz zalecono odpoczynek i picie du偶ej ilo艣ci p艂yn贸w."

# Tokenize the input text
inputs = tokenizer(text, return_tensors="pt")