XGboost ve karar ağacı tabanlı algoritmaların diyabet veri setleri üzerine uygulaması
Application of XGboost and decision tree based algorithms on diabetes data
Yazar: GÜLÇİN YANGIN
Danışman: DR. ÖĞR. ÜYESİ ELİF ÖZGE ÖZDAMAR
Mimar Sinan Güzel Sanatlar Üniversitesi / Fen Bilimleri Enstitüsü / İstatistik Ana Bilim Dalı / İstatistik Bilim Dalı
Derece: Yüksek Lisans, 2019
Konu: İstatistik = Statistics

Özet:
Sınıflandırma, insanların her zaman ilgilendiği konulardan biri olmuştur.  Bu konu ilkel çağdan günümüze kadar önemini korumaya devam etmektedir. İnsanlar, canlı ve cansız varlıkları sınıflandırmayla başlamış; fakat günümüzde ise sağlık, bankacılık, finans, enerji gibi alanlarda sınıflandırma üzerine çalışmalar yapmaktadır. 
Özellikle sağlık alanında yapılan sınıflandırma çalışmaları, hastalığın erken teşhisi ve tanısında, ayrıca ilaç tasarlama çalışmalarına önemli katkı sunmaktadır. Dünya Sağlık Örgütü'ne göre diyabet hastalığı en çok ölüme neden olan on hastalıktan biri olmasının yanı sıra bu hastalığa yakalanan yetişkinlerin sayısı artmaya devam etmektedir. Dünya Sağlık Örgütü'nün, 2014 verilerine göre 422 milyon insan diyabetle yaşamaktadır. Diyabet hastalığının; zaman içinde kalpte, kan damarlarında, gözlerde, böbreklerde ve sinirlerde hasara yol açtığı sonucuna ulaşılmıştır. Bu hastalığa sahip yetişkinlerin kalp krizi ve felç riski geçirmesinin sağlıklı bireylere göre daha fazla olduğu saptanmıştır. 
Son yıllarda makine öğrenmesi ve yapay zeka gibi teknolojik gelişmeler birçok hastalıkla mücadelede kullanılmaya başlanmıştır. Hastalığın erken teşhisi ile beraber bireyin daha uzun yaşaması sağlanmaktadır. Özellikle gen dizilim çalışmalarında makine öğrenmesi önemli bir yer tutmaktadır.
Tezin amacı doğrultusunda diyabet hastalığının tahmin edilmesi için makine öğrenme yöntemleri algoritmalarından yararlanılmıştır. Bu çalışmada; karar ağaçları, Rastgele Orman, Gradient Boosting ve XGBoost algoritmaları anlatılmıştır. Bu algoritmalar iki veri setine uygulanmış ve performans ölçütlerinden doğru sınıflandırma oranı, kesinlik, duyarlılık, Kappa ve F1 sonuçları elde edilmiştir. Elde edilen sonuçlardan doğru sınıflandırma oranı kullanılan algoritmalar bakımından karşılaştırması yapılıp yorumlanmıştır.
Veri setlerinden birincisi 210 gözlem ve biri sınıf değişkeni olmak üzere 15 değişkenden oluşmaktadır. Diğeri ise literatürde "PIMA INDIANS" olarak bilinen 768 gözlem ve biri sınıf değişkeni olmak üzere 8 değişkenden meydana gelmektedir. Birinci veri setindeki kayıp gözlemlere IBM SPSS 23 paket programı kullanılarak çoklu atama ile değer ataması yapılmıştır. Bu çalışmada veri setlerinin bir kısmı eğitim verisi kalan kısmı da test verisi olarak ele alınmış ve uygulamada R açık kaynak yazılımı kullanılmıştır. 
Kullanılan sınıflandırma algoritmalarından elde edilen sonuçlar doğru sınıflandırma  oranları bakımından incelenmiştir. Doğru sınıflandırma oranı bakımından karar ağaçları, Rastgele Orman, Gradient Boosting ve XGBoost algoritmalarının sırasıyla birinci veri setinde %56.10, %60.98, %65.85 ve %70.73 iken; "PIMA INDIANS" veri setinde ise %75.82, %81.05, %81.70 ve %82.35 sonuçlarını verdiği görülmüştür. Bu sonuçların ışığında her iki veri setinde de XGBoost algoritmasının performans bakımından daha iyi çalıştığı sonucuna varılmıştır.

Abstract:
Classification has been one of the subjects that people have always been interested in. This issue continues to be important since the primitive age. The first classification was introduced by Aristoteles in the history. However, the biological classification as scientific was done by Carl Linnaeus.  People have begun to classify living and non-living assets and today they are working in fields such as health, banking, finance and energy.
Classification studies, especially in the field of health, early diagnosis and diagnosis also contributes to drug design studies. According to the World Health Organization, diabetes mellitus, is called diabetes, is one of the ten most common causes of death, and the number of adults suffering from it continues to increase. The World Health Organization says that 422 million people live with diabetes. It has been concluded that diabetes causes damage to the heart, blood vessels, eyes, kidneys and nerves system over time. Adults with this disease have a higher risk of heart attacks and strokes than healthy individuals.
There are two types of diabetes, Type 1 and Type 2. In Type 1 diabetes, it occurs as a result of insufficient insulin production by the person and requires daily insulin to eliminate it. Type 2 diabetes is caused by the body's ineffective use of insulin. Type 2 diabetes includes the majority of people with diabetes worldwide and is usually the result of excessive body weight and physical inactivity.
It is not possible to process and analyze big data manually. The purpose of using the data is to make future predictions from the data obtained. Decision tree based algorithms and machine learning methods have been developed to solve these problems. These methods try to find the most suitable model for new data by using past data. 
In recent years, technological developments such as machine learning and artificial intelligence have started to be used in the fight against many diseases. With the early diagnosis of the disease, the individual can live longer. Especially in gene sequencing studies, decision tree based algorithms play an important role. In machine learning and statistics; classification is a supervised learning approach that the computer program learns from given data input and then uses this learning to classify new observations. Classification algorithms; learns through from training data. They try to classify test data whose class is not known.
 
For the purpose of this thesis, decision tree based algorithms and machine learning methods were used to predict diabetes class. In this study; decision trees, Random Forest, Gradient Boosting and XGBoost algorithms are explained. These algorithms were applied to two data sets and used performance criteria as accuracy, sensitivity, kappa score and F1 score results were obtained. From the obtained results, accuracy was compared and interpreted in terms of the using algorithms.
Decision trees are a supervised learning method that uses training data to classify data one after another based on one feature at a time. The purpose of decision trees is to ensure that class membership in the lower leaves of the tree to be obtained by dividing the data is as pure as possible. In other words, it is practiced for leaves that consist almost exclusively of a single class. 
Random Forest is one of the important machine learning models that can be applied to both regression and classification problems. In order for a successful random forest to be produced, it is necessary to have a well-formed decision tree on the basis of which it is well established, which can ask accurate questions and make predictions.
Gradient Boosting is defined in a prediction model as a machine learning technique for regression and classification problems, often producing the community form of weak prediction models. Gradient Boosting, is based on Boosting techniques, is a community method that combines a series of weak classifiers with boosting to create a strong classifier.
XGBoost is an abbreviation of Extreme Gradient Boosting, machine learning technique based on Gradient Boosting and decision tree algorithms.  In 2016, XGBoost was introduced by Tianqi Chen and Carlos Guestrin, and it has been applied in an accelerated frequency  in a wide range of applications; such as energy, health and finance. XGBoost has more advantages in terms of speed and performance compared to many decision tree based algorithms. 
In the application part of this study, the highest accuracy was tried to be determined by using decision tree based algoritmhs in 2 different diabetes data sets. The first data set consists of 210 observations and 15 variables, one of which is a class variable. Missing values in the first data set were assigned by multiple imputation using IBM SPSS 23 package program. The other one consists of 768 observations known in the literature as PIMA INDIANS and 8 variables, one of which is a class variable. In this study, some part of the data sets were considered as training data and other part of as test data and then R open source software was used in the application.
The results obtained from the classification algorithms used were examined in terms of accuracy. In the first data set, the accuracy; decision trees, Random Forest, Gradient Boosting and XGBoost algorithms were achieved to be 56.10%, 60.98%, 65.85% and 70.73% respectively; in PIMA INDIANS data set, it was achieved that the results were 75.82%, 81.05%, 81.70% and 82.35% respectively. According to these results, it is concluded that XGBoost algorithm works better than the other algorithms.