Kardiyovasküler hastalıklarının teşhisine yönelik makine öğrenmesi algoritmaları ile karar destek sistemi tasarımı
Decision support system design with machine learning algorithms for the diagnosis of cardiovascular diseases
Yazar: AMIR KARAJ
Danışman: DR. ÖĞR. ÜYESİ ZEHRA AYSUN ALTIKARDEŞ ; PROF. DR. ALİ SERDAR FAK
Marmara Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2023
Konu: Bilim ve Teknoloji = Science and Technology ; Mühendislik Bilimleri = Engineering Sciences
Dizin: Hipertansiyon = Hypertension ; Karar destek sistemleri = Decision support systems ; Kardiyovasküler hastalıklar = Cardiovascular diseases ; Kümeleme = Clustering ; Makine öğrenmesi = Machine learning

Özet:
Sağlık sektörü çok büyük ve hassas veriler içerir ve çok dikkatli bir şekilde ele alınması gerekmektedir. Büyük miktarda verinin erişilebilirliği ve kullanılabilirliği, belirli veri madenciliği teknikleri uygulandığında yararlı bilgiler sağlayabilecektir. Son yıllarda gelişen yapay zekâ ve makine öğrenme teknolojileri, tıp ve sağlık alanlarında hizmetlerini dönüştürmeye başlıyor. Şu anda sağlık alanlarında karar verme araçları yaygın olarak kullanılmaktadır. En doğru modelleri oluşturmak için birçok analiz ve sınıflandırma yöntemleri bulunmakta ve kullanılmaktadır. Hastalıkların tanı ve tedavisinde büyük bir rol oynamaktadır. Makine öğrenme algoritmaları birçok nadir hastalıklarda uygulanılmaktadır. Tıbbi uygulamalar araştırılmasında makine öğrenme teknikleri büyük bir rol oynamaktadır. 
Tezin amaç ve hedef doğrultusunda MEDIC-AI ML destekli web uygulaması geliştirildi. Geliştirilen web uygulamamız üzerinde farklı anonime veri setler kullanılmıştır. Kullanılan anonime veri setlerle, uygulama üzerine veri analizi, veri temizlenme gibi özellikler kullanıcıya sunulmuştur. Bu web uygulamada kullanıcı tarafından, veri tabanından yüklenen verilerden, istenilecek herhangi bir veri tablosu seçip, ilk önce verinin analizini ve incelemesini web uygulaması üzerine yapılabilme şeklinde tasarlanmış ve geliştirilmiştir. Daha sonra kullanıcıya sunulan ML algoritmalardan, istenilen bir algoritma seçerek kullanılan veri setleri, tablo üzerine bir örneklem seçerek tahminleme sonuçlarını ve bu sonuçların grafiklerini ve raporlarını inceleyebilmektedir. Sunulan farklı ML algoritmalar üzerine deneme ve tahminleme sonuçları alabilir, tahminleme sonuçlarının karşılaştırılması ve grafikler üzerine incelenme ve analizini yapabilir, kullanıcıya sunulan farklı grafikler üzerine veri incelenmesi ve analizi yapabilmesi gibi özelliklerle, web üzerine ML destekli bir uygulama geliştirilmiştir. 
Çalışma kapsamında sadece kardiyovasküler hastalıklarını araştırılmasına yönelik bir karar destek sistemi tasarlanmamıştır. Geliştirilen MEDIC-AI web uygulamamız, dosya yükleme özelliği ile veri tabanında yüklenecek anonime ya da herhangi bir veri seti ile farklı hastalıkların, kullanıcıya sunulan birden fazla (yedi (7)) makine öğrenme algoritma teknikleri ile tahminleme sonuçlarını ve analizlerini yapabilmektedir. Farklı makine öğrenme teknikleri kullanarak elde olan veri setlerini farklı açılardan yaklaşması ve incelenmesi yapılmıştır.  Elde edilen sonuçların değerlendirilmesi ve özetlenmesi yapılmıştır. Bu çalışmada regresyon algoritmaları yanı sıra kullanılan makine öğrenme algoritmaları, (K-Means) kümeleme ve sınıflandırma için Destek Vektör Makineleri (SVM), Yapay Sinir Ağları (ANN), K En Yakın Komşu (kNN), Karar Ağac (DT), Naive Bayes (NB) ve CatBoost algoritmalardır.  
Bu çalışmada veri setinin analizi, temizlenmesi ve araştırılması geliştirilen uygulama üzerine yapılmaktadır. Uygulama Python, Flask ve JavaScript ile birleşiminden oluşan Dash Plotly programlama platformu ile geliştirilmiştir. Python programlama dilli makine öğrenme, derin öğrenme ve veri madenciliği tekniklerinde çok güçlü ve kullanımı rahat olan dillerden biri olmaktadır. Dash Plotly geliştirme platformu, sunduğu plotly grafiklerini web üzerine canlı olarak grafik çizimi için en ideal platformlardan biri olmaktadır.

Abstract:
The healthcare industry contains huge and sensitive data and needs to be handled very carefully. The accessibility and usability of large amounts of data can provide useful insights when certain data mining techniques are applied. Machine learning technologies in artificial intelligence that are developed recent years are beginning to transform their services in medicine and health. Currently, decision-making tools are widely used in healthcare fields. There are many analysis and classification methods available and used to create the most accurate models.  It has an important role for diagnosis and treatment of diseases. Machine learning algorithms are applied on many difficult and rare diseases. Machine learning techniques play a major role in researching medical applications.
MEDIC-AI ML supported web application was developed in accordance with the goal and objective of this thesis. Various anonymous data sets are used in the web application we developed. The user is offered features like data analysis and data cleaning for the anonymous datasets used. This web application is developed in a way that user can select any desired data table from the anonymous data and load it from the database. After loading the data table user ca analyze and examine the data on the application. Then, by selecting a sample on the table and by choosing a desired algorithm from the ML algorithms presented, user can examine and analyses the result of the anonymous data sets results, can see the graphics and reports of these results. The application is developed with features such as testing and estimation results on different ML algorithms offered to users, comparison of estimation results, analysis on graphics, and data examination and analysis on different graphics.
In the scope of the study, were not investigated and analyzed only cardiovascular diseases. MEDIC-AI web application with the file upload feature offered to the users which can upload to the database anonymously or any data set, can make prediction, take results, and make analyzes for different diseases with multiple (seven (7)) machine learning algorithm techniques. By using different machine learning techniques, the obtained data sets were approached and analyzed from different angles. Evaluation and summary of the obtained results were made. In this study, besides regression algorithms, machine learning algorithms used, (K-Means) clustering and classification, Support Vector Machines (SVM), Artificial Neural Networks (ANN), K Nearest Neighbor (kNN), Decision Tree (DT), Naive Bayes (NB) and CatBoost are algorithms.
In this study, the analysis, cleaning, and research of the data set is done on application. The application is developed with Dash Plotly programming platform, a combination of Python, Flask and JavaScript programming languages. Python programming language is powerful and most comfortable languages in ML, DL, and data mining techniques. The Dash Plotly development platform is one of the most ideal platforms for drawing live graphics on the web with the plotly graphics it offers.