Tbai-DPA 1.0 Sürümü (TR) [BETA]
Tanım
Tbai-DPA 1.0 (Dementia, Parkinson, Alzheimer) modeli, MRI veya fMRI görüntüsü üzerinden beyin hastalıklarını yorumlayarak daha detaylı teşhis etmek amacıyla eğitilmiş ve geliştirilmiştir. Hastanın parkinson olup olmadığını, demans durumunu ve alzheimer riskini yüksek doğruluk oranı ile göstermektedir.
Kitle / Hedef
Tbai modelleri, Vbai ile birlikte çalışarak; öncelikle hastaneler, sağlık merkezleri ve bilim merkezleri için geliştirilmiştir.
Sınıflar
- Alzheimer Hastası
- Ortalama Alzheimer Riski
- Hafif Alzheimer Riski
- Çok Hafif Alzheimer Riski
- Risk Yok
- Parkinson Hastası
----------------------------------------
Tbai-DPA 1.0 Version (EN) [BETA]
Description
The Tbai-DPA 1.0 (Dementia, Parkinson's, Alzheimer's) model has been trained and developed to interpret brain diseases through MRI or fMRI images for more detailed diagnosis. It indicates whether the patient has Parkinson's disease, dementia, and Alzheimer's risk with a high accuracy rate.
Audience / Target
Tbai models, working in conjunction with Vbai, have been developed primarily for hospitals, health centers, and science centers.
Classes
- Alzheimer's disease
- Average Risk of Alzheimer's Disease
- Mild Alzheimer's Risk
- Very Mild Alzheimer's Risk
- No Risk
- Parkinson's Disease
Kullanım / Usage
- Sanal ortam oluşturun. / Create a virtual environment.
python -3.9.0 -m venv myenv
- Bağımlılıkları yükleyin. / Load dependencies.
pip install -r requirements.txt
- Dosyayı çalıştırın. / Run the script.
import torch
from transformers import T5Tokenizer, T5ForConditionalGeneration
import warnings
warnings.filterwarnings("ignore", category=FutureWarning)
warnings.filterwarnings("ignore", category=UserWarning)
def load_tbai_model(model_dir: str, device):
tokenizer = T5Tokenizer.from_pretrained(model_dir)
model = T5ForConditionalGeneration.from_pretrained(model_dir).to(device)
return tokenizer, model
def generate_comment_sampling(
tokenizer,
model,
sinif_adi: str,
device,
max_length: int = 128
) -> str:
input_text = f"Sınıf: {sinif_adi}"
inputs = tokenizer(
input_text,
return_tensors="pt",
padding="longest",
truncation=True,
max_length=32
).to(device)
out_ids = model.generate(
**inputs,
max_length=max_length,
do_sample=True,
top_k=50,
top_p=0.95,
no_repeat_ngram_size=2,
early_stopping=True
)
comment = tokenizer.decode(out_ids[0], skip_special_tokens=True)
return comment
def test_with_sampling():
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
tokenizer, model = load_tbai_model(
"Tbai/model/dir/path",
device)
test_classes = [
"alzheimer disease",
"mild alzheimer risk",
"moderate alzheimer risk",
"very mild alzheimer risk",
"no risk",
"parkinson disease"
]
for cls in test_classes:
print(f"--- Class: {cls} (Deneme 1) ---")
print(generate_comment_sampling(tokenizer, model, cls, device))
print(f"--- Class: {cls} (Deneme 2) ---")
print(generate_comment_sampling(tokenizer, model, cls, device))
print()
def main():
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
print(f">>> Using device: {device}\n")
model_dir = "Tbai/model/dir/path"
tokenizer, model = load_tbai_model(model_dir, device)
print(">>> Tokenizer ve model başarıyla yüklendi.\n")
test_classes = [
"alzheimer disease",
"mild alzheimer risk",
"moderate alzheimer risk",
"very mild alzheimer risk",
"no risk",
"parkinson disease"
]
for cls in test_classes:
generated = generate_comment_sampling(tokenizer, model, cls, device)
print(f"Sınıf: {cls}")
print(f"Üretilen Yorum: {generated}\n")
if __name__ == "__main__":
main()