🚀 ViHealthBERT: 医療テキストマイニングにおけるベトナム語向け事前学習言語モデル
ViHealthBERTは、医療分野におけるベトナム語向けの強力なベースライン言語モデルです。
我々は、異なる学習戦略を用いてモデルを実証的に調査し、3つの下流タスク(NER(COVID - 19 & ViMQ)、頭字語の曖昧性解消、要約)において最先端(SOTA)の性能を達成しました。
我々は2つのベトナム語データセットを導入しました。医療分野における頭字語データセット(acrDrAid)とFAQ要約データセットです。我々のacrDrAidデータセットは135セットのキーワードでアノテーションされています。
ViHealthBERTの一般的なアプローチと実験結果は、我々のLREC - 2022ポスター論文(近日更新予定)に記載されています。
@article{vihealthbert,
title = {{ViHealthBERT: Pre-trained Language Models for Vietnamese in Health Text Mining}},
author = {Minh Phuc Nguyen, Vu Hoang Tran, Vu Hoang, Ta Duc Huy, Trung H. Bui, Steven Q. H. Truong },
journal = {13th Edition of its Language Resources and Evaluation Conference},
year = {2022}
}
🚀 クイックスタート
ViHealthBERTは、医療分野のベトナム語処理に強力なパフォーマンスを発揮する事前学習言語モデルです。以下に、インストール方法や使用例を紹介します。
📦 インストール
- Python 3.6以上、およびPyTorch >= 1.6
transformers
をインストールします。
pip install transformers==4.2.0
📚 事前学習モデル
モデル |
パラメータ数 |
アーキテクチャ |
トークナイザー |
demdecuong/vihealthbert-base-word |
135M |
base |
単語レベル |
demdecuong/vihealthbert-base-syllable |
135M |
base |
音節レベル |
💻 使用例
基本的な使用法
import torch
from transformers import AutoModel, AutoTokenizer
vihealthbert = AutoModel.from_pretrained("demdecuong/vihealthbert-base-word")
tokenizer = AutoTokenizer.from_pretrained("demdecuong/vihealthbert-base-word")
line = "Tôi là sinh_viên trường đại_học Công_nghệ ."
input_ids = torch.tensor([tokenizer.encode(line)])
with torch.no_grad():
features = vihealthbert(input_ids)
生テキストの使用例
ViHealthBERTは、事前学習データの前処理にVnCoreNLPのRDRSegmenterを使用しています。
ViHealthBERTの下流アプリケーションでは、同じ単語分割器を使用することを強く推奨します。
インストール
pip3 install vncorenlp
mkdir -p vncorenlp/models/wordsegmenter
wget https://raw.githubusercontent.com/vncorenlp/VnCoreNLP/master/VnCoreNLP-1.1.1.jar
wget https://raw.githubusercontent.com/vncorenlp/VnCoreNLP/master/models/wordsegmenter/vi-vocab
wget https://raw.githubusercontent.com/vncorenlp/VnCoreNLP/master/models/wordsegmenter/wordsegmenter.rdr
mv VnCoreNLP-1.1.1.jar vncorenlp/
mv vi-vocab vncorenlp/models/wordsegmenter/
mv wordsegmenter.rdr vncorenlp/models/wordsegmenter/
VnCoreNLP-1.1.1.jar
(27MB) と models/
フォルダは、同じ作業フォルダに配置する必要があります。
使用例
from vncorenlp import VnCoreNLP
rdrsegmenter = VnCoreNLP("/Absolute-path-to/vncorenlp/VnCoreNLP-1.1.1.jar", annotators="wseg", max_heap_size='-Xmx500m')
text = "Ông Nguyễn Khắc Chúc đang làm việc tại Đại học Quốc gia Hà Nội. Bà Lan, vợ ông Chúc, cũng làm việc tại đây."
sentences = rdrsegmenter.tokenize(text)
for sentence in sentences:
print(" ".join(sentence))