人気ブログランキング | 話題のタグを見る
ブログトップ

EARLの医学ノート

drmagician.exblog.jp

敗血症をメインとした集中治療,感染症,呼吸器のノート.医療におけるAIについても

【AI】コンパクトでオフラインでも使用できる高性能バイオメディカルLLM「BioMedLM」登場

Stanford CRFM and MosaicMLが共同で,バイオメディカル分野に特化した27億パラメータの自己回帰型言語モデル「BioMedLM」をリリースした.このモデルの特記すべき特徴は非常に少ないパラメータ数と限られた学習範囲というコンパクトさにもかかわらず,GPT-4やMed-PaLM 2に引けを取らない性能を示したという点である.このため,計算コストが低く,プライバシー保護にも優れ,経済的で環境にも優しい.また,学習データが公開されているため透明性が高い.BioMedLMは既に使用可能で,コンパクトであるがゆえに,インストールしてオフラインで使用するこも可能である

1.モデルの特徴

(1)学習データ
■BioMedLMは,PubMedデータベースの要約と全文のみを学習データとして使用している.学習には,2022年11月時点でのPubMedデータのうち、The Pileと呼ばれるデータセットに含まれる部分が使用された.学習データのトークン数は346億であり,学習中に8.67回データを繰り返し使用している.

(2)モデルアーキテクチャ
■BioMedLMは,GPT-2と同様のデコーダのみのTransformerアーキテクチャを採用している.GPT-2は自己回帰型言語モデルの代表例で,次のトークンを予測するように学習されいる.BioMedLMのパラメータ数は27億で,位置エンベディングには,学習された絶対位置エンベディングを使用している.

(3)トークナイザ
■BioMedLMは,PubMedの要約から学習したバイオメディカル分野に特化した語彙数28896のByte Pair Encoding (BPE) トークナイザを使用している.このトークナイザにより,"chromatography"や"nanoparticles"などの専門用語が単一のトークンとして扱われ,汎用の語彙では複数のサブワードに分割されてしまうような問題が回避されている.ドメイン特化型トークナイザの使用により,下流タスクの性能が向上したと報告されている.

2.性能

(1)多肢選択問題解決能力
■BioMedLMは,臨床医学の多肢選択問題データセットMedMCQAの開発セットにおいて57.3%の正解率を達成し,この結果は,GPT-4やMed-PaLM 2といった大規模モデルに迫る高い性能である.また,様々な専門分野の試験問題を集めたベンチマークであるMMLUの医学遺伝学カテゴリにおいては69.0%の正解率を達成し,GPT-4やMed-PaLM 2に匹敵する高い性能を示している.

■この結果はパラメータ数や学習データの少なさからすると驚愕すべき性能である.BioMedLMのパラメータ数は27億であるのに対し,GPT-4は数千億,Med-PaLM 2は5400億とされている.また,GPT-4やMed-PaLM 2は,ウェブ上の大規模な一般的なテキストデータで学習されているのに対し,BioMedLMはPubMedのバイオメディカル分野の文献のみで学習されている.すなわち,BioMedLMは10倍以上小さいモデルで,かつ限定された分野の学習データで汎用の大規模モデルに引けを取らない性能を示している

(2)医療の一般的質問への回答能力
■医療に関する一般的な質問と医療専門家による回答のペアを集めたデータセットHealthSearchQAの質問に対して,BioMedLMは複数文からなる回答を生成することができ,複数の治療法を提示してそれぞれについて簡潔に説明するといったことが可能であった.また,重症例には侵襲的治療が必要になる可能性があるが,ほとんどの場合は保存的治療で改善が得られるといった補足情報も提供する.

3.ファインチューニング

■BioMedLMを,特定のバイオメディカルNLPタスクに対してファインチューニング(事前学習済みのモデルを特定のタスクに合わせて追加学習させること)することができる.ファインチューニングには,タスク固有のデータセットを使用する.例えば,薬物-タンパク質相互作用の予測タスクでは,薬物とタンパク質のペアとその相互作用の有無をラベルとしたデータセットを使用する.BioMedLMをこのデータセットでファインチューニングすることで,薬物-タンパク質相互作用の予測に特化したモデルを得ることができる.

4.使用方法

■Hugging Faceのモデルページ(https://huggingface.co/StanfordBioNLP/BioMedLM)から,BioMedLMをダウンロードまたはオンラインで使用可能である(ダウンロードする場合はHugging Faceの無料アカウントが必要).オンラインで使用する場合は,Hugging FaceのAPI(無料では呼び出し回数に制限あり)を介してBioMedLMを呼び出すことができる.また,ローカル環境にBioMedLMをインストールして使用することもできる.BioMedLMは,Transformersライブラリ(https://huggingface.co/docs/transformers/index)と互換性があるため,このライブラリを使用してBioMedLMを扱うことができる.

■インストールしてオフラインで使用する場合必要な環境は以下の通りである.Python 3.7以上
PyTorch 1.8.1以上
Transformersライブラリ 4.5.1以上
CUDA(GPUを使用する場合)

■インストール手順としては,まずPythonをインストールする.次に,PyTorchをインストールする.GPUを使用する場合は、CUDA対応バージョンをインストールする.さらにTransformersライブラリをインストールし,以下のコマンドを実行する.
pip install transformers
そして,BioMedLMのモデルファイルをHugging Faceのモデルページ(https://huggingface.co/StanfordBioNLP/BioMedLM)からダウンロードし,モデルファイルを任意のディレクトリに解凍する.BioMedLMをオフラインで使用するにはTransformersライブラリを使用する.以下は,BioMedLMを使用してテキストの埋め込みを得る例である.
from transformers import AutoTokenizer, AutoModel

model_path = "/path/to/biomedlm" # ダウンロードしたモデルファイルのパス
tokenizer = AutoTokenizer.from_pretrained(model_path)
model = AutoModel.from_pretrained(model_path)

text = "This is a sample text."
inputs = tokenizer(text, return_tensors="pt")
outputs = model(**inputs)
embeddings = outputs.last_hidden_state
BioMedLM:バイオメディカル分野のテキストで学習した27億パラメータの大規模言語モデル
Bolton E, Venigalla A, Yasunaga M, et al. BioMedLM: A 2.7B Parameter Language Model Trained On Biomedical Text. arXiv:2403.18421 2024 Mar.27
https://arxiv.org/abs/2403.18421

Abstract

GPT-4やMed-PaLM 2のようなモデルは,様々な生物医学NLPタスクにおいて素晴らしい性能を示してきた.しかし,これらのモデルは数千億のパラメータを持ち,実行には計算コストがかかり,ユーザーは入力データをインターネット経由で送信する必要があり,未知のデータソースで学習される.より小さく,より的を絞ったモデルで対抗できるのだろうか?この疑問を解決するために,我々はPubMedの抄録と全文のみを対象に学習させた27億パラメータのGPT型自己回帰モデルBioMedLMを構築し,リリースした.BioMedLMを微調整すると,MedMCQA (dev)で57.3%,MMLU Medical Genetics試験で69.0%のスコアを達成するなど,はるかに大規模なモデルに引けを取らない強力な多肢選択式生物医学問題解答結果を出すことができた.BioMedLMはまた,医療トピックに関する患者の質問に有用な回答を生成するように微調整することもできる.このことは,より小さなモデルが,生物医学のような特定の自然言語処理アプリケーションにおいて,透明性が高く,プライバシーを保護し、経済的で環境に優しい基盤として機能する可能性があることを示している.このモデルはHugging Face Hubで利用可能である.

by DrMagicianEARL | 2024-04-03 18:14 | 医学・医療とAI

by DrMagicianEARL