Skip to content

"Yapay Zeka ve Uygulama Akademisi" bünyesinde "DATAAI27" takımı olarak, mezuniyet bootcamp'i için hazırladığımız "Sağlık Teması: Kalp Krizi Analizi ve Tahmini" projemiz bu repo içinde yer almaktadır.

License

Notifications You must be signed in to change notification settings

StarLordBerke4/KalpKriziAnalizi_DATAAI27

Repository files navigation

🫀KalpKriziAnalizi_DATAAI27🫀

"Yapay Zeka ve Uygulama Akademisi" bünyesinde "DATAAI27" takımı olarak, mezuniyet bootcamp'i için hazırladığımız "Sağlık Teması: Kalp Krizi Analizi ve Tahmini" projemiz bu repo içinde yer almaktadır.

📌Takım İsmi

DATAAI27

👾Takım Logosu

👥Takım Üyeleri

  • Seda CANPOLAT | Product Owner and UI&UX Designer
  • Berke Mert ÖZTÜRK | Scrum Master and Developer
  • Gamze GEZGİN | Developer
  • Beyza GÜVERCİN | Developer
  • Yücel Baran TUNCER | Developer
  • Gamze YAŞ | UI&UX Designer

👽Tema

❤️ Sağlık Teması

😎Proje İsmi

🫀Kalp Krizi Analizi ve Tahmini🫀

🤖 Proje Açıklaması

Bu proje, T3 Vakfı çatısı altında faaliyet gösteren Yapay Zeka ve Teknoloji Akademisi’nin bootcamp süreci kapsamında, DATAAI27 takımı tarafından hayata geçirilmiştir. Takımımız, veri bilimi ve yapay zeka alanında kendini geliştirmeyi hedefleyen farklı disiplinlerden gelen bireylerden oluşmaktadır. Proje süresince, takım üyeleri olarak veri analizi, makine öğrenmesi algoritmaları, model değerlendirme teknikleri ve görselleştirme araçları konusunda işbirliği içinde çalıştık. Amacımız, sağlık alanında toplumsal etkisi yüksek bir konu olan kalp krizi riskini öngörebilen, güvenilir ve yorumlanabilir bir model geliştirmekti. Bu süreçte hem teknik yetkinliklerimizi geliştirdik hem de takım çalışması, proje yönetimi ve problem çözme gibi profesyonel becerilerimizi pekiştirme fırsatı bulduk.

Kalp Krizi Analizi ve Tahmini projemiz DATAAI27 takımı tarafından, kalp krizi riskinin tahminine yönelik olarak gerçekleştirilmiştir. Projede; keşifsel veri analizi (EDA), eksik değer analizi, kategorik ve sayısal özellik ayrımı, verilerin standartlaştırılması, kutu-grafik, sürü-grafik, kedigrafik ve korelasyon analizleri ile verinin yapısı detaylıca incelenmiştir. Aykırı değer tespitinden sonra farklı makine öğrenmesi modelleri uygulanmış, hiperparametre ayarlamaları ile en iyi sonuçlar elde edilmeye çalışılmıştır.

🧠 Proje Hakkındaki Düşüncelerimiz

Proje süreci, hem teknik bilgimizi pekiştirmemiz hem de takım çalışması becerimizi geliştirmemiz açısından oldukça verimli geçti. Sağlık alanında anlamlı ve gerçek hayatla ilişkili bir problem üzerinde çalışmak, veri biliminin sosyal etkisini daha iyi kavramamıza yardımcı oldu. Özellikle veri temizliği, görselleştirme teknikleri ve model seçimi gibi aşamalar, bizlere makine öğrenimi sürecinin ne kadar dikkat ve özen gerektirdiğini gösterdi. Ayrıca, farklı modellerin karşılaştırılması ve yorumlanabilirliğin ön planda tutulması, yalnızca yüksek doğruluk değil, anlamlı ve güvenilir sonuçlar üretmenin önemini vurguladı. Genel olarak bu proje, teknik bilgi ile toplumsal faydayı birleştirme noktasında bize önemli katkılar sağladı.

🧑‍⚕️ Proje İçerisinde Hangi Konulara Değineceğiz?

  • EDA-Keşifsel Veri Analizi
  • Eksik Değer Analizi
  • Kategorik ve Sayısal Özellikler
  • Standartlaştırma
  • Kutu - Sürü - Kedi - Korelasyon Grafiği Analizi
  • Aykırı Değer Tespiti
  • Modelleme ve Makine Öğrenimi Modelini Ayarlama

❤️ Kalp Krizi Hakkında

  • Kalp krizi, miyokard enfarktüsü olarak da adlandırılır, kalp kasının bir kısmına yeterli kan gitmediğinde meydana gelir.
  • Kan akışını geri kazandırmak için tedavi edilmeden geçen süre ne kadar uzun olursa, kalp kasına verilen hasar da o kadar büyük olur.
  • Koroner arter hastalığı (KAH), kalp krizinin başlıca nedenidir.
  • KAH, kalbi besleyen atardamarların (koroner arterler) genellikle yağ ve kolesterol birikimiyle daralması veya tıkanması sonucu oluşur. Bu duruma ateroskleroz denir.
  • Belirtiler genellikle göğüste ağrı veya rahatsızlık, nefes darlığı, kola (özellikle sol kola), çeneye, sırta veya mideye yayılan ağrı şeklinde kendini gösterir. Bazı durumlarda ise belirtiler daha hafif olabilir veya hiç görülmeyebilir (sessiz kalp krizi).
  • Kalp krizi riskini artıran faktörler arasında yüksek tansiyon, yüksek kolesterol, diyabet, obezite, sigara kullanımı, fiziksel hareketsizlik ve stres yer alır. Genetik yatkınlık da önemli bir risk faktörüdür.
  • Kalp krizi geçiren kişilerde hızlı tıbbi müdahale hayati önem taşır. Acil tedavi genellikle kan pıhtısını çözücü ilaçları (trombolitikler), balon anjiyoplasti veya stent yerleştirme gibi yöntemleri içerir.
  • Kalp krizinden korunmak için sağlıklı bir yaşam tarzı benimsemek, düzenli egzersiz yapmak, dengeli beslenmek ve risk faktörlerini yönetmek büyük önem taşır.

🛠️ Pazarlama Planı

🟦 Ne Yaptık ve Neden Önemli?

Bu projede kalp krizi riskini erken aşamada tahmin etmeye yönelik bir yapay zeka modeli geliştirdik. Temel amacımız, hastanelerin veya dijital sağlık platformlarının insanların sağlık verileri üzerinden hızlı, doğru ve önleyici kararlar alabilmesini sağlamak. Veri temizleme, görselleştirme ve lojistik regresyon başta olmak üzere çeşitli modellemelerle ilerledik. Bu teknik süreçleri, herkesin anlayabileceği bir dille sadeleştirdik. Yani teknikle hayat arasında bir köprü kurduk.

🟦 Hedef Kitle Kimdir?

  • Özel hastaneler ve sağlık zincirleri
  • Sağlık girişimleri ve dijital sağlık uygulamaları
  • Kamu kurumları, toplumsal sağlık taramaları için
  • Sigorta şirketleri, risk skorlaması için
  • Ve sağlıkla ilgilenen herkes.

🟦 Projeyi Nasıl Duyuracağız? / Tanıtım Faaliyetleri

  • LinkedIn ve Kaggle üzerinden içerik paylaşımı: Projenin öne çıkan görselleri, ROC eğrisi, veri analizinden alınan iç görüler sade ve dikkat çekici bir dille paylaşılacak.
  • Medium’da proje yazısı: Hikâye anlatımı şeklinde teknik süreci, verinin nasıl şekillendiğini ve sağlık alanına katkısını yazacağız.
  • Demo sayfası veya mini web arayüzü: Kullanıcılar yaş, cinsiyet, kolesterol gibi birkaç temel bilgiyi girerek risk skorunu görsün.
  • YouTube veya Instagram Reels/Shorts: "Kalp Krizi Riskini Yapay Zeka ile Tahmin Etmek Mümkün mü?" tarzında 1 dakikalık içerikler.

🟦 Gelecekte Projeyi Nasıl Geliştireceğiz?

  • Daha büyük veri setleriyle model performansını artıracağız.
  • Mobil uygulamaya entegre ederek kişiselleştirilmiş sağlık önerileri sunmak.
  • Hastane takibi yapan platformlara API olarak entegre etmek.
  • Farklı modelleri (Random Forest, XGBoost, Deep Learning) deneyip karşılaştıracağız.

🟦 Proje İçerindeki Tonumuz Nasıl Olacak?

Ne çok akademik ne de çok havalı. Biz anlaşılır, dürüst, samimi ve içgörü dolu bir dille konuşacağız. Amacımız teknolojiyi korkulacak bir şey olmaktan çıkarıp insanların hayatına değen bir araca dönüştürmek.

🌐 Web Sitesi Tanıtımı

Kaggle üzerinde geliştirilen “Sağlık Teması: Kalp Krizi Analizi ve Tahmini” projemizi, herkesin kolayca ulaşabileceği bir formatta sunmak amacıyla bir "tek sayfalık tanıtım web sitesi" oluşturduk. Bu site, projenin amacını, kullanılan yöntemleri, görselleştirmeleri ve sonuçları sade ve kullanıcı dostu bir tasarımla aktarır. Aynı zamanda kullanıcıların canlı uygulamaya ulaşabileceği bağlantılar, örnek tahmin senaryoları ve hedef kitleye yönelik mesajlar da içerir. Böylece hem teknik kullanıcılar hem de sağlık sektörü paydaşları projeyi anlayabilir ve değerlendirebilir.

Web sitesinin amacı sadece projeyi tanıtmak değil, aynı zamanda farkındalık oluşturmak ve projenin potansiyel kullanım alanlarını genişletmektir. Bu sayfa üzerinden hem canlı model demo bağlantısına ulaşılabilir hem de iş birliği yapmak isteyen kurumlar iletişim kurabilir. Kurumlar veya bireyler için güven verici, anlaşılır ve sade bir anlatım dili benimsenmiştir.

🤖 Kullanılan Teknolojiler ve Kütüphaneler

💻 Python Dili Hakkında

Python, basit sözdizimi, geniş kütüphane desteği ve açık kaynak yapısıyla günümüzde en yaygın kullanılan programlama dillerinden biridir. Öğrenmesi kolay ve okunabilir olması sayesinde hem başlangıç seviyesindeki kullanıcılar hem de profesyoneller tarafından tercih edilir. Özellikle veri bilimi ve yapay zeka alanlarında sunduğu güçlü kütüphaneler (pandas, NumPy, scikit-learn, TensorFlow, PyTorch vb.) sayesinde veri analizi, makine öğrenmesi ve derin öğrenme projelerinde vazgeçilmez bir araç haline gelmiştir. Python, esnek yapısı ve topluluk desteği ile modern teknolojilerin merkezinde yer alır.

🛠️ Projede Kullanılan Kütüphaneler

  • NumPy, sayısal hesaplamalar için kullanılan temel bir Python kütüphanesidir. Özellikle vektör ve matris gibi çok boyutlu dizilerle çalışmak için kullanılır. Veri bilimi projelerinde hızlı matematiksel işlemler yapmamızı sağlar.
  • Pandas, veri analizi ve işleme konularında en yaygın kullanılan kütüphanelerden biridir. Verileri tablo şeklinde (DataFrame) düzenlememize, CSV veya Excel gibi dosyaları okumamıza ve üzerinde filtreleme, gruplama gibi işlemler yapmamıza olanak tanır.
  • Matplotlib, veri görselleştirme amacıyla kullanılır. Grafik, histogram, çizgi grafiği gibi temel görsel çıktılar üretir. Verilerin görsel yorumlanmasını kolaylaştırarak analiz sürecini destekler.
  • Seaborn, Matplotlib üzerine kurulu, daha gelişmiş ve estetik grafikler oluşturmamıza olanak sağlayan bir kütüphanedir. Özellikle istatistiksel grafikler ve korelasyon analizlerinde sıkça tercih edilir.
  • OS, işletim sistemiyle etkileşim kurmamıza yarayan bir kütüphanedir. Dosya yollarını okumak, dizinleri gezmek ve sistem üzerindeki dosyaları listelemek için kullanılır.
  • LogisticRegression (scikit-learn), sınıflandırma problemlerinde kullanılan temel bir makine öğrenmesi algoritmasıdır. İki sınıf arasında olasılık temelli bir tahmin yaparak sonuç üretir.
  • StandardScaler, verileri standardize etmek yani ortalaması 0 ve standart sapması 1 olacak şekilde ölçeklemek için kullanılır. Bu işlem, özellikle makine öğrenmesi modellerinin daha sağlıklı öğrenmesi için önemlidir.
  • train_test_split, veri setini eğitim ve test olarak ikiye böler. Böylece model, bir kısmı üzerinde eğitilirken kalan veriyle performansı test edilir.
  • GridSearchCV, modelin hiperparametrelerini sistemli bir şekilde deneyerek en iyi kombinasyonu bulmayı sağlar. Modelin doğruluğunu artırmak için kullanılır.
  • accuracy_score, modelin tahminlerinin doğruluk oranını hesaplar. Gerçek etiketlerle tahmin edilen etiketlerin ne kadar örtüştüğünü yüzdelik olarak verir.
  • roc_curve, sınıflandırma modellerinin performansını ROC eğrisi üzerinden analiz etmeyi sağlar. Modelin duyarlılığı ve özgüllüğü gibi değerleri görsel olarak değerlendirmek için kullanılır.
  • Warnings, çalışma sırasında oluşabilecek uyarı mesajlarını kontrol eder. Gereksiz uyarıların ekrana çıkmasını engelleyerek kodun daha temiz görünmesini sağlar.

  • Kaggle veri bilimi ve makine öğrenimi alanlarında yarışmalar düzenleyen, açık veri setleri sunan ve kullanıcıların projelerini paylaşabildiği bir platformdur. Google'a bağlıdır ve veri analizi, model geliştirme ve yapay zeka uygulamaları üzerine çalışmak isteyenler için global bir topluluk sunar. Ayrıca Python ve R kodlarıyla etkileşimli çalışma yapılabilen "Notebook" sistemi sayesinde kullanıcılar projelerini doğrudan platform üzerinde geliştirebilir.

  • Kaggle, veri bilimi meraklılarının projelerini paylaşabileceği, öğrenebileceği ve yarışabileceği küresel bir platformdur. Kullanıcılar burada çeşitli veri setlerine erişebilir, makine öğrenimi modelleri geliştirebilir ve diğer katılımcılarla fikir alışverişinde bulunabilir. Ayrıca Kaggle, veri bilimi kariyerine yeni başlayanlar için öğretici içerikler ve kod örnekleri sunarak uygulamalı öğrenmeyi destekler. Platformun sunduğu yarışmalar sayesinde kullanıcılar gerçek dünya problemleri üzerinde çalışma ve ödül kazanma fırsatı yakalarlar. Özellikle Python ve veri analizi becerilerini geliştirmek isteyenler için oldukça faydalıdır.

🛠️ Kullanılan Web Teknolojileri

  • Figma, kullanıcı arayüzü (UI) ve kullanıcı deneyimi (UX) tasarımı için kullanılan bulut tabanlı bir tasarım ve prototipleme aracıdır. Tarayıcı üzerinden çalıştığı için kurulum gerektirmez ve farklı platformlardan kolay erişim sağlar. Figma’nın en güçlü yönlerinden biri, ekip üyelerinin aynı anda bir projede iş birliği yapabilmesidir; bu sayede gerçek zamanlı düzenleme, yorum yapma ve geri bildirim alma süreçleri hızlanır. Tasarımcılar arayüz çizimleri, prototipler ve bileşen sistemleri oluşturabilirken geliştiriciler de doğrudan tasarım üzerinden CSS gibi kodları görebilir. Eğitimden profesyonel projelere kadar geniş bir kullanım alanına sahiptir.

  • Web sitesinin temel yapısı HTML (HyperText Markup Language) ile oluşturulmuştur. HTML, sayfanın iskeletini ve içerik yapısını belirler: başlıklar, paragraflar, görseller, bağlantılar gibi her şey HTML ile tanımlanır. Projenin içeriği anlaşılır bir şekilde bölümlere ayrılmış, kullanıcı dostu bir deneyim hedeflenmiştir.

  • Siteye görsel estetik ve düzen kazandırmak için CSS (Cascading Style Sheets) kullanılmıştır. Arka plan renkleri, başlık stilleri, kutu yapıları, buton tasarımları ve responsive (mobil uyumlu) yapı CSS ile sağlanmıştır. Eğer daha interaktif özellikler (örneğin form doğrulama, animasyonlu bileşenler veya veri çekme) eklenmek istenirse, bu noktada JavaScript devreye girer. Şu anda proje tanıtımında temel HTML + CSS yeterli olsa da, ileride JavaScript desteğiyle form alanları, veri görselleştirme ve kullanıcı girişi gibi özellikler de entegre edilebilir.

👥Sprint Yol Haritamız

💙İlk Sprint:

  • Veri tanıma ve notebook üzerine çalışma
  • Generative AI kullanım beyin fırtınaları
  • Notebook’un ilk versiyonlarının tamamlanması +

💙İkinci Sprint:

  • Hangi web toolunun kullanacağının karar verilmesi
  • Modelin canlıya alınacak şekilde planlanması ve hazırlanması
  • Figma veya Adobe Xd programramları ile web sitesinin arayüz tasarımının hazırlanması.
  • Web sitesinin tasarımı ve fonksiyon çalışmalarının başlanması
  • Generative AI girişimlerinin proje ve fonksiyon denemeleri

💙Üçüncü Sprint:

  • Generative AI final
  • Web sitesi final
  • Testing

📈 Proje Bağlantıları

❤️ Sonuç ve Öneriler

💡 Öneriler

Bu çalışmanın devamında daha büyük ve çeşitli sağlık veri setleriyle modeli besleyerek daha sağlam ve güvenilir tahminler elde edilebilir. Ayrıca farklı algoritmalar (RandomForest, XGBoost, hatta derin öğrenme) ile model performansı karşılaştırılabilir. Projenin pratikte kullanılabilmesi için sade bir arayüz üzerinden halka açık test edilebilir hale getirilmesi de önemli bir adım olacaktır. En nihayetinde, sağlık alanında veri temelli kararlar almak için böyle sistemlerin yaygınlaşması gerekiyor ve biz de bunun ilk adımını attık diyebiliriz.

✅ Sonuç

Bu proje sayesinde kalp krizi riskini etkileyen temel sağlık göstergeleri üzerinde veri bilimiyle nasıl analiz yapılabileceğini ve bu verilerle makine öğrenmesi modellerinin nasıl eğitilebileceğini ortaya koyduk. Lojistik regresyon modeli ile oldukça tatmin edici bir doğruluk oranı yakaladık ve veri ön işleme, görselleştirme gibi adımların model başarısına olan etkisini net bir şekilde gördük. Temel mesajımız şu oldu: Kendi verimizi anlamak, bize sağlığımız hakkında erken ve anlamlı sinyaller verebilir.

📂Sprint 1: Projeye İlk Adım

🧙‍♂️ Sprint 1 Değerlendirme Notu (Scrum Master) - Berke Mert ÖZTÜRK

📋Sprint 1 Notları

  • Sprint 1 sürecinde, proje ekibi olarak temel yapı taşlarımızı belirleyerek işe başladık. Tema olarak “Sağlık” alanı seçildi ve bu kapsamda “Kalp Krizi Analizi ve Tahmini” konusuna odaklanıldı. Kaggle üzerinden temin edilen veri setiyle çalışılarak Python programlama dili ve ilgili kütüphaneler (Pandas, NumPy, Matplotlib, Seaborn, Scikit-learn vb.) aracılığıyla kapsamlı bir veri analizi gerçekleştirildi. Bu analiz sürecinde, veri setinin yapısı incelenip eksik veriler temizlendi, istatistiksel görselleştirmeler ve değişkenler arası ilişkiler ortaya kondu ve tahmin modelleri oluşturulmaya başlandı. Teknik ilerlemelerin takibi ve iş birliğinin sağlanması amacıyla GitHub üzerinde bir proje reposu açıldı.

  • Bu repoya (https://github.com/StarLordBerke4/KalpKriziAnalizi_DATAAI27) Kaggle üzerinde hazırlanan analiz not defteri entegre edildi. Ayrıca, projenin amacı, kullanılan yöntemler ve gelecek sprintlerde izlenecek yol haritasını açıklayan kapsamlı bir README dosyası oluşturularak paylaşıldı.

  • 🟦Sprint Aracı: Takım olarak proje yönetiminde "Notion" platformunun kullanılması kararlaştırılmıştır.

  • 🟦Sprint İçinde Tamamlanması Tahmin Edilen Puan: 100 Puan

  • 🟦Puan Tamamlama Mantığı: Toplamda proje boyunca tamamlanması gereken 300 puanlık backlog bulunmaktadır. Proje 3 sprint'e bölündüğünde ilk sprint'in en azından 100 ile başlaması gerektiğine karar verildi.

📈Daily Scrum

  • Daily Scrum toplantıları haftada bir "Google Meet" platformu üzerinden gerçekleştirilmiştir. Proje süreci ve proje durumu ile ilgili kapsamlı planlar ve yol haritası bu toplantılar ile belli olmuştur. Ayrıca; Slack ve Whatsapp üzerinden kurmuş olduğumuz; Bootcamp 27 isimli gruplar üzerinden proje ile ilgili beyin fırtınası ve kaynak paylaşımları gerçekleştirilmiştir.

  • Yapılan takım toplantısı ekran görüntüsü.

💻Backlog Düzeni

  • Backlog'umuz tarihlere göre düzenlenmiştir. Ayrıca yapılacak işler (tags) Sprint 1,2 ve 3 için gruplara bölünerek sıralanmıştır.

  • Yapılacak işlerin önem derecesi high, medium ve low ile ifade edilmiştir "Notion" üzerinden. Tamamlanan görevler; "Compluted" devam eden görevler ise; "İn Progress" olarak ifade edilmiştir.

  • Sprint 1 Dökümanları: https://www.notion.so/Sprint-1-2241183cdf848091acfad131302aeb95?source=copy_link

🎑Sprint Board Update

  • Sprint board ekran görüntüleri.

📈Sprint Analizi

📂Proje Durumu

  • Kaggle üzerinden temin edilen veri setiyle çalışılarak sağlık teması çerçevesinde, "Kalp Krizi" veri analizi gerçekleştirilmiştir. Yapılan analiz sonucunda elde edilen, proje dosyası "KalpKriziAnalizi_V9.ipynb" github repoza dahil edilmiş ve kaggle linki olarakta eklenmiştir.

  • Kaggle Proje Linki: https://www.kaggle.com/code/starlordberke/sa-l-k-temas-kalp-krizi-analizi-ve-tahmini

  • Sprint 1 sonunda projenin son durumuna ilişkin ekran görüntüleri aşağıda verilmiştir.


KaggleVeriAnalizi.mp4

Not:

  • Sprint 1 içerisinde yer alan kaggle platformu üzerindeki, veri analizi ve proje yönetimi "Berke Mert ÖZTÜRK" arkadaşımız tarafından yapılmıştır. Ayrıca projenin ilerki sprintlerindeki proje yönetimi sürecide kendisi tarafından gerçekleştirilecektir.

📌Sprint Review

  • Bu sprintin sonunda, projenin teması ve konusu netleşmiş, ilk veri analizi başarıyla tamamlanmış ve teknik dokümantasyonla birlikte proje altyapısı sağlam bir şekilde kurulmuş oldu.

😎Sprint Review Katılımcıları

  • Seda CANPOLAT
  • Berke Mert ÖZTÜRK
  • Gamze GEZGİN
  • Beyza GÜVERCİN
  • Yücel Baran TUNCER

👾Asistana Not

  • "Gamze YAŞ" arkadaşımız YZTA tarafından ekibe sonradan dahil edildiği için sprint 1 toplantısına katılamamıştır. Ancak kendi "UI&UX Designer" olarak Seda CANPOLAT arkadaşımız ile Sprint 2 içerisinde hazırlanacak web sitesinin arayüz tasarımında aktif olarak rol alacaktır.

📌Sprint Retrospective

  • Veri tanıma ve notebook üzerin çalışmalar tamamlanacak.
  • Generative AI kullanım beyin fırtınaları yapılacak.

📂Sprint 2: Proje Ortaya Çıkıyor

🧙‍♂️ Sprint 2 Değerlendirme Notu (Scrum Master) - Berke Mert ÖZTÜRK

📋Sprint 2 Notları

  • Sprint 2 kapsamında, projede önemli aşamalar kaydedilmiştir. Veri analiz süreci tamamlandıktan sonra elde edilen bulgular doğrultusunda canlıya alınması planlanan web uygulamasının kullanıcı arayüzü tasarımları oluşturulmuştur. Tasarım süreci, ekip üyelerinden Seda CANPOLAT ve Gamze YAŞ tarafından Figma programı aracılığıyla gerçekleştirilmiş, kullanıcı dostu ve estetik bir UI ortaya konmuştur. Arayüzde kullanıcıdan alınacak sağlık verilerinin doğru ve anlaşılır biçimde toplanması ve tahmin sonuçlarının görsel olarak sunulması amaçlanmıştır. Bu aşamada ayrıca Yücel Baran TUNCER tarafından model tarafında iyileştirmeler yapılmış; daha doğru tahminler verebilen ve veri setine daha iyi uyum sağlayan bir yapay zeka modeli geliştirilmiştir. Yapılan bu geliştirmeler, GitHub reposunda StarLordBerke4/KalpKriziAnalizi_DATAAI27 adresinde dokümante edilmiştir. Tüm bu çalışmalar, projenin fonksiyonel ve görsel açıdan bütünsel bir yapıya kavuşmasını sağlamış; bir sonraki sprintte web sitesinin entegrasyon, kodlanma ve test sürecine geçiş için zemin oluşturmuştur.

  • 🟦Sprint 2 Aracı: Takım olarak proje yönetiminde "Notion" platformunun kullanılması kararlaştırılmıştır.

  • 🟦Sprint 2 İçinde Tamamlanması Tahmin Edilen Puan: 100 Puan

  • 🟦Puan Tamamlama Mantığı: Toplamda proje boyunca tamamlanması gereken 300 puanlık backlog bulunmaktadır. Proje 3 sprint'e bölündüğünde ikinci sprint'in en azından 100 olması gerektiğine karar verildi.

📈Daily Scrum

  • Daily Scrum toplantıları haftada bir "Google Meet" platformu üzerinden gerçekleştirilmiştir. Proje süreci ve proje durumu ile ilgili kapsamlı planlar ve yol haritası bu toplantılar ile belli olmuştur. Ayrıca; Slack ve Whatsapp üzerinden kurmuş olduğumuz; Bootcamp 27 isimli gruplar üzerinden proje ile ilgili beyin fırtınası ve kaynak paylaşımları gerçekleştirilmiştir.

  • Yapılan takım toplantısı ekran görüntüsü. "13 Temmuz 2025" tarihinde sprint 2 değerlendirme toplantısı yapılmıştır.

  • Yapılan takım toplantısına tüm ekip, tam kadro halinde katılmıştır.

💻Backlog Düzeni

🎑Sprint 2 Board Update

  • Sprint 2 board ekran görüntüleri.

📈Sprint 2 Analizi

📂Proje Durumu

  • Sprint 2 iki parçaya bölünmüştür. İlk kısımda Web sistesinin UI arayüz tasarımı yapılmıştır. İkinci kısımda ise model üzerine geliştirmeler ve backend entegrasyonları gereçkleştirilmiştir.

🧙‍♂️ Sprint 2 Kısım 1: UI Tasarım

Not:

  • Sprint 2 içerisinde yer alan web sitesi UI tasarımını ekip arkadaşlarımızdan "Seda CANPOLAT" ve "Gamze Yaş" üstlenmiştir.

🧙‍♂️ Sprint 2 Kısım 2: Model Üzerine Yapılan Gelişmeler ve Backend

💻 Kalp Krizi Prediction API (FastAPI + Railway)

📋 Açıklama

Bu API, kullanıcının sağlık verilerine göre kalp krizi riski tahmini yapar ve Gemini API desteği ile Türkçe açıklama/öneriler üretebilir.
Railway üzerinde FastAPI framework kullanılarak deploy edilmiştir ve yapılan tahminleri PostgreSQL veritabanına kaydeder.

📌 Base URL

https://kalpkrizibackendmodel-production.up.railway.app

⚙️ Kullanılabilir Endpoint'ler

🟦 GET /

Healthcheck endpoint.

Örnek Response:

{ 
  "message": "Unified backend with /predict + /ask-ai running on Railway!" 
}

🟦 POST /predict

Sağlık verilerini JSON formatında göndererek tahmin sonucu alınır.
Opsiyonel olarak ?explain=true query parametresi kullanarak Gemini API'den açıklama ve öneriler de istenebilir.

Headers: Content-Type: application/json

Request örneği:

{
  "age": 60,
  "sex": 1,
  "cp": 0,
  "trtbps": 140,
  "chol": 240,
  "fbs": 0,
  "restecg": 1,
  "thalachh": 150,
  "exng": 0,
  "oldpeak": 1.2,
  "slp": 1,
  "caa": 0,
  "thall": 2
}

Response örneği (?explain=true ile):

{
  "prediction": 1,
  "prediction_probability": 0.6493,
  "outcome_message": "Yüksek kalp krizi riski tespit edildi (Güven: 64.93%)",
  "explanation": "Kullanıcının sağlık verilerine göre kalp krizi riski yüksektir. Sigara kullanımını bırakması, sağlıklı beslenmesi ve düzenli egzersiz yapması önerilir."
}

🟦 POST /ask-ai

Serbest metin sorularını Gemini API üzerinden cevaplar.

Headers: Content-Type: application/json

Request örneği:

{
  "question": "Kalp krizi risk faktörleri nelerdir?"
}

Response örneği:

{
  "answer": "Kalp krizi risk faktörleri arasında hipertansiyon, yüksek kolesterol, sigara kullanımı, diyabet ve obezite bulunur."
}

📋 Frontend Takımı İçin Notlar

  • API CORS desteği açık (allow_origins=["*"]).
  • JSON body formatı yukarıdaki örneklere uygun olmalıdır.
  • Tüm response'lar JSON formatındadır.
  • Content-Type: application/json header'ı mutlaka gönderilmelidir.

📈 Environment Variables

  • DATABASE_URL: Railway PostgreSQL bağlantısı için gerekli.
  • GOOGLE_API_KEY: Gemini API için gerekli Google API Key.

⚙️ Kullanılan Teknolojiler

  • FastAPI
  • SQLAlchemy + PostgreSQL
  • Railway deploy ortamı
  • Python pickle (model ve scaler yüklemek için)
  • Google Gemini API entegrasyonu

Not:

  • Sprint 2 içerisinde model üzerine geliştirmeleri "Yücel Baran TUNCER" arkadaşımız yapmıştır. İlgili dosyalar takım repomuza dahil edilmiştir. Ancak ek olarak, "Yücel Baran TUNCER" arkadaşımızın kişisel github hesabı üzerinden de ilgili dosyalara ulaşabilirsiniz.

  • Baran Github: https://github.com/brntncr/kalpkrizi_backend_model


📌Sprint 2 Review

  • Bu sprintin sonunda, projenin UI arayüz tasarımı Figma ortamında hazırlanmıştır. Ayrıca model üzerine geliştirmeler yaparak çok daha sağlam veri analizi sonuçları elde edilmesi sağlanmıştır. Son olarak, web sitesi yapımının temelleri atılarak backend tasarımına başlanılmış ve gerekli teknolojiler ile backend tarafında da çalışılmıştır.

😎Sprint 2 Review Katılımcıları

  • Seda CANPOLAT
  • Berke Mert ÖZTÜRK
  • Gamze GEZGİN
  • Beyza GÜVERCİN
  • Yücel Baran TUNCER
  • Gamze YAŞ

Not: Sprint 2 içerisimde tüm ekip üyeleri aktif olarak çalışmıştır.

👾Asistana Not

  • Sprint 2 içerisinde takım kararıyla UI arayüz tasarımının yapılmasına ve modelin geliştirilmesine karar verilmiştir. Bu sebeple web sistesinin kodlanarak projenin canlıya alınması son sprint olan; sprint 3'e bırakılmıştır.

📌Sprint 2 Retrospective

  • Veri analizi tamamlandı ve modelin doğruluk oranı artırıldı.
  • Kullanıcı arayüzü tasarımı Figma ile oluşturuldu.
  • Seda ve Gamze, UI/UX tasarım sürecini başarıyla yürüttü.
  • Baran, makine öğrenmesi modelini optimize etti ve çıktıların daha güvenilir hale gelmesini sağladı.
  • Ekip içi görev dağılımı netleşti, iş birliği verimli ilerledi.
  • Web sistemine entegre edilecek modüller için temel taslaklar tamamlandı.
  • GitHub reposu düzenli olarak güncellendi ve belgelendi.

📂Sprint 3: Proje Sonu

🧙‍♂️ Sprint 3 Değerlendirme Notu (Scrum Master) - Berke Mert ÖZTÜRK

📋Sprint 3 Notları

  • Sprint 3 kapsamında projenin işlevsel hale getirilmesi adına önemli teknik adımlar başarıyla tamamlanmıştır. Önceki sprintlerde hazırlanan kullanıcı arayüzü tasarımlarının ardından, bu arayüzlerin HTML, CSS, JavaScript ve SQL teknolojileriyle kodlanarak dinamik bir yapıya dönüştürülmesi sağlanmıştır. Kullanıcıların sağlık verilerini kolayca girebileceği, tahmin sonuçlarını görsel olarak alabileceği mobil uyumlu ve kullanıcı dostu bir web sitesi oluşturulmuştur. Front-End kodlama süreci Gamze GEZGİN tarafından yürütülürken, Back-End geliştirme ve yapay zeka model entegrasyonu Beyza GÜVERCİN tarafından tamamlanmıştır. Bu süreçte modelin doğru ve hızlı çalışabilmesi adına veritabanı bağlantıları, API endpoint'leri ve form entegrasyonları gerçekleştirilmiştir.

  • Ayrıca, test süreci boyunca sistemin hatasız çalışması adına çeşitli senaryolar test edilmiş; kullanıcı deneyimini aksatabilecek noktalar iyileştirilmiştir. Kodlar ve proje belgeleri güncel şekilde GitHub reposuna yüklenmiş ve versiyon kontrolü sağlanmıştır. Sprint sonunda proje, temel işlevleriyle birlikte yayına hazır hale getirilmiş ve kullanılabilir bir web uygulaması formuna kavuşmuştur. Bu aşama, projenin fonksiyonel olarak tamamlanması ve nihai sunum için hazır duruma gelmesini sağlamıştır.

  • 🟦Sprint 3 Aracı: Takım olarak proje yönetiminde "Notion" platformunun kullanılması kararlaştırılmıştır.

  • 🟦Sprint 3 İçinde Tamamlanması Tahmin Edilen Puan: 100 Puan

  • 🟦Puan Tamamlama Mantığı: Toplamda proje boyunca tamamlanması gereken 300 puanlık backlog bulunmaktadır. Proje 3 sprint'e bölündüğünde üçüncü sprint'in 100 olması gerektiğine karar verildi.

📈Daily Scrum

  • Daily Scrum toplantıları haftada bir "Google Meet" platformu üzerinden gerçekleştirilmiştir. Proje süreci ve proje durumu ile ilgili kapsamlı planlar ve yol haritası bu toplantılar ile belli olmuştur. Ayrıca; Slack ve Whatsapp üzerinden kurmuş olduğumuz; Bootcamp 27 isimli gruplar üzerinden proje ile ilgili beyin fırtınası ve kaynak paylaşımları gerçekleştirilmiştir.

  • Yapılan takım toplantısı ekran görüntüsü. "01 Ağustos 2025" tarihinde sprint 3 değerlendirme toplantısı yapılmıştır.

  • Yapılan takım toplantısına tüm ekip, tam kadro halinde katılmıştır.

💻Backlog Düzeni

  • Backlog'umuz tarihlere göre düzenlenmiştir. Ayrıca yapılacak işler (tags) Sprint 1,2 ve 3 için gruplara bölünerek sıralanmıştır.

  • Yapılacak işlerin önem derecesi high, medium ve low ile ifade edilmiştir "Notion" üzerinden. Tamamlanan görevler; "Compluted" devam eden görevler ise; "İn Progress" olarak ifade edilmiştir.

  • Sprint 3 Dökümanları: https://www.notion.so/Sprint-3-Proje-Sonu-2241183cdf8480e19e2cc4963a05c94e?source=copy_link

🎑Sprint 3 Board Update

  • Sprint 3 board ekran görüntüleri.

📈Sprint 3 Analizi

📂Proje Durumu

  • Sprint 3'ün başarıyla tamamlanmasının ardından proje, fonksiyonel olarak kullanılabilir ve yayına hazır bir dijital sağlık uygulamasına dönüşmüştür. Web sitesinin hem front-end hem de back-end geliştirmeleri tamamlanmış, yapay zeka modelinin sistemle entegrasyonu sağlanmıştır. Uygulama, kullanıcıların belirli sağlık verilerini girerek kalp krizi risklerini öğrenmelerini amaçlayan işlevsel bir arayüz sunmaktadır. Web sitesinde iki temel sayfa yer almaktadır: Ana Sayfa ve Sonuç Sayfası. Ana sayfada kullanıcılar yaş, cinsiyet, kolesterol seviyesi, kan basıncı gibi çeşitli sağlık metriklerini içeren bir form aracılığıyla verilerini sisteme girerler. Bu veriler, arka planda çalışan yapay zeka modeli tarafından analiz edilerek değerlendirilir. Kullanıcı formu doldurup gönderdiğinde yönlendirildiği Sonuç Sayfasında, girilen verilere göre hesaplanan kalp krizi riski kullanıcıya açık ve anlaşılır bir şekilde görsel olarak sunulur. Sistem, kullanıcı dostu ve mobil uyumlu bir tasarıma sahiptir; aynı zamanda doğru veri analizi ve hızlı geri dönüş sağlayan bir altyapı üzerine kuruludur. Tüm kodlar ve dokümantasyon GitHub reposunda güncel olarak yayınlanmış, proje genel anlamda hedeflerine ulaşmış ve sonraki geliştirme aşamaları için sağlam bir temel oluşturmuştur.

  • Web Sitemiz: https://kalp-kriz-risk-analizi-bootcamp2025-ai27.onrender.com/

  • Sprint 3 sonunda projenin son durumuna ilişkin ekran görüntüleri aşağıda verilmiştir.

Not:

  • Sprint 3 içerisinde web sitemizin frontend ve backend teknolojileri ile kodlanmasını "Gamze GEZGİN" arkadaşımız yapmıştır. İlgili dosyalar takım repomuza dahil edilmiştir. Ancak ek olarak, "Gamze GEZGİN" arkadaşımızın kişisel github hesabı üzerinden de web sitesi ile ilgili dosyalara ulaşabilirsiniz.

  • Gamze Github: https://github.com/gamzegezgin/bootcamp-2025-data27

👉 Proje Tamamlanma Durumu:

Proje, Sprint 3'ün başarıyla tamamlanmasıyla birlikte işlevsel ve görsel olarak tamamlanmış bir yapıya ulaşmıştır. Tüm görevler zamanında ve %100 başarıyla yerine getirilmiştir.

📌Sprint 3 Review

  • UI/UX tasarımları önceki sprintte hazırlanmıştı, başarı ile bu sprintte yazılım süreçlerine entegre edilmiştir.
  • Web sitesinin front-end ve back-end geliştirmeleri tamamlanmış, yapay zeka modeli sisteme başarıyla entegre edilmiştir.
  • Projenin test süreci yürütülerek işlevsel hatalar giderilmiş, kullanıcı deneyimi iyileştirilmiştir.
  • Tüm kaynak kodlar ve dokümantasyonlar GitHub üzerinden erişime açılmıştır.

😎Sprint 3 Review Katılımcıları

  • Seda CANPOLAT
  • Berke Mert ÖZTÜRK
  • Gamze GEZGİN
  • Beyza GÜVERCİN
  • Yücel Baran TUNCER
  • Gamze YAŞ

Not: Sprint 3 içerisimde tüm ekip üyeleri aktif olarak çalışmıştır.

👾Asistana Not

Sprint 3 içerisinde hazırlamış olduğumuz web sitesinin dosyaları büyüktür. Bu sebeple bazı dosyaları github'a entegre ederken sorun yaşadık. Bu sorunu ise; iki şekilde çözdük;

  • İlk olarak, web sitesi dosyalarını "WİN RAR" yazılımı ile sıkıştırarak "Web_Sitesi_Backend_Frontend_DATAAI27-RAR" isimli klasör ile github repomuza dahil ettik. Web sitesi dosyalarını masaüstüne indirerek rar boş bir klasör içerisine ayıklayarak inceleyebilirsiniz.

  • İkinci olarak ise; gene web sitemizin dosya boyutunun büyük olması nedeni ile web sitesi dosyalarımızı google drivea yükleyerek link olarak repomuza dahil ettik.

📌Sprint 3 Retrospective

  • Kullanıcıdan alınan sağlık verileri üzerinden kalp krizi riski tahmini yapan bir yapay zeka destekli web uygulaması geliştirilmiştir.
  • Gerçek dünya problemini çözmeye odaklı, uygulanabilir bir dijital sağlık çözümü sunulmuştur.
  • Proje, sade ve kullanıcı dostu bir arayüze sahiptir.

🧙‍♂️Genel Sonuç:

Proje, belirlenen hedefler doğrultusunda başarılı şekilde tamamlanmıştır. Fonksiyonel, kullanıcı odaklı ve teknik açıdan sorunsuz çalışan bir sistem ortaya konmuş, proje çıktıları dokümante edilerek yayınlanmaya hazır hale getirilmiştir.

🎥Tanıtım Videosu

About

"Yapay Zeka ve Uygulama Akademisi" bünyesinde "DATAAI27" takımı olarak, mezuniyet bootcamp'i için hazırladığımız "Sağlık Teması: Kalp Krizi Analizi ve Tahmini" projemiz bu repo içinde yer almaktadır.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors