🚀 胸部X線画像分類器
このリポジトリには、CheXpertデータセットを利用して胸部X線画像を分類するためにファインチューニングされた**Vision Transformer (ViT)**モデルが含まれています。このモデルは、胸部レントゲン画像から様々な肺疾患を分類するタスクでファインチューニングされており、異なる状態を区別する際に高い精度を達成しています。
✨ 主な機能
- 胸部X線画像を用いた肺疾患の分類が可能です。
- ファインチューニングにより、未知の胸部X線画像に対しても良好な汎化性能を示します。
📦 インストール
本文書には具体的なインストール手順が記載されていないため、このセクションを省略します。
💻 使用例
基本的な使用法
from PIL import Image
import torch
from transformers import AutoImageProcessor, AutoModelForImageClassification
processor = AutoImageProcessor.from_pretrained("codewithdark/vit-chest-xray")
model = AutoModelForImageClassification.from_pretrained("codewithdark/vit-chest-xray")
label_columns = ['Cardiomegaly', 'Edema', 'Consolidation', 'Pneumonia', 'No Finding']
image_path = "/content/images.jpeg"
image = Image.open(image_path)
if image.mode != 'RGB':
image = image.convert('RGB')
print("Image converted to RGB.")
inputs = processor(images=image, return_tensors="pt")
with torch.no_grad():
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = torch.argmax(logits, dim=-1).item()
predicted_class_label = label_columns[predicted_class_idx]
print(f"Predicted Class Index: {predicted_class_idx}")
print(f"Predicted Class Label: {predicted_class_label}")
'''
Output :
Predicted Class Index: 4
Predicted Class Label: No Finding
'''
高度な使用法
本文書には高度な使用法に関する具体的なコード例が記載されていないため、このサブセクションを省略します。
📚 ドキュメント
モデルの概要
ファインチューニングされたモデルはVision Transformer (ViT)アーキテクチャに基づいており、注意機構を利用して効率的な特徴抽出を行うことで、画像ベースのタスクを得意としています。このモデルはCheXpertデータセットで学習されており、肺炎、心拡大などの疾患を検出するためのラベル付き胸部X線画像が含まれています。
性能
- 最終検証精度: 98.46%
- 最終学習損失: 0.1069
- 最終検証損失: 0.0980
モデルは学習中に大幅な精度向上を達成し、未知の胸部X線画像に対しても良好な汎化性能を示しました。
データセット
モデルのファインチューニングに使用されたデータセットはCheXpertデータセットで、複数の患者の胸部X線画像がマルチラベルアノテーション付きで含まれています。データには、各患者の胸部の正面と側面の画像が含まれ、様々な肺疾患のラベルが付けられています。
データセットの詳細については、CheXpert公式ウェブサイトをご覧ください。
学習の詳細
モデルは以下の設定でファインチューニングされました。
- オプティマイザ: AdamW
- 学習率: 3e-5
- バッチサイズ: 32
- エポック数: 10
- 損失関数: Binary Cross-Entropy with Logits
- 精度: 混合精度 (
torch.amp
を使用)
🔧 技術詳細
本文書には具体的な技術実装の詳細が記載されていないため、このセクションを省略します。
📄 ライセンス
このモデルはMITライセンスの下で利用可能です。詳細についてはLICENSEを参照してください。
謝辞
Happy coding! 🚀