🚀 医療診断AIモデル - Mistral-7BとLoRAで駆動
🩺 この医療診断AIモデルは、Mistral-7BとLoRA技術を活用し、高精度な医療診断を提供します。このモデルは、医療従事者が臨床判断を行う際のサポートツールとして設計されています。
🚀 クイックスタート
このモデルを使用するには、以下のコードを実行してください。
!pip install -q -U bitsandbytes
!pip install -q -U peft
!pip install -q -U trl
!pip install -q -U tensorboardX
!pip install -q wandb
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("ritvik77/Medical_Doctor_AI_LoRA-Mistral-7B-Instruct_FullModel")
tokenizer = AutoTokenizer.from_pretrained("ritvik77/Medical_Doctor_AI_LoRA-Mistral-7B-Instruct_FullModel")
prompt = "Patient reports chest pain and dizziness with nose bleeding, What’s the likely diagnosis is it cancer ?"
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=300)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
Pythonコードの使用例:
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("ritvik77/Medical_Doctor_AI_LoRA-Mistral-7B-Instruct_FullModel")
tokenizer = AutoTokenizer.from_pretrained("ritvik77/Medical_Doctor_AI_LoRA-Mistral-7B-Instruct")
prompt = "Patient reports chest pain and dizziness. What’s the likely diagnosis?"
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=300)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
✨ 主な機能
- ✅ 胸痛、めまい、息切れなどの症状に対する正確な診断
- ✅ Chain-of-Thought (CoT) プロンプトを使用した段階的な医療推理
- ✅ VRAM使用量を削減した効率的な推論(メモリが限られたGPUに最適)
📦 インストール
モデルを使用するには、以下のライブラリをインストールする必要があります。
!pip install -q -U bitsandbytes
!pip install -q -U peft
!pip install -q -U trl
!pip install -q -U tensorboardX
!pip install -q wandb
📚 ドキュメント
モデルの詳細
- 元のMistral-7Bパラメータ: 77億
- LoRA微調整パラメータ: 総モデルパラメータの約4.48%(約3億4000万)
- 最終統合モデルサイズ(bnb_4bit量子化): 約4.5GB
モデルの説明
このモデルは、強力な推論能力と深い言語理解能力で知られるMistral-7B言語モデルを活用しています。LoRAによる微調整により、以下のような医療特有のタスクで優れた性能を発揮します。
-
✅ 胸痛、めまい、息切れなどの症状からの病状診断
-
✅ Chain-of-Thought (CoT) プロンプトを使用した詳細な段階的医療推理
-
✅ 精度が向上した自信ある、証拠に基づく回答の生成
-
開発者: [Ritvik Gaur]
-
資金提供元 [オプション]: [詳細情報が必要]
-
共有者 [オプション]: [詳細情報が必要]
-
モデルタイプ: [医療LLM]
-
言語 (NLP): [詳細情報が必要]
-
ライセンス: [詳細情報が必要]
-
微調整元のモデル [オプション]: [Mistral-7B-Instruct-v3]
トレーニングの詳細
トレーニングデータ
[詳細情報が必要]
トレーニング手順
前処理 [オプション]
[詳細情報が必要]
トレーニングハイパーパラメータ
パラメータ |
値 |
説明 |
ベースモデル |
mistralai/Mistral-7B-Instruct |
強力な推論能力のために選択 |
微調整フレームワーク |
LoRA (Low-Rank Adaptation) |
総パラメータの約4.48%のみを効率的に微調整 |
量子化 |
bnb_4bit |
VRAM消費量を削減するために有効化 |
トレーニングバッチサイズ |
12 |
GPU利用率と収束性のバランスを取るために最適化 |
評価バッチサイズ |
12 |
安定した評価を確保するためにトレーニングバッチサイズと一致 |
勾配累積ステップ |
3 |
安定性向上のための有効バッチサイズ = 36 |
学習率 |
3e-5 |
より滑らかな収束を確保するために低下 |
ウォームアップ率 |
0.2 |
安定性向上のための徐々な学習率の上昇 |
スケジューラタイプ |
Cosine |
滑らかで制御された学習率の減衰を確保 |
エポック数 |
5 |
収束を確保し、過学習を防ぐためにバランスを取る |
最大勾配ノルム |
0.5 |
勾配爆発を防ぐ |
重み減衰 |
0.08 |
汎化性能向上のための正則化 |
bf16精度 |
True |
GPU利用率と精度を最大化 |
勾配チェックポイント |
有効化 |
トレーニング中のメモリ使用量を削減 |
🔎 LoRA設定
パラメータ |
値 |
説明 |
ランク次元 |
128 |
過度のメモリオーバーヘッドなしで強力な表現力を保つためにバランスを取る |
LoRAアルファ |
128 |
安定した勾配更新を確保 |
LoRAドロップアウト |
0.1 |
過学習を防ぐのに役立つ |
評価
テストデータ、要因、メトリクス
テストデータ
[詳細情報が必要]
要因
[詳細情報が必要]
メトリクス
[詳細情報が必要]
結果
[詳細情報が必要]
モデルの検証 [オプション]
[詳細情報が必要]
環境への影響
二酸化炭素排出量は、Lacoste et al. (2019)で提示されたMachine Learning Impact calculatorを使用して推定できます。
- ハードウェアタイプ: [詳細情報が必要]
- 使用時間: [詳細情報が必要]
- クラウドプロバイダ: [詳細情報が必要]
- コンピュートリージョン: [詳細情報が必要]
- 排出された二酸化炭素量: [詳細情報が必要]
技術仕様 [オプション]
モデルアーキテクチャと目的
[詳細情報が必要]
コンピュートインフラストラクチャ
ハードウェア
[詳細情報が必要]
ソフトウェア
[詳細情報が必要]
引用 [オプション]
BibTeX:
[詳細情報が必要]
APA:
[詳細情報が必要]
用語集 [オプション]
[詳細情報が必要]
詳細情報 [オプション]
[詳細情報が必要]
モデルカード作成者 [オプション]
[詳細情報が必要]
モデルカードの連絡先
[詳細情報が必要]
📄 ライセンス
このモデルは、Apache-2.0ライセンスの下で提供されています。
⚠️ 重要提示
このモデルは、実際の病気の診断に完全に依存することは避けてください。このモデルは、LLMを必要とする実際の検証済みの医療アプリケーションのサポート用です。
💡 使用建议
ユーザー(直接および二次的なユーザー)は、モデルのリスク、バイアス、および制限について認識する必要があります。さらなる推奨事項については、詳細情報が必要です。