Makine öğrenmesi yöntemleri ile kredi risk analizi
Credit risk analysis using machine learning algorithms
Yazar: SACİDE KALAYCI
Danışman: PROF. DR. MUSTAFA ERSEL KAMAŞAK
İstanbul Teknik Üniversitesi / Fen Bilimleri Enstitüsü / Bilgisayar Mühendisliği Ana Bilim Dalı / Bilgisayar Mühendisliği Bilim Dalı
Derece: Yüksek Lisans, 2018
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Bankacılık Düzenleme ve Denetleme Kurumu'nun (BDDK) yayınladığı rapora göre Türkiye'de küçük ve orta büyüklükteki işletme (KOBİ) durumundaki müşterilerin kullandıkları kredi oranları, yıllar geçtikçe artmakta ve bu nedenle de, finansal merkezler için müşteri riskinin daha iyi tahmin edilebilmesi, gittikçe önem kazanmaktadır. Bu ihtiyaçtan dolayı son yıllarda müşteri riskini daha iyi analiz edebilmek için uzman bilgi ve tecrübesine dayalı klasik yöntemler yerine makine öğrenmesi kullanılarak geliştirilen sistemler kullanılmaktadır. Müşteri kredi riski analizi; müşterinin gelecek bir tarihte finansal bir dar boğaz yaşayıp yaşamayacağını tahmin ederek, finansal merkezin riskini en aza indirgemeyi amaçlar. Müşteri riski analizi ikiye ayrılır: Müşteri başvuru skor analizi ve müşterinin ödeme davranışının analizi. Müşteri başvuru skor analizinde müşterinin kredi başvurusu sırasında sunduğu ya da geçmiş bilgileri kullanılarak müşterinin ileri bir zamandaki durumu tahmin edilmeye çalışılır. Müşteri ödeme davranışı analizinde ise müşterilerin krediye başvurduktan sonraki belirli bir süre boyunca ödeme davranışları incelenerek müşterinin durumu tahmin edilmeye çalışılır. Müşteri ödeme davranışını incelemek için yapılan çalışmaların bazıları müşterinin herhangi bir zamanda finansal bir sıkıntı yaşayıp yaşamayacağı konusuna odaklanırken, diğerleri de müşterinin ne zaman ya da herhangi bir süre aralığında sıkıntı yaşayıp yaşamayacağına odaklanır.
Türkiye'de KOBİ'ler için bireysel müşterilerden farklı olarak tek tipte bir kredi (ihtiyaç kredisi, ev kredisi vb.) ya da ürün (kredi kartı, esnek hesap) teklif etmek yerine, belirli bir limitte, içinde birçok farklı ürün barındıran ve belirli bir süre geçerliliği olan bir teklif paketi oluşturulur. KOBİ'ler için hazırlanan her bir teklif paketi KOBİ'lerin ihtiyaçlarına göre hazırlanmış birbirinden farklı ödeme planları bulunan 77 farklı üründen (çek defteri, kredi kartı vb.) birkaçını içerebilir ve toplam limit bu ürünler arasında paylaştırılır. KOBİ müşterileri, bu teklif paketinin geçerli olduğu süre boyunca ihtiyacı olan kredi ya da ürünlerden istediğini dilediği zaman kullanabilir. Eğer müşteri kullandığı ürünün ödemesini 90 gün boyunca gerçekleştirmezse kredinin durumu "problemli kredi" (PK) olarak belirlenir. PK durumundaki herhangi bir ürünün sahibi de "PK durumundaki müşteri" olarak nitelendirilir. Aksi takdirde kredi ve ilgili müşterinin durumu "sağlıklı kredi" (SK) olarak devam eder.
Finansal merkezler için müşterinin ne zaman finansal sıkıntı yaşacayağı önemli olduğundan bu çalışma kapsamında KOBİ müşterilerinin 6 aylık bir zaman diliminde finansal sıkıntı yaşayıp yaşamayacağına odaklanılmıştır. Bu motivasyonla Türkiye'deki KOBİ müşterilerinin 1 Ocak 2015 - 1 Ekim 2016 tarihleri arasındaki verileri analiz edilerek 1 Nisan 2016 - 1 Ekim 2016 tarihleri arasında PK olup olmayacakları makine öğrenmesi yöntemleri kullanılarak tahmin edilmeye çalışılmıştır. Bu amaçla, müşteri ödeme davranışı probleminde ve müşterilerin başvurularını değerlendirmek için kullanılan öznitelikler kullanılmıştır.
İlk olarak, Yapı Kredi Bankası ile çalışan KOBİ müşterilerinin 1 Ocak 2015 - 1 Ekim 2016 tarihleri arasındaki kredi bilgileri kullanılarak veri seti oluşturulmuştur. PK durumundaki müşterileri belirlemek için aranan koşul müşterilerin 1 Nisan 2016 - 1 Ekim 2016 tarihleri arasında PK durumuna düşmüş en az bir kredilerinin olmasıdır. SK durumundaki müşteriler içinse yeter ve koşul şart, müşterilerin bu tarihler arasında PK durumunda hiç bir kredisinin olmamasıdır. Daha sonra ise, belirlenen bu müşterilerin risklerini analiz etmek için öznitelikler çıkarılmıştır. Çıkarılan öznitelikleri müşterilerin demografik bilgileri, başvuru bilgileri, şirketin finansal durumu, diğer bankalardaki riskleri, gösterilen teminat belgeleri ve ödeme davranışları olmak üzere 6 farklı kategoriye ayırmak mümkündür. Toplamda 3904 (1952 SK ve 1952 PK) müşterinin 366 farklı özniteliği ile veri seti oluşturulmuş ve veri setinin %80'i eğitim için %20'si test için ayrılmıştır. 
Bilgimiz dahilinde, bugüne kadar Türkiye'deki KOBİ müşterilerinin ödeme davranışları kullanılarak müşterinin gelecek 6 aydaki durumunu tahmin etmeye yönelik yapılmış bir çalışma bulunmamaktadır. Bu nedenle farklı yöntemlerin problem üzerindeki başarımını test etmek için lojistik regresyon (LR), karar ağaçları (KA), destek vektör makineleri (DVM), sinir ağları (SA), rastgele orman algoritması (ROA) ve son olarak da meyilli hızlandırma (MH) yöntemleri kullanılmıştır. Gerçekleştirilen deneylerde en iyi başarımı MH algoritması %83,05 başarı ile, en iyi ikinci performansı ise ROA vermiştir. Onları sırası ile SA, DVM, KA, LG takip etmiştir. 
Bugüne kadar bu alanda yapılan çalışmaların birçoğunda müşterilerin kredi başlangıcındaki durağan (statik) öznitelikleri kullanılmış, belirli bir zaman aralığında olan ödeme davranışları kullanılmamıştır. Oysaki, müşterilerin ödeme davranışları müşterilerin ekonomik durumu hakkında bize daha doğru bilgiler verebilir ve daha iyi çalışan sistemler geliştirmemize olanak sağlayabilir. Müşteri ödeme davranışları ile ilgili özniteliklerin problem üzerindeki önemini test etmek için, veri setinden müşterilerin ödeme davranışlarını içeren tüm öznitelikler çıkarılarak temel öznitelik vektörü oluşturulmuştur. Sonrasında ise müşterilerin kullandıkları farklı ürünlerdeki geri ödeme davranışlarını içeren öznitelikler sırayla eklenmiştir. Öznitelik vektörüne müşterilerin farklı ürünlerdeki davranışları eklendikçe, özniteliklerin sistem üzerinde etkisi MH kullanılarak analiz edilmiştir. Elde edilen sonuçlar göstermiştir ki ödeme davranışlarını incelemek, sadece sistemin başarısını artırmamış aynı zamanda modelin standart sapmasını da düşererek, daha dengeli bir model elde edilmesine olanak sağlamıştır.
Son olarak ise makine öğrenmesi yöntemlerinin tek başına değil de harmanlanmış şekilde kullanılarak elde edilebilecek olan başarımını incelemek için makine öğrenmesi yöntemlerinin farklı kombinasyonları ile harmanlanmış sistemler oluşturulmuştur. Yapılan deneyler sonucunda en başarılı sonuç ROA ve MH yöntemlerini kullanılarak oluşturulan harmanlanmış sistemle elde edilmiştir. Algoritmaların tek başına kullanılarak elde edilen en iyi performans %83,05 iken, harmanlanmış sistem kullanıldığında bu başarı %2,88 oranında artarak %85,93 olmuştur.

Abstract:
Since credit volume in real markets has shown great increase, credit risk analysis (CRA) has become increasingly important for financial institutions. Hence, advanced methods are developed using statistical approaches. These novel methods started to replace traditional methods. Credit risk analysis aims to eliminate future losses by assessing credits based on potential risk. Credit risk analysis can be classified into two categories: application scoring, behavioural scoring.
Application scoring considers two snapshots of consumer state at two different dates--the first of their application form information and the second of their creditworthiness which is commonly determined as "good" or "bad" so it is a static event. On the other hand, behavioural scoring is a way of updating consumer risk based on repayment performance of consumer or other performance criteria described by lender. Thus in behavioural scoring, first snapshot is replaced with a time interval but second snapshot still remains the same. Some of conducted studies in behavioural analysis concern with only likelihood of default, others also concern with the time of the anticipated default. In recent years, predicting default date or period gains more importance  since forecasting 'when' gives insight about default rates over time. Actually, it has been already used in profit scoring modeling which aims to find customers who will provide better profit to financial institutions due to the fact that lenders will have greater benefit if a customer pays for longer period without default.
In Turkey, Banking Regulation and Supervision Agency (BRSA) publishes annual and quarterly reports to watch financial data of banking sector and structural developments in banking. One of those reports highlights recent changes in credit improvements, market share of credit types and non-performing loan (NPL) ratios of credits with respect to debt owner categories.  
In recent years, the worst performing credits are lent to SME companies. This has several reasons like currency depreciation, supply-chain effect of non-performing loans and changes in macro-economic conditions. Detecting the risk of open SME credits to fall in NPL as early as possible has become crucial for banks. As a result, an experimental study which mainly focuses on early NPL detection of SME credit is initiated. 
In Turkey the ratio of SME credits approaches 25% of total credit distribution which is equal to the ratio of consumer loans and credit cards.  Besides this high ratio of SME credits, total credit capacity in SMEs has been increasing.  Although credit share of SMEs is increasing, the ratio of SME credits in NPL state is also increasing and demonstrating the highest risk compared to all other credit categories. 5% of all SME credits are reported to be in NPL in contrast to 4% and 2% ratios for consumer loans and corporate credits respectively. 
SMEs are likely to obtain bank loans from multiple banks at the same time thus banks should take precautions as immediate as possible when customers fall in financial distress. Therefore, an accurate model for SMEs risk is essential  to prevent losses or have greater benefit for the lenders. As mentioned before, most of the proposed studies can be categorized into two, based on the used information types or their aims for the SME credit risk analysis.
In application scoring, utilized information types dominantly consist of demographical, risk and financial information while for pure behavioural scoring, only repayment performance is employed.  However, using different information types together and forecasting credit status for a specific time interval might give the lender advantages of more accurate model for risk analysis which can be used for taking necessary steps.
With this motivation, we propose an experimental study by forecasting customer status in a period--determined as six months--to maximize profit by restructuring. Therefore, instead of utilizing  only features used in pure behavioural scoring which consist of repayment performance of customers, features used in two different systems--application scoring, behavioural scoring--are utilized for this study. System is designed to be run each month with new behaviour data along with previously used behaviour data, forecast for next six-month period. According to the outcome, changes to statuses (NPL or PL) of proposals can be adapted.
The real-life dataset consists of Yapı Kredi customers' SME proposals from January 1, 2015 to October 1, 2016. For the first step of this study, an observation point is settled on 2016 April and time interval until the observation point is called performance period and characteristics of the performance in this period are utilized for developing the model. Status of the proposal during the period of six months--from April 1, 2016 to October 1, 2016--which is called outcome period is used to determine whether a customer becomes NPL or not. r developing model, proposals, which are offered before the observation point and are still open after the observation point, are selected. While it is required for NPL proposals that close date should be in the outcome period for PL proposals, proposals can be still open during the outcome period. The only condition for PL is that the proposal should be offered before the observation point and customer should not fall in NPL status during the outcome period. Features utilized for developing SME risk analysis model can be categorized into six different types of information: demographical, application data, financial statements, guarantees, repayment behaviour and credit bureau data. After choosing proposals according to determined conditions above, class imbalance problem arises since proportion of NPL proposals to PL ones is very close to zero. Class imbalance problem frequently occurs in credit scoring which can affect classification models' accuracy. To avoid this situation, class imbalance is decreased by undersampling PL samples by selecting randomly instead of oversampling NPL proposals and equal number of samples from PL and NPL are selected. In total, dataset consists of 3904 samples with 366 features where 1952 samples are NPL and others are PL. 
As the first step in this study, it is aimed to explore effects of different machine learning algorithms to obtain a stable model.In order to evaluate performance of different machine learning algorithms on the prediction accuracy, Logistic Regression (LR), Decision Trees (DT) and Support Vector Machine (SVM), Neural Networks (Multi Layer Perceptron (MLP)), Random Forest (RD) and Gradient Boosting (GB) are implemented. Obtained results show that Gradient Boosting which its accuracy is observed as 83.05% yielded the best performance and it is followed by RF, NN, SVM DT and LR in order.
To explore performance of customer behaviour on different products, features for each product type are appended to the dataset incrementally, and the results show that repayment performance on more commonly preferred products gives more information about SMEs credit risk. To be aware of which features play a major role for risk analysis,  features are scored using GB and in light of these scores,  15 features with the highest score are determined. Obtained results show that most of the selected 15 features are features about customer repayment behaviour and this indicates that repayment features play a significant role in predicting SMEs which will fall in NPL in period of six months.
Lastly, stacking methods are utilized with different combinations of machine learning algorithms to increase system performance. Best performance is obtained by stacking Random Forest and Gradient Boosting by using weighted average method. The accuracy on test dataset is observed as 85.93%. Experiment results show that using stacking methods perform better accuracy than using machine learning algorithms alone.