2.7. ÖĞRENMEYİ GERÇEKLEŞTİRME (APPLY LEARNING)
2.7.2. DL Algoritmasının Modellenmesi
DL algoritmaları geliştirilmiş ML algoritmalarına YSA’ların uyarlanmasıyla ortaya çıkmaktadır. Bu algoritmaların en temel özelliği ise veri setindeki özellikleri yani sütunlardaki değerlerin sonuca ektisinin ne kadar olacağını öğrenmesi olarak ifade edilmektedir.
Bir DL algoritması bir gizli katman, bir giriş katmanı ve bir de sonuç katmanı olarak tasarlandığında üç katmanlı bir yapı oluşmaktadır (Bkz. Şekil 21). Gizli katmanların her biri giriş ve çıkış değişkenlerinden oluşmakta ve bu değişkenler kendinden bir önceki katmandan aldığı veriyi işledikten sonra kendinden sonraki katmana iletmektedir.35 Katmanlar arası değerlerin iletimleri esnasında sonuç
değerleri için birer aktivasyon fonksiyonu bulunmaktadır (Bkz. Şekil 22). Bu
35 Bütün girişleri ve bütün çıkışları birbirine bağlı ve her birinin ayrı bir ağırlığı bulunan ve ağın
sadece bu tip katmanlardan oluşturulmuş ise bu tip bir ağ mimarisine çok katmanlı algılayıcı olarak adlandırılmaktadır.
olduğu ortaya çıkmıştır. Bunun daha önceden bahsedilen R^2 sonucu ile uygunluk gösterdiği anlaşılmıştır (Bkz. Şekil 20).
Şekil 20: Airbnb Gerçek Fiyatlar ile Tahmin Edilen Fiyatların Uygunluğu
Kaynak: Tez kapsamında geliştirilen Airbnb uygulaması üzerinde yer alan bilgilerden elde edilmiştir.
2.7.2. DL Algoritmasının Modellenmesi
DL algoritmaları geliştirilmiş ML algoritmalarına YSA’ların uyarlanmasıyla ortaya çıkmaktadır. Bu algoritmaların en temel özelliği ise veri setindeki özellikleri yani sütunlardaki değerlerin sonuca ektisinin ne kadar olacağını öğrenmesi olarak ifade edilmektedir.
Bir DL algoritması bir gizli katman, bir giriş katmanı ve bir de sonuç katmanı olarak tasarlandığında üç katmanlı bir yapı oluşmaktadır (Bkz. Şekil 21). Gizli katmanların her biri giriş ve çıkış değişkenlerinden oluşmakta ve bu değişkenler kendinden bir önceki katmandan aldığı veriyi işledikten sonra kendinden sonraki katmana iletmektedir.35 Katmanlar arası değerlerin iletimleri esnasında sonuç değerleri için birer aktivasyon fonksiyonu bulunmaktadır (Bkz. Şekil 22). Bu aktivasyon fonksiyonları ise katmanların doğrusal olmamasını sağlamaktadır. Aktivasyon fonksiyonlarının seçimine gelince DL algoritma geliştiricileri biyolojik açıdan
35 Bütün girişleri ve bütün çıkışları birbirine bağlı ve her birinin ayrı bir ağırlığı bulunan ve ağın sadece bu tip katmanlardan oluşturulmuş ise bu tip bir ağ mimarisine çok katmanlı algılayıcı olarak adlandırılmaktadır.
45
aktivasyon fonksiyonları ise katmanların doğrusal olmamasını sağlamaktadır. Aktivasyon fonksiyonlarının seçimine gelince DL algoritma geliştiricileri biyolojik açıdan benzerliği nedeniyle yıllarca sigmoid fonksiyonunu kullanmışlardır. Ancak, ReLU’nun YSA’larda genellikle daha iyi sonuçlar vermesiyle biyolojik
analojinin36 yanıltıcı olduğunu ortaya çıkarmıştır (Géron 2019, 289).
Şekil 21: Bir Gizli Katmanlı Yapay Sinir Ağının Yapısı
Kaynak: SCHWALBE (2017, 10). “Algorithms, Machine Learning, and Collusion”, https://
papers.ssrn.com/sol3/papers.cfm?abstract_id=3232631, Erişim Tarihi:13.06.2019.
DL algoritmanın modeline gelince Airbnb fiyat tahmin uygulaması için Tensorflow’u arka alanda kullanan Keras seçilmiştir. Keras seçmenin en önemli yanları her tür sinir ağını kolayca oluşturmaya, eğitmeye, değerlendirmeye ve yürütmeye olanak sağlaması olarak ifade edilmektedir (Géron 2019, 292).
Şekil 22: DL Aktivasyon Fonksiyonları
Kaynak: GÉRON A. (2019, 289) Hands-on Machine Learning with Scikit-Learn, Keras, and
TensorFlow, Fifth Release, USA
36 Biyolojik analoji, insan bedenine benzer bir şekilde çalışmayı ifade eder.
46 benzerliği nedeniyle yıllarca sigmoid fonksiyonunu kullanmışlardır. Ancak,
ReLU’nun YSA'larda genellikle daha iyi sonuçlar vermesiyle biyolojik analojinin36
yanıltıcı olduğunu ortaya çıkarmıştır (Géron 2019, 289). Şekil 21: Bir Gizli Katmanlı Yapay Sinir Ağının Yapısı
Kaynak: SCHWALBE (2017, 10). “Algorithms, Machine Learning, and Collusion”,
https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3232631, Erişim
Tarihi:13.06.2019.
DL algoritmanın modeline gelince Airbnb fiyat tahmin uygulaması için Tensorflow’u arka alanda kullanan Keras seçilmiştir. Keras seçmenin en önemli yanları her tür sinir ağını kolayca oluşturmaya, eğitmeye, değerlendirmeye ve yürütmeye olanak sağlaması olarak ifade edilmektedir (Géron 2019, 292).
Şekil 22: DL Aktivasyon Fonksiyonları
Kaynak: GÉRON A. (2019, 289) Hands-on Machine Learning with Scikit-Learn, Keras, and TensorFlow, Fifth Release, USA
36 Biyolojik analoji, insan bedenine benzer bir şekilde çalışmayı ifade eder.
46 benzerliği nedeniyle yıllarca sigmoid fonksiyonunu kullanmışlardır. Ancak, ReLU’nun YSA'larda genellikle daha iyi sonuçlar vermesiyle biyolojik analojinin36
yanıltıcı olduğunu ortaya çıkarmıştır (Géron 2019, 289). Şekil 21: Bir Gizli Katmanlı Yapay Sinir Ağının Yapısı
Kaynak: SCHWALBE (2017, 10). “Algorithms, Machine Learning, and Collusion”, https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3232631, Erişim Tarihi:13.06.2019.
DL algoritmanın modeline gelince Airbnb fiyat tahmin uygulaması için Tensorflow’u arka alanda kullanan Keras seçilmiştir. Keras seçmenin en önemli yanları her tür sinir ağını kolayca oluşturmaya, eğitmeye, değerlendirmeye ve yürütmeye olanak sağlaması olarak ifade edilmektedir (Géron 2019, 292). Şekil 22: DL Aktivasyon Fonksiyonları
Kaynak: GÉRON A. (2019, 289) Hands-on Machine Learning with Scikit-Learn, Keras, and TensorFlow, Fifth Release, USA
DL algoritmasıyla geliştirilen Airbnb uygulaması ML algoritmasıyla geliştirilen Airbnb uygulamasıyla kıyas yapılabilmesi için aynı örneklem üzerinden veriler kullanılmış ve beş katmandan oluşan bir YSA yapısı oluşturulmuştur. Bu yapının ilk katmanında aktivasyon fonksiyonu olarak tanjat fonksiyonu seçilmiş sonraki üç katmanda ise RELU kullanılmıştır. Son katmanda ise herhangi bir aktivasyon fonksiyonu kullanılmamıştır. YSA yapısının tamamı Tablo 2’de gösterilmiştir. Bu YSA yapısı incelendiğinde ise toplam 15961 değişkenin kullanıldığı ve bu değişkenlerin tamamının eğitim sürecinde eğitildiği gözlemlenmiştir.
Tablo 2: DL Katman Yapısı
Katman Çıkış Aktivasyon Fonksiyonu Değişken
Katman 1 80 Tanjat 3600
Katman 2 120 Relu 9720
Katman 3 20 Relu 2420
Katman 4 10 Relu 210
Katman 5 1 - 11
Kaynak: Tez kapsamında geliştirilen Airbnb uygulaması üzerinde yer alan bilgilerden
derlenmiştir.37
DL algoritmasının Keras ile eğitimini tamamlandıktan sonra yine gerçek değerler ile tahmini değerler arasındaki farkın ne şekilde değiştiğinin analizi yapılmıştır (Bkz. Şekild 23). Bu analiz sonucunda tahmin değerlerinin gerçek değerlere yine başarılı bir şekilde yaklaştığı gözlenmiş ve DL algoritmalarının sonuçlarında gözlenen dirsek grafiği38 başarılı bir şekilde gerçekleştirilmiştir. Bu
dirsek şeklinin olduğu yer ise kullanılan verinin kaç sınıfa ayrılması gerektiğini bizlere ipucu olarak vermektedir.
37 Tez için yazılan Airbnb DL uygulamasından alınmıştır. Kullanılan epoch sayısı 500’dür ve her bir
örneklem setinin 500 kez tekrarlandığı anlamına gelmektedir.
38 Dirsek (elbow), grafiğimizdeki eğri, bir dirsek sergiler (aşağıdaki şekilde) ve bu dirsek küme
47
Şekil 23: DL Algoritmasının Eğitimi ve Elbow
Kaynak: Tez kapsamında geliştirilen Airbnb uygulaması üzerinde yer alan bilgilerden elde
edilmiştir.