Showing posts with label Sağlıkta Yapay Zeka. Show all posts
Showing posts with label Sağlıkta Yapay Zeka. Show all posts

Thursday, January 22, 2026

Teknofest Yapay Zeka Yarışması: Tıp Doktorundan Derece Tüyoları

Teknofest Sağlıkta Yapay Zeka Yarışması: Bir Tıp Doktorunun Dereceye Uzanan Yolculuğu

Merhabalar arkadaşlar, Murat Karakaya Akademi kanalına ve bloğuna hoş geldiniz. Bugün, özellikle yapay zekaya ilgi duyan ancak "Ben mühendis değilim, bu işi yapabilir miyim?" diye soran herkes için ilham verici bir başarı hikayesini ve teknik bir rehberi paylaşıyoruz.

Konuğumuz, 2019 Çapa Tıp mezunu olan ve mesleğini icra ederken yapay zeka alanında kendini sıfırdan geliştirerek Teknofest "Sağlıkta Yapay Zeka" yarışmasında 5800 takım arasından finalist olup 7.lik derecesi elde eden Dr. Alperen Kaban. Bu yazıda, Alperen Hocamızın tecrübelerinden yola çıkarak; sıfırdan öğrenme sürecinden DICOM verilerinin sanatsal işlenişine kadar tüm detayları inceleyeceğiz.

Bu değerli tecrübe aktarımını ve yarışma atmosferini Alperen Hocamızın kendi ağzından dinlemek için videoyu izlemenizi şiddetle öneririm:

Bu Eğitimde Neler Öğreneceksiniz?

  • Tıp doktoru olarak sıfırdan yapay zeka uzmanlığına geçiş metotları (MIT OCW, Kaggle ve ötesi).
  • Teknofest Raporlama Aşamaları: Proje Sunuş ve Detay Raporunda jürinin beklediği kritik detaylar.
  • Tıbbi görüntüleme (DICOM) verileriyle çalışma: 16-bit hassasiyeti ve veri kaybını önleme yolları.
  • Kaggle ve Teknofest veri setleri arasındaki yapısal farklar ve model stratejileri.
  • Final alanındaki donanım hazırlığı: Yedek bilgisayarın ve Docker kullanımının önemi.

1. Sıfırdan Başlamak: Bir Doktorun AI Yolculuğu

Dr. Alperen Kaban, 2019 yılında mezun olduktan sonra geleneksel yollar yerine programlama öğrenmeye karar veriyor. Sürecini şu şekilde özetliyor: "İlk yıl programlamanın temellerini (C ve Python) öğrendim. Google'ın AlphaGo belgeseli beni çok etkiledi ve bu alanın dünyayı değiştireceğine inandım."

Hocamızın önerdiği kaynak rotası ise altın değerinde:

  • MIT OCW (OpenCourseWare): Özellikle bilgisayar bilimi temelleri için 6.001 gibi dersler.
  • YouTube ve Udemy: Uygulamalı projeler (Tutorials).
  • Kaggle: Bitmiş yarışmaların çözümlerini incelemek ve lider tablolarındaki yöntemleri analiz etmek.

2. Teknofest Raporlama ve Strateji: Sadece Kod Yetmez

Teknofest, sadece en yüksek skoru alanın kazandığı bir yer değildir. Süreç; Proje Sunuş Raporu, Proje Detay Raporu ve Finaller şeklinde üç aşamadan oluşur. Alperen Hoca, birçok takımın "raporlama" aşamasında elendiğine dikkat çekiyor.

Raporun Püf Noktaları:

  • Literatür Taraması: Amerika'yı yeniden keşfetmeyin. Benzer problemler için hangi makaleler neyi önermiş? (Örn: Segmentasyon için Unet mi, Mask R-CNN mi?)
  • Özgün Değer: Siz bu literatürün üzerine ne koyuyorsunuz? Hangi veri artırma (Augmentation) tekniklerini denediniz?
  • Analitik Yaklaşım: ChatGPT ile doldurulmuş basit metinler yerine; verinin istatistiksel analizini, sınıf dengesizliğini ve preprocessing (ön işleme) basamaklarını detaylandırın.

3. Teknik Derinlik: DICOM ve Ön İşleme (Preprocessing)

Tıbbi verilerle çalışırken en büyük hata, DICOM dosyalarını standart JPG gibi görmektir. DICOM dosyaları 16-bit veri ve metadata (üst veri) barındırır. Hocamızın vurguladığı gibi: "16-bit veriyi yanlışlıkla 8-bit'e cast ederseniz, teşhis koyduracak o minik piksel farklarını kaybedersiniz."

Aşağıdaki Python örneği, BT (Bilgisayarlı Tomografi) verilerini doğru şekilde normalize etmek ve "Hounsfield Unit" (HU) dönüşümü yapmak için temel bir çerçeve sunar:

import pydicom
import numpy as np

def dicom_to_tensor(filepath):
    # DICOM dosyasını metadata ile oku
    ds = pydicom.dcmread(filepath)
    image = ds.pixel_array.astype(float)
    
    # Metadata'dan Rescale Slope ve Intercept değerlerini al
    # Bu değerler BT görüntülerindeki HU değerlerini hesaplamak için şarttır!
    slope = ds.RescaleSlope if 'RescaleSlope' in ds else 1
    intercept = ds.RescaleIntercept if 'RescaleIntercept' in ds else 0
    
    # Gerçek HU değerlerine dönüştür
    image = (image * slope) + intercept
    
    # Windowing (Pencereleme) - Akciğer için örnek: Center -600, Width 1500
    win_center, win_width = -600, 1500
    img_min = win_center - win_width // 2
    img_max = win_center + win_width // 2
    
    # Sınırları aşan pikselleri kırp (Clipping)
    image = np.clip(image, img_min, img_max)
    
    # 0-1 Normalizasyonu
    image = (image - img_min) / (img_max - img_min)
    
    return image

Dikkat Edilmesi Gerekenler: Maske (Segmentasyon) verileri her zaman iyi organize edilmiş olmayabilir. Zip dosyalarının içindeki klasör yapılarını manuel analiz etmek gerekebilir.

4. Kaggle vs. Teknofest Farkı

Dr. Alperen Kaban'a göre iki platformun veri yapıları çok farklıdır:

  • Kaggle: Veri seti çok büyük ve gürültülüdür (Noisy). Modelin "genellenebilirliği" (Generalization) daha zordur.
  • Teknofest: Veri seti daha "butik" ve temizdir. Radyologlar tarafından 3 aşamalı kontrolden geçirilmiş, kesin tanılı verilerdir. Ancak veri az olduğu için Overfitting (Aşırı öğrenme) riskine karşı dikkatli olunmalıdır.

5. Final Günü Hazırlığı: Sınav Atmosferi

Final alanına geldiğinizde sadece yazılım bilginiz değil, kriz yönetiminiz de test edilir. Hocamızın hayati önerileri:

  • İnternetsiz Çalışma: Alanda internet çok yavaş veya kesik olabilir. Tüm kütüphaneleri (PyTorch, TF, OpenCV) önceden kurup, modellerinizi internetsiz çalışacak şekilde yedekleyin.
  • Donanım: Yanınızda mutlaka güçlü bir yedek bilgisayar götürün. Final çıkarımı (Inference) için sınırlı süreniz (genelde 1 saat) olacak.
  • Formatlar: Sonuçları genelde bir JSON objesi olarak yüklemeniz beklenir. Kodunuzun bu formatı hatasız ürettiğinden emin olun.

Sıkça Sorulan Sorular (SSS)

1. Mühendislik okumayan biri bu yarışmada başarılı olabilir mi?
Evet! Alperen Hocamız bunun en canlı örneğidir. Ciddi bir çalışmayla (yaklaşık 1-2 yıl) bir bilgisayar mühendisi seviyesine gelmek mümkündür.

2. Yarışmada bulut tabanlı (Colab/Kaggle) araçlar kullanılabilir mi?
Ön hazırlık aşamasında evet, ancak final anında internet kullanımı yasak olabilir. Tüm işlemlerinizi yerel (local) donanımınızda yapabilmelisiniz.

3. Takım kurarken nelere dikkat edilmeli?
Görev dağılımını en baştan yapın (Veri temizliği, Rapor yazımı, Model eğitimi). İletişim sorunu olmayan, disiplinli arkadaşları seçmek "zaman çizelgesine" uymak için kritiktir.

Sonuç

Yapay zeka sadece bilgisayar mühendislerinin tekelinde değil; her disiplinden gelen uzmanın kendi bilgisiyle harmanladığında devrim yaratabileceği bir alandır. Alperen Hocamızın başarısı, sabır ve doğru kaynak takibinin sonucudur. Siz de Teknofest'e katılarak bu ekosistemin bir parçası olabilirsiniz.

Daha Fazlasını Keşfedin:
Yapay zeka, derin öğrenme ve modern yazılım dünyasındaki güncel gelişmeleri, Türkçe ve İngilizce anlatımlarla takip etmek için Murat Karakaya Akademi kanalımıza davetlisiniz.

Kanalı Ziyaret Et & Abone Ol 🚀

#MuratKarakayaAkademi #Teknofest #YapayZeka #SağlıktaYapayZeka #DeepLearning #Python #DICOM #DrAlperenKaban