Makine Öğrenmesi Savaşları: Derin Öğrenme vs GBM
Makine öğrenmesi çalışmalarını malesef çift başlı bir kutuplaşma içerisinde görüyoruz. Araştırmacılar çoğunlukla ya derin öğrenmeyi ya da gradient boosting karar ağaçlarını benimsemiş durumdalar. Çoğu zaman da bu algoritmalara futbol takımı destekleyen holiganlar gibi sahip çıkmaktalar. Unutmamak gerekir ki insalar ön yargılı olabilirler. Bu yazıda her iki algoritmanın da artılarını ve eksilerini önyargısız bir şekilde tartışacağız. Hadi derin öğrenme ve GBM’in savaşmasına izin verelim!
Derin Öğrenme Cephesi
Derin öğrenmenin bize süper güçler verdiği bir gerçek. Yüz tanıma, duygu analizi hatta sanat eserleri yaratmak artık sıradan yazılımcılar için zor şeyler değiller. Fakat kararın nasıl alındığının önemli olduğu durumlarda duvara toslamakta. Çünkü tamamen bir kara kutu olmaktan ibaret. Neden ve nasıl sorularına cevap verememekte. Neden sinir ağı bu sayıda gizli katman ve düğümden oluşuyor? Öğrenme oranı neden 0.1 olarak atandı? Daha da önemlisi nasıl bu kadar başarılı sonuçlar üretiyorlar? Bu soruların cevapsız olmasının nedeni nöral ağların matris çarpımı, sigmoid ve relu gibi doğrusal olmayan fonksiyonlar, türev ve normalizasyonun kombinasyonundan ibaret olması. 5N1K’yı göz önüne getirirseniz 2 soru yanıtsız kalıyor.
Açıklanamayan modeller problem anlarında çözüm bulunmasını daha zor kılmakta. Microsoft’un chatbot’u Tay’ı ırkçı söylemler edindikten sonra kapattığını göz önüne getirin.
Daha da fazlası, bankacılık ve finans gibi sektörler ağır regülasyonlara tabidir. Açıklanabilirlik burada olmazsa olmaz bir husus. Açıklanamayan modellerin çok başarılı sonuçlar üretse bile üretse bile üretim ortamına taşınmasına izin verilmez.
Karar Ağacı Cephesi
Öte yandan karar ağacı algoritmaları ile verilen kararlar açıkça okunup anlaşılabilmektedir. Çünkü karar ağacı kuralları basit eğer cümlelerine dönüştürülebilmektedirler. Bu da kuralların özel ihtiyaçlarına göre özelleştirebilmenize imkan sağlamaktadır. Ayrıca mevzu bahis bu kurallar kompleks değillerdir. Bir karar ağacı algoritması her if bloğunda en dominant öz niteliği bulmaya çalışır ve bunu bir sonuca ulaşıncaya kadar devam eder (parçala fethet). Yani örneğin öz nitelikleriniz bagaj boyutu ve kapı sayısı ise bir eğer cümlesi seviyesinde ya bagaj boyutunu ya da kapı sayısını kontrol edebilirsiniz. Yani eğer cümlesinde bagaj boyutunun büyüklüğünü yahut koşulunda da kapı sayısını kontrol edemezsiniz! Yahut koşulunda da eğer cümlesinde kontrol ettiğiniz bagaj boyutuna dair bir kontrol bulunmalıdır.
En dominant öz niteliği ID3 algoritmasında bilgi kazanımı, C4.5 algoritmasında kazanım oranı, CART algoritmasında gini indeks değeri, regresyon ağaçlarında da standart sapma metrikleri ile bulmaktayız.
Karar ağaçları transparan algoritmalardır fakat açıklanabilirlik ve doğruluk birbiriyle ters orantılı kavramlardır. Tabi ki de bir modelin açıklanabilir olması doğruluğundan feragat edilebilecek husus değildir.
GBM Cephesi
GBM, karar ağaçlarının doğruluğunu yapay sinir ağlarına yakın bir noktaya çekmektedir. Yaklaşımı tek bir karar ağacının yeteri kadar kuvvetli olmadığı şeklindedir. Basitçe bir karar ağacı algoritması uygulanır ve ortaya çıkan hata ile yeni bir karar ağacı dizayn edilir. Bu işleme hata minimuma indirgenene kadar devam edilir. Bununla birlikte ortaya çıkan karar kuralları halen açıklanabilirdir.
Karşılaştırmalı bir çalışma
Spiral veri setini gözünüzün önüne getirin. İki sınıflı bu sınıflandırma problemi gerçekten de zor bir problem.
Bu veri seti TensorFlow Playground‘ta hazır veri setleri arasında yer almakta. Tüm girdi adaylarını ağa dahil ederek ve birinci gizli katmandaki düğüm sayısını 8’e çıkararak bu veri setini yüzde yüze yakın bir doğrulukla sınıflandırabiliyoruz.
Benzer bir arayüz GBM için de gradient boosting interactive playground ismiyle bulunmakta. 30 karar ağacının ardı ardına dizayn edilmesi yapay sinir ağları kadar başarılı sonuçlar üretmekte.
Derin öğrenmeyi süper güçleri sebebiyle Süperman’e benzetebiliriz. Bu algoritma ile ağır kayaları hareket ettirebiliyoruz. Karar ağacı algoritmalarının belki süper güçleri yok ama bir kaç karar ağacı bir araya gelerek GBM’i oluşturabilir, ve ağır bir kayayı nöral ağlar gibi hareket ettirebilir. Piramitlerin dizaynında zayıf işlerin ağır kayaları hareket ettirmesini buna benzetebilirsiniz. Bu durumda GBM’e de Flash benzetmesi yapsak çok da abes kaçmaz herhalde.
Yarış zamanı
GBM’in derin öğrenme kadar kuvvetli bir algoritma olduğuna ikna oldunuz mu? Peki ya derin öğrenmeden daha da kuvvetli bir algoritma ise?
Kaggle, veri tutkunlarının sıklıkla kullandıkları bir platformdur. Zorunda olmamakla birlikte kazanan modelin geliştiricileri modellerine ait detayları paylaşabilmektedirler. 2015 yılına ait kazanan 29 modele ait veriyi incelediğimiz takdirde çok enteresan sonuçlar ortaya çıkmakta. Kazanan modellerden 17’si GBM kullanırken, 11 tanesi derin öğrenmeyi benimsemiş durumda. Bu kazanan modellerin yarısından fazlasının GBM ile geliştirdiği anlamına gelmekte. GBM, benzer şekilde KDDCup yarışmasını da domine etmiş durumdadır. İlk 10’da yer alan tüm kazanan modeller burada da GBM’i kullanmaktadır.
Bu noktada GBM ve derin öğrenmenin karşılaştırılması çok adil de olmayabilir. Öncelikle kazanan modellerden 9’u GBM ve derin öğrenmeyi birlikte kullanmaktadır. Dahası derin öğrenmenin galip geldiği yarışmalar daha çok resim tabanlı yapısal olmayan veriye dayalı yarışmalarken, GBM’in galip geldiği yarışmalar daha çok yapısal veriye dayanmaktadır. Derin öğrenme ve GBM birlikteğinin (ensemble) podyumda işgal ettiği yerden ne kadar kuvvetli olduğunu anlamışsınızdır.
Kaggle ayrıca veri bilimi ve makine öğrenmesine ait bir anket yayınlamış durumda. Katılımcıların yarısı günlük çalışmalarında karar ağaçlarına aşinayken, %37’si sinir ağlarını kullandığını belirtmiştir. Bankacılık sektörünün ağır regülasyonlara tabi olduğunu daha önce belirtmiştik. Bu sektörde ise katılımcıların %60’ının alet çantalarında karar ağaçları varken yalnızca %30’unun alet çantalarında sinir ağları bulunmakta.
Foto finiş
Bu yazıda size ne GBM’in ne de derin öğrenmenin birbirinden üstün olduğuna ikna etmeye çalıştım. Yazıyı GBM’in de derin öğrenme kadar kuvvetli bir algoritma olduğu ve her veri bilimcisinin alet çantasında bulunması gerektiği şeklinde özetleyebiliriz.
Her ne kadar Justice League filminin sonunda Superman ve Flash yarışının sonuna değinilmese de, çizgi romanda bu yarışın sonucu açıklanmıştı. Bitiş çizgisine her ikisi de eş zamanlı ulaşmıştı. Derin öğrenme ve GBM arasında ki yarışta da olduğu gibi!
Sunum
Bu blog gönderisinin içeriğini Bilisim IO Tech Talks etkinliği için hazırlamıştım. Konferans sunumunu da buradan erişebilirsiniz.
Bu yazı, Machine Learning Wars: Deep Learning vs GBM yazısından Türkçeye çevrilmiştir.