• Sonuç bulunamadı

Tatil evlerindeki odaların derin öğrenme ile sınıflandırılması ve uygulaması

N/A
N/A
Protected

Academic year: 2021

Share "Tatil evlerindeki odaların derin öğrenme ile sınıflandırılması ve uygulaması"

Copied!
113
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

T.C.

SELÇUK ÜNĠVERSĠTESĠ FEN BĠLĠMLERĠ ENSTĠTÜSÜ

TATĠL EVLERĠNDEKĠ ODALARIN DERĠN ÖĞRENME ĠLE SINIFLANDIRILMASI VE

UYGULAMASI Mevlüt Kağan BALGA

YÜKSEK LĠSANS TEZĠ

Bilgisayar Mühendisliği Anabilim Dalı

Temmuz-2020 KONYA Her Hakkı Saklıdır

(2)

ii

TEZ KABUL VE ONAYI

Mevlüt Kağan BALGA tarafından hazırlanan ―TATĠL EVLERĠNDEKĠ

ODALARIN DERĠN ÖĞRENME ĠLE SINIFLANDIRILMASI VE

UYGULAMASI / THE CLASSIFICATION AND APPLICATION OF THE ROOMS

IN HOLIDAY HOMES BY DEEP LEARNING‖ adlı tez çalıĢması 09/07/2020 tarihinde aĢağıdaki jüri tarafından oy birliği / oy çokluğu ile Selçuk Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği Anabilim Dalı’nda YÜKSEK LĠSANS TEZĠ olarak kabul edilmiĢtir.

Jüri Üyeleri Ġmza

BaĢkan

Dr. Öğr. Üyesi Murat SELEK ………..

DanıĢman

Prof. Dr. Fatih BAġÇĠFTÇĠ ………..

Üye

Dr. Öğr. Üyesi Tahir SAĞ ………..

Yukarıdaki sonucu onaylarım.

Prof. Dr. Sait GEZGĠN FBE Müdürü

(3)
(4)

iv

ÖZET

YÜKSEK LĠSANS TEZĠ

TATĠL EVLERĠNDEKĠ ODALARIN DERĠN ÖĞRENME ĠLE SINIFLANDIRILMASI VE UYGULAMASI

Mevlüt Kağan BALGA

Selçuk Üniversitesi Fen Bilimleri Enstitüsü Bilgisayar Mühendisliği Anabilim Dalı DanıĢman: Prof. Dr. Fatih BAġÇĠFTÇĠ

2020, 113 Sayfa Jüri

Prof. Dr. Fatih BAġÇĠFTÇĠ Dr. Öğr. Üyesi Murat SELEK

Dr. Öğr. Üyesi Tahir SAĞ

Teknolojide yaĢanan geliĢmelerin etkisini hayatın her alanında olduğu gibi turizm alanında da görmek mümkündür. Rezervasyon sürecinden konaklama sürecine kadar teknolojinin etkisi her geçen gün artmaktadır. Günümüzde çok çeĢitli internet platformları üzerinden kiralık tatil evlerine, otellere ve diğer konaklama olanaklarına kolay bir Ģekilde ulaĢılabilmektedir. Ġnternet üzerinden hizmet veren rezervasyon platformları ve diğer turizm uygulamaları, yapay zeka, büyük veri, mobil uygulamalar, sohbet asistanları vb. teknolojik uygulamalardan faydalanmaktadırlar. Yapay zeka uygulamalarıyla tatil evi sahiplerine, otellere ve müĢterilere fiyat analizleri, görüntü sınıflandırma ve tanıma gibi çeĢitli asistanlar sunmaktadırlar. Bir lokasyona ait tavsiye edilen sezon fiyatları, yüklenen görsellerden oda analizi veya sunulan imkanların görsellerden çıkarılması gibi çok çeĢitli uygulamalar örnek gösterilebilir.

GerçekleĢtirilen bu tez çalıĢmasında, literatürde sıkça atıf yapılmıĢ görsel sınıflandırma ve analize yönelik derin öğrenme modellerinden ResNet, DenseNet, VGGNet, Inception v3 ve NASNet modelleri kullanılmıĢtır. Bu çalıĢmada, daha önce herhangi bir yerde paylaĢılmamıĢ ve üzerinde herhangi bir çalıĢma yapılmamıĢ, Almanya merkezli bir turizm firmasına ait tatil evleri verileri kullanılmıĢtır. Veriler temizlenmiĢ, ayıklanmıĢ ve bir veri seti haline getirilmiĢtir. Ġlgili modeller üzerinde eğitim, test ve kıyaslama iĢlemleri gerçekleĢtirilerek, tez çalıĢması kapsamında detaylı bir Ģekilde incelenmiĢtir. Yapılan 20 epoch eğitim sonuçlarına göre ResNet %97,4, DenseNet %98,69, VGGNet %97,31, Inception v3 %97,33 ve NASNet %97,21 baĢarı oranına sahip sonuçlar vermiĢtir.

(5)

v

ABSTRACT

MS THESIS

THE CLASSIFICATION AND APPLICATION OF THE ROOMS IN HOLIDAY HOMES BY DEEP LEARNING

Mevlüt Kağan BALGA

THE GRADUATE SCHOOL OF NATURAL AND APPLIED SCIENCE OF SELÇUK UNIVERSITY

THE DEGREE OF MASTER OF SCIENCE IN COMPUTER ENGINEERING

Advisor: Prof. Dr. Fatih BAġÇĠFTÇĠ

2020, 113 Pages

Jury

Prof. Dr. Fatih BAġÇĠFTÇĠ Assist. Prof. Dr. Murat SELEK

Assist. Prof. Dr. Tahir SAĞ

We can see the effect of the developments in technology field in tourism as well as in all other areas of life. From the reservation process to the accommodation, the effect of technology is increasing day by day. Today, holiday homes, hotels and other accommodation facilities are easily accessible via a wide range of internet platforms. Booking platforms serving over the Internet and other tourism applications benefit from technological applications like artificial intelligence, big data, mobile apps, chat assistants etc. With the artificial intelligence applications, they can offer various assistants like price analysis, image classification and recognition to holiday assistants, landlords, hotels and customers. A wide range of applications such as recommended season prices for a location, room analysis from uploaded images, or offered amenities from images can be found as an example of artificial intelligence applications.

In this thesis, ResNet, DenseNet, VGGNet, Inception v3 and NASNet models have been used, one of the deep learning models for visual classification and analysis frequently cited in the literature. The data of holiday houses belonging to a tourism company based in Germany, which has not been shared anywhere before and has not been worked on, have been used in this study. The data has been cleaned, extracted and turned into a data set. Training, testing and benchmarking processes have been carried out on the related models and examined in detail within the scope of the thesis. According to 20 epoch training results, ResNet has a success rate of 97.4%, DenseNet 98.69%, VGGNet 97.31%, Inception v3 97.33% and NASNet 97.21%.

(6)

vi

ÖNSÖZ

Üstümde emeği geçen baĢta ailem olmak üzere herkese ve bu tez çalıĢmasında her türlü yardımı, bilgiyi ve ilgiyi gösteren danıĢmanım Prof. Dr. Fatih BAġÇĠFTÇĠ’ye teĢekkür ederim. Desteklerinden ötürü Ģirketime ve iĢ arkadaĢlarıma da teĢekkür ederim.

Mevlüt Kağan BALGA KONYA-2020

(7)

vii

ĠÇĠNDEKĠLER

ABSTRACT ... v

ÖNSÖZ ... vi

ĠÇĠNDEKĠLER ... vii

SĠMGELER VE KISALTMALAR ... viii

ÇĠZELGE LĠSTESĠ ... ix ġEKĠL LĠSTESĠ ... x 1. GĠRĠġ ... 1 1.1. Tezin Amacı ... 3 1.2. Tezin Organizasyonu ... 4 2. KAYNAK ARAġTIRMASI ... 6 3. MATERYAL VE YÖNTEM ... 12

3.1. Yapay Sinir Ağı (YSA) ... 12

3.2. Derin Öğrenme ... 13

3.6. Derin Öğrenme Modelleri ... 21

3.6.1. ResNet (Residual Network) ... 21

3.6.2. DenseNet ... 24 3.6.3. VGGNet ... 27 3.6.4. Inception v3 ... 29 3.6.5. NASNet ... 33 3.7. Veri Seti ... 35 4. UYGULAMA ... 40

4.1. Veri Seti Üzerinde Yapılan ÇalıĢmalar ... 40

4.2. Derin Öğrenme Ağları Üzerinde Yapılan ÇalıĢmalar ... 47

4.2.1. ResNet Üzerinde Yapılan ÇalıĢmalar ... 48

4.2.2. DenseNet Üzerinde Yapılan ÇalıĢmalar ... 50

4.2.3. VGGNet Üzerinde Yapılan ÇalıĢmalar ... 52

4.2.4. Inception v3 Üzerinde Yapılan ÇalıĢmalar ... 53

4.2.5. NASNet Üzerinde Yapılan ÇalıĢmalar ... 55

4.3. Derin Öğrenme Modellerinin Test Edilmesi ... 55

5. ARAġTIRMA BULGULARI VE TARTIġMA ... 58

5.1. ResNet Modeline Ait Elde Edilen Bulgular ... 58

5.2. DenseNet Modeline Ait Elde Edilen Bulgular ... 63

5.3. VGGNet Modeline Ait Elde Edilen Bulgular ... 68

5.4. Inception v3 Modeline Ait Elde Edilen Bulgular ... 71

5.5. NASNet Modeline Ait Elde Edilen Bulgular ... 75

5.6. Derin Öğrenme Modelleri Üzerindeki Test ĠĢlemleri ... 79

6. SONUÇLAR VE ÖNERĠLER ... 91

6.1 Sonuçlar ... 91

6.2 Öneriler ... 94

KAYNAKLAR ... 96

(8)

viii

SĠMGELER VE KISALTMALAR

Kısaltmalar

AB : Avrupa Birliği

ABD : Amerika BirleĢik Devletleri

BN : Batch Normalization

BoW : Bag of Words

CNN : Convolutional Neural Network CNTK : Cognitive Network Toolkit CPU : Central Processing Unit

DDSM : Digital Database for Screening Mammography GPU : Graphical Processing Unit

ILSVRC : ImageNet Large Scale Visual Recognition Challenge

IN : Instance Normalization

kNN : k-Nearest Neighbors

LN : Layer Normalization

mAP : mean Average Precision MLP : Multi Layer Perceptron RAWPED : Railway Pedestrian Dataset ReLU : Rectified Linear Unit ResNet : Residual Network

RF : Radio Frequency

RGB : Red Green Blue

RNN : Recurrent Neural Network SVHN : Street View House Numbers SVM : Support Vector Machine TÜĠK : Türkiye Ġstatistik Kurumu UCI : University of California Irvine VOC : Visual Object Classes

YOLO : You Only Look Once

(9)

ix

ÇĠZELGE LĠSTESĠ

Çizelge 1.1. AB vatandaĢlarının 2019 yılı tatil tercihleri dağılımı (Lutty, 2019) ... 1

Çizelge 1.2. BirleĢik Krallık’ta 2014 yılına ait tatil evleri sektörü geliri ... 2

Çizelge 1.3. AB’deki tatil evi pazarlarının ülkelere göre yüzdesel dağılımı (Assa Abloy, 2017) ... 2

Çizelge 1.4. TÜĠK tarafından paylaĢılan turizm verileri ... 2

Çizelge 3.1. Tez çalıĢmasında kullanılan derin öğrenme bilgisayarı ... 19

Çizelge 3.2. Keras ve TensorFlow versiyonları ... 21

Çizelge 3.3. ResNet ILSVRC 10-Crop Testing karĢılaĢtırması ... 23

Çizelge 3.4. DenseNet ILSVRC Single-Crop / 10-Crop Testing karĢılaĢtırması ... 26

Çizelge 3.5. VGGNet ILSVRC lokalizasyon sonuçları ... 28

Çizelge 3.6. ILSVRC 2012 test sonuçları ... 33

Çizelge 3.7. RNN’in kullanabileceği operatörler ... 35

Çizelge 3.8. Kullanılan veri setine ait istatistikler ... 36

Çizelge 4.1. Veri tabanında bulunan veri miktarı ve ayıklama öncesi – sonrası veri miktarı ... 46

Çizelge 4.2. ResNet 50 modeline ait kapalı gösterim ... 49

Çizelge 4.3. ResNet 50 modeline ait parametre bilgisi ... 49

Çizelge 4.4. DenseNet 201 modeline ait parametre bilgisi ... 51

Çizelge 4.5. DenseNet 201 modeline ait kapalı gösterim ... 51

Çizelge 4.6. VGGNet 19 modeline ait parametre bilgisi ... 52

Çizelge 4.7. Inception v3 modeline ait parametre bilgisi ... 54

Çizelge 4.8. NASNet Mobile modeline ait parametre bilgisi ... 55

Çizelge 5.1. ResNet 50 modeline ait 10, 20 ve 50 epoch eğitim sonuçları kıyaslaması 59 Çizelge 5.2. ResNet 50 modeline ait 20 epoch eğitim sonuçları ... 60

Çizelge 5.3. ResNet 50 modeline ait 10 epoch eğitim sonuçları ... 62

Çizelge 5.4. DenseNet 201 modeline ait 20 epoch eğitim sonuçları ... 64

Çizelge 5.5. DenseNet 201 modeline ait 10 epoch eğitim sonuçları ... 66

Çizelge 5.6. VGGNet 19 modeline ait 20 epoch eğitim sonuçları ... 68

Çizelge 5.7. VGGNet 19 modeline ait 10 epoch eğitim sonuçları ... 70

Çizelge 5.8. Inception v3 modeline ait 20 epoch eğitim sonuçları ... 72

Çizelge 5.9. Inception v3 modeline ait 10 epoch eğitim sonuçları ... 74

Çizelge 5.10. NASNet Mobile modeline ait 20 epoch eğitim sonuçları ... 76

Çizelge 5.11. NASNet Mobile modeline ait 10 epoch eğitim sonuçları ... 78

Çizelge 5.12. Derin öğrenme modellerinin banyo test verileri için yapmıĢ oldukları tahmin ... 81

Çizelge 5.13. Derin öğrenme modellerinin oturma odası test verileri için yapmıĢ oldukları tahmin ... 83

Çizelge 5.14. Derin öğrenme modellerinin yatak odası test verileri için yapmıĢ oldukları tahmin ... 85

Çizelge 5.15. Derin öğrenme modellerinin mutfak test verileri için yapmıĢ oldukları tahmin ... 87

Çizelge 5.16. Derin öğrenme modellerinin bahçe test verileri için yapmıĢ oldukları tahmin ... 89

Çizelge 6.1. Derin öğrenme modellerinin baĢarı ve hata oranları özeti ... 94

(10)

x

ġEKĠL LĠSTESĠ

ġekil 3.1. Yapay sinir ağı modeli ... 12

ġekil 3.2. Örnek bir CNN modeli ... 14

ġekil 3.3. Konvolüsyon iĢlemi ... 15

ġekil 3.4. Üç boyutlu konvolüsyon iĢlemi ... 16

ġekil 3.5. Pooling iĢlemi ... 16

ġekil 3.6. Normalizasyon iĢlemi ... 17

ġekil 3.7. DüzleĢtirme iĢlemi ... 17

ġekil 3.8. Dropout iĢlemi ... 18

ġekil 3.9. TensorFlow ... 20

ġekil 3.10. Keras ... 20

ġekil 3.11. 20 ve 50 katmanlı ağ yapılarından elde edilen test ve eğitim hata oranları . 22 ġekil 3.12. ResNet modelinde yer alan kısayol bağlantıları ... 22

ġekil 3.13. ResNet farklı katman modelleri ... 23

ġekil 3.14. ResNet 50 katmanlı modeli ... 23

ġekil 3.15. DenseNet modeline ait bağlantı yapısı ... 24

ġekil 3.16. ResNet (üstte) ve DenseNet (altta) kıyaslaması ... 25

ġekil 3.17. DenseNet modeline ait DenseBlock ve Transition Layer ... 25

ġekil 3.18. DenseBlock içinde gerçekleĢen BN-ReLU-1x1 Conv ve BN-ReLU-3x3 Conv iĢlemleri ... 26

ġekil 3.19. DenseNet modeline ait farklı katman sayılarına sahip versiyonları ... 26

ġekil 3.20. VGGNet A, B, C, D, E konfigürasyonları (Sırasıyla yukarında aĢağıya) .... 28

ġekil 3.21. GoogleNet modeli ... 29

ġekil 3.22. GoogleNet Inception modülü ... 29

ġekil 3.23. 5 x 5 filtre faktorizasyonu ... 30

ġekil 3.24. Inception-v1 modülü (solda) ve Inception-v3-A modülü (sağda) ... 31

ġekil 3.25. 3 x 3 filtre yerine sırasıyla 3 x 1 ve 1 x 3 filtrelerin kullanılması ... 31

ġekil 3.26. Inception-v3-B modülü (solda) ve Inception-v3-C modülü (sağda) ... 32

ġekil 3.27. Inception v3 modeli Ģematik gösterimi ... 32

ġekil 3.28. NASNet CIFAR10 (solda) ve ImageNet (sağda) blokları ... 34

ġekil 3.29. RNN yapmıĢ olduğu iĢlem adımları (yukarıda) ve çıktı Ģeması (aĢağıda) ... 35

ġekil 3.30. Veri setinde bulunan temsili yatak odası (solda) ve oturma odası (sağda) görselleri ... 37

ġekil 3.31. Veri setinde bulunan temsili banyo (solda) ve mutfak (sağda) görselleri .... 38

ġekil 3.32. Veri setinde bulunan temsili bahçe görselleri ... 39

ġekil 4.1. Temsili mutfak görseline ait farklı etiket opsiyonları ... 41

ġekil 4.2. Etiketinde mutfak kelimesi geçen ancak bahçeyi betimleyen fotoğraf ... 42

ġekil 4.3. Bir fotoğraf karesinde birden fazla odaya ait görsel objelerin yer alması ... 43

ġekil 4.4. Bahçe olarak etiketlenen ancak binayı/evi gösteren fotoğraf ... 43

ġekil 4.5. Ġçeriğinde canlı varlık (hayvan) içeren ve veri setine dahil edilmeyen görsel 44 ġekil 4.6. Veri seti oluĢturma aĢamaları ... 47

ġekil 4.7. ResNet 50 modelinde yer alan ―Residual Block‖ ... 50

ġekil 4.8. VGGNet 19 modeline ait katmanların ve filtre boyutlarının gösterimi ... 53

ġekil 4.9. Inception v3 modelinin kapalı diyagram Ģeklinde gösterimi ... 54

ġekil 4.10. Eğitim, test ve validasyon setlerinin kullanım aĢamaları ... 56

ġekil 4.11. ResNet modelinin 10 epoch eğitim çıktısı (üstte) ve banyo için tahmin sonucu çıktısı (altta) ... 57

ġekil 4.12. Eğitim için kullanılan kaba kod ... 57

(11)

xi

ġekil 5.2. ResNet 50 modeline ait 20 epoch eğitim hata grafiği ... 61

ġekil 5.3. ResNet 50 modeline ait 10 epoch eğitim baĢarı grafiği ... 62

ġekil 5.4. ResNet 50 modeline ait 10 epoch eğitim hata grafiği ... 63

ġekil 5.5. DenseNet 201 modeline ait 20 epoch eğitim baĢarı grafiği ... 65

ġekil 5.6. DenseNet 201 modeline ait 20 epoch eğitim hata grafiği ... 65

ġekil 5.7. DenseNet 201 modeline ait 10 epoch eğitim baĢarı grafiği ... 67

ġekil 5.8. DenseNet 201 modeline ait 10 epoch eğitim hata grafiği ... 67

ġekil 5.9. VGGNet 19 modeline ait 20 epoch eğitim baĢarı grafiği ... 69

ġekil 5.10. VGGNet 19 modeline ait 20 epoch eğitim hata grafiği ... 69

ġekil 5.11. VGGNet 19 modeline ait 10 epoch eğitim baĢarı grafiği ... 70

ġekil 5.12. VGGNet 19 modeline ait 10 epoch eğitim hata grafiği ... 71

ġekil 5.13. Inception v3 modeline ait 20 epoch eğitim baĢarı grafiği ... 73

ġekil 5.14. Inception v3 modeline ait 20 epoch eğitim hata grafiği ... 73

ġekil 5.15. Inception v3 modeline ait 10 epoch eğitim baĢarı grafiği ... 74

ġekil 5.16. Inception v3 modeline ait 10 epoch eğitim hata grafiği ... 75

ġekil 5.17. NASNet Mobile modeline ait 20 epoch eğitim baĢarı grafiği ... 77

ġekil 5.18. NASNet Mobile modeline ait 20 epoch eğitim hata grafiği ... 77

ġekil 5.19. NASNet Mobile modeline ait 10 epoch eğitim baĢarı grafiği ... 78

ġekil 5.20. NASNet Mobile modeline ait 10 epoch eğitim hata grafiği ... 79

ġekil 5.21. Modellerin test edilmesi için kullanılan banyo test görselleri ... 82

ġekil 5.22. Modellerin test edilmesi için kullanılan oturma odası test görselleri ... 84

ġekil 5.23. Modellerin test edilmesi için kullanılan yatak odası test görselleri ... 86

ġekil 5.24. Modellerin test edilmesi için kullanılan mutfak test görselleri ... 88

(12)

1. GĠRĠġ

Turizm, bir ülkeye veya bir bölgeye, turist çekmek için alınan ekonomik, kültürel, teknik önlemlerin ve çalıĢmaların tümüne verilen isimdir (Türk Dil Kurumu, 2019). Turizm, dünyadaki çeĢitli ülkelerin ve bölgelerin ekonomilerine doğrudan katkı yapan önemli bir alandır. Ulusal ve uluslararası tatil günleri turizm destinasyonlarındaki konaklama, hizmet ve diğer faaliyetleri artırmaktadır. Konaklama faaliyetleri içinde oteller, tatil evleri, vb lokasyonlar düĢünülebilir (Martín, 2018).

Tatil evleri, bir ev veya apartman dairesinde bulunan, bir dairenin veya evin tamamını kapsayan, kendi yemek piĢirme olanaklarına sahip, bir otele ait olmayan ve otel gibi hizmet sunmayan ve genellikle kısa vadeli olarak kiralanan konaklama alanlarıdır. Sektörde bulunan farklı iĢ modellerine göre tanım değiĢiklik gösterebilir ancak en genel haliyle bu Ģekilde tanımlanmaktadır (Scanlon ve ark., 2014). Evlerin satıĢ veya kira bedeli, evin konumuna, yaĢına, tipine, durumuna, büyüklüğüne vb. birçok farklı kritere göre belirlenmektedir (OECD, 2016).

Tatil evleri sektörü istatistiksel olarak ele alındığında 2019 yılına ait gelirin 57,669 milyon dolar olduğu görülmektedir (Statista, 2019). BaĢka bir istatistiğe göre Avrupa Birliği (AB) vatandaĢları tarafından en çok tercih edilen ikinci tatil planını %34’lük oranıyla tatil evleri oluĢturmaktadır (Lutty, 2019). AB vatandaĢlarına ait tatil tercihleri Çizelge 1.1’de paylaĢılmıĢtır.

Çizelge 1.1. AB vatandaĢlarının 2019 yılı tatil tercihleri dağılımı (Lutty, 2019) Tatil Tercihi Tercih Yüzdesi (%)

Oteller 48

Tatil Evleri 34

Kamp 11

Bot/Tekne Seyahati 6

Homeaway adlı firmanın yayınlamıĢ olduğu istatistikte tatil evleri sektöründen, 2014 yılında BirleĢik Krallık’ta toplam 285 milyon pound tutarında net gelir elde edilmiĢtir. Bölgelere göre elde edilen kazançlar Çizelge 1.2’de verilmiĢtir (Scanlon ve ark., 2014).

(13)

Çizelge 1.2. BirleĢik Krallık’ta 2014 yılına ait tatil evleri sektörü geliri Lokasyon Net Gelir (Milyon Pound)

Londra 70

Cornwall 15

North Yorkshire 9

BirleĢik Krallık 285

Assa Abloy adlı kurumun araĢtırmasına göre AB’deki tatil evleri sektörünün büyüklüğü 2016 yılı itibariyle 23,28 milyar euro tutarındadır ve bu tutarın 2023 yılında 32,5 milyar euroya ulaĢacağı tahmin edilmektedir. Bu aralıkta yaĢanacak bileĢik büyüme oranının %5,8 olacağı düĢünülmektedir. Rezervasyonların %29,3’ü online olarak, kalanıysa diğer yöntemlerle yapılmaktadır. 2017 yılı itibariyle AB’deki en büyük tatil evi pazarları Çizelge 1.3’de verilmiĢtir (Assa Abloy, 2017).

Çizelge 1.3. AB’deki tatil evi pazarlarının ülkelere göre yüzdesel dağılımı (Assa Abloy, 2017) Ülke Pazar Payı (%)

Almanya 17,47 Fransa 13,49 BirleĢik Krallık 12,91 Ġspanya 10,41 Ġtalya 6,51 Diğer AB ülkeleri 39,21

Türkiye Ġstatistik Kurumu’nun (TÜĠK) yayınlamıĢ olduğu verilerde 2018 yılında Türkiye’deki kiralık tatil evlerindeki ortalama geceleme sayısı 28,8 gecedir. Yıllık turizm geliri 29,5 milyar dolardır ve toplamda 45,6 milyon ziyaretçi sayısına ulaĢılmıĢtır. TÜĠK tarafından paylaĢılmıĢ son 5 yıla ait turizm istatistiği Çizelge 1.4’te paylaĢılmıĢtır (Türkiye Ġstatistik Kurumu, 2019).

Çizelge 1.4. TÜĠK tarafından paylaĢılan turizm verileri Yıl Yıllık Turizm

Geliri (Bin $)

Ziyaretçi

Sayısı Kiralık evlerdeki ortalama geceleme sayısı

2015 31.464.777 41.617.530 21,2 2016 22.107.440 31.365.330 28,7 2017 26.283.656 38.620.346 31,3 2018 29.512.926 45.628.673 28,8 2019 (I ve II. Çeyrek) 12.603.642 19.406.737 - Toplam 121.972.441 176.638.616 27,5 (Ortalama)

(14)

Turizm ve teknoloji alanlarında yaĢanan geliĢmelerle beraber kısa süreli kiralık konaklama olanakları değiĢmektedir. Farklı perspektiflerden bu duruma bakıldığında teknolojide yaĢanan geliĢmeler, sosyolojik, ekonomik ve felsefik değiĢiklikler konaklama kültüründe farklılıklara sebep olmaktadır. Airbnb, Uber, vb. firmalar bu farklılıklara neden olan paylaĢım ekonomisi içinde yer almaktadır. PaylaĢım ekonomisi, tüketiciden tüketiciye gerçekleĢen, geçici süreyle tüketim yapılan varlıklara eriĢim sağlayan ve ikinci el ekonomisinden bağımsız gerçekleĢen bir ekonomi olarak tanımlanmaktadır. Bu iĢ modelinde yer alan Airbnb, 2008 yılında San Francisco’da kurulmuĢtur. Dünyanın farklı lokasyonlarındaki ev sahibi ve kısa süreli kiracıları bir araya getiren bir platformdur (Oskam ve ark., 2016).

Tüketicilerin davranıĢ ve alıĢkanlıklarını etkileyen bu değiĢimler sayesinde, Airbnb, Homeaway, Expedia, vb. rezervasyon portallarından, otel/tatil evi web sitelerinden, acentalardan ve internette yer alan diğer platformlardan çeĢitliliğe, bilgiye ve farklı fiyat opsiyonlarına eriĢim imkânı artmıĢtır. Ġstatistikler incelendiğinde dünya genelinde yapılan rezervasyonların yaklaĢık %25’lik oranı internet üzerinden yapılmaktadır (Crnojevac ve ark., 2010).

Turizm endüstrisinde yaĢanan değiĢiklikler teknoloji odaklı incelendiğinde günümüzde çeĢitli yapay zeka uygulamalarının, karar – destek yapılarının, otonom sohbet asistanlarının ve diğer teknolojilerin turizm sektöründe kullanıldığı görülmektedir. Eskiden firmalar, çeĢitli acentalar vasıtasıyla, müĢterilerle yüz yüze iletiĢim kurarak tatil paketlerini satmaktaydılar. Günümüzde ise internet üzerinden rezervasyon tercih edilmektedir. Büyük rezervasyon portallarının kullanmıĢ olduğu kiĢisel asistanlar ve yapay zeka uygulamalarıyla müĢterilere, karar aĢamasında yardım edilmektedir. MüĢterilere kiĢisel tekliflerin sunulması, fiyat analizi, lokasyon önerileri ve tarih önerileri gibi, müĢteri istekleri doğrultusunda, müĢteriye en iyi seyahatin önerilmesi sağlanmaktadır. Bu uygulamaların arkasında büyük veri, algoritmalar, derin öğrenme, mobil uygulamalar, yapay chat asistanları, vb. teknolojiler bulunmaktadır (Zsarnoczky, 2017).

1.1. Tezin Amacı

GeçmiĢten günümüze turizm sektöründe yaĢanan geliĢmelere bakıldığında son yıllarda teknolojinin etkileri artmıĢtır. Eskiden kullanılan acenta bürolarının yerini internet rezervasyonları, mobil tatil uygulamaları, chat botları, karar – destek yapıları,

(15)

kiĢisel asistanlar, vb. çok çeĢitli bilgisayar uygulamaları almıĢtır. Günümüzde internet ortamından hizmet veren rezervasyon portalları, belirtilen bu teknolojileri kullanmaktadır.

Dünya genelinde farklı tipte, boyutlarda, özelliklerde tatil evleri bulmak mümkündür. Her tatil evi, bulunduğu bölgeye bağlı olmak üzere farklı odalar içerebilmektedir. Bu nedenle, çeĢitli rezervasyon portalları, müĢterilere ve ev sahiplerine yardımcı olmak için, yapay zeka uygulamaları kullanarak bu odaları sınıflandırmaya çalıĢmaktadır.

GerçekleĢtirilen bu tez çalıĢmasında, tatil evlerinde yer alan odaların sınıflandırılması üzerinde durulmuĢtur. Almanya merkezli bir rezervasyon portalına ait tatil evleri veri seti kullanılarak, derin öğrenme yardımıyla tatil evlerinin sınıflandırılması sağlanmıĢtır. Literatürde sıkça kullanılan çeĢitli derin öğrenme modelleriyle bu sınıflandırma iĢlemleri gerçekleĢtirilmiĢtir ve sonuçları bu tez çalıĢmasında incelenmiĢtir.

Ġlgili bu çalıĢmasında, literatürde popüler olan derin öğrenme modellerinin, daha önce hiç kullanılmamıĢ bir veri setiyle aldıkları sonuçların bilimsel bir Ģekilde incelenmesi amaçlanmıĢtır. Odaların sınıflandırılmasında önemli olan etmenlerin incelenmesi, oda sınıflandırmasında baĢarı oranına etki eden nesnelerin belirlenmesi ve bu durumun farklı derin öğrenme modelleri üzerinde incelenerek bilimsel bir Ģekilde ele alınması amaçlanmıĢtır. Tez çalıĢmasının sonunda elde edilen uygulama, bir rezervasyon portalında son kullanıcıyla buluĢturularak, yardımcı asistan olarak hizmet vermesi de farklı bir amaçtır.

1.2. Tezin Organizasyonu

Tez çalıĢmasına konu olan turizm sektörü, ekonomik boyutu ve turizm sektöründe yaĢanan teknolojik geliĢmeler ―1. GĠRĠġ‖ bölümü altında ele alınmıĢtır ve çeĢitli kaynaklardan alınan istatistikler paylaĢılmıĢtır. ―2. KAYNAK ARAġTIRMASI‖ baĢlığı altında bu tez çalıĢmasıyla benzerliği olan ya da derin öğrenme ile sınıflandırmalar üzerine yapılan çalıĢmalar incelenmiĢtir. Bu tez çalıĢmasında kullanılan ve literatürde sıklıkla isimlerinden söz ettiren derin öğrenme modellerine de bu baĢlık altında değinilmiĢtir. ―3. MATERYAL VE YÖNTEM‖ baĢlığı altında bu tez çalıĢmasında kullanılan Keras, Tensorflow, donanım birimleri ve derin öğrenme modelleri (ResNet, DenseNet, VGGNet, Inception v3 ve NASNet) açıklanmıĢtır. ―4.

(16)

UYGULAMA‖ baĢlığı altında, detayları verilen veri setinin oluĢturulma süreci, karĢılaĢılan problemler, verilerde yapılan ayıklama, temizlik ve etiketleme süreci anlatılmıĢtır. Tez çalıĢmasında kullanılan derin öğrenme modellerinin uygulanmasını, veri setiyle kullanımı ve tercih edilen parametre/fonksiyonlar yine aynı baĢlık altında paylaĢılmıĢtır. ―5. ARAġTIRMA BULGULARI VE TARTIġMA‖ baĢlığı altında, derin öğrenme modellerinin 10 ve 20 epoch eğitim sonuçları, baĢarı ve hata oranları, grafikleri açıklanmıĢtır. Test setinden elde edilen görseller, derin öğrenme modelleri kullanılarak tahmin sürecine tabi tutulmuĢtur. Derin öğrenme modellerinin, test seti üzerindeki baĢarısı da paylaĢılmıĢtır. ―6. SONUÇLAR VE ÖNERĠLER‖ bölümünde tez çalıĢması hakkında elde edilen genel sonuçlar, problem ve problemin çözümü ve ileriye yönelik olarak bu tez çalıĢmasından çıkarılan öneriler verilmiĢtir.

(17)

2. KAYNAK ARAġTIRMASI

Turizm sektöründe kullanılan teknoloji çözümleri gün geçtikçe değiĢmekte ve kullanım oranları artmaktadır. Bu bölümde literatürde yer alan sınıflandırma çalıĢmaları baĢta olmak üzere diğer çalıĢmalar incelenmiĢtir.

Krizhevsky ve ark. (2012) AlexNet adında bir Konvolüsyonel Yapay Sinir Ağı (Convolutional Neural Network - CNN) geliĢtirmiĢlerdir. Bu ağı, ImageNet Large Scale Visual Recognition Challenge (ILSVRC) 2010 veri setiyle eğitmiĢlerdir. Ağ, paralel olarak 2 farklı Graphical Processing Unit (GPU) üzerinde eğitilmiĢtir. Ġlk 5’i CNN ve diğer 3’ü tam bağlantılı sinir ağı olmak üzere toplamda 8 katmanlı bir ağ geliĢtirmiĢlerdir. Elde edilen sonuçlara göre top-1 ve top-5 hata oranları sırasıyla %37,50 ve %17 olmuĢtur. Bu sonuçlarla ILSVRC 2010 birincisi Sparse Coding’i geçmiĢtir. ILSVRC2012’de birincilik elde etmiĢtir.

Girshick ve ark. (2014) bölge tabanlı CNN modelini önermiĢtir. Veride yer alan objeler çıkarılarak CNN ağına aktarılmıĢtır. YaklaĢık 2000 bölge, veriden çıkarılarak CNN ağına verilir ve bu verinin sınıflandırılması sağlanır. PASCAL Visual Object Classes (VOC) 2010 veri setinde 50,2 (mean Average Precision - mAP) sonucunu vermiĢtir.

Zeiler ve Fergus (2014) yaptıkları çalıĢmada AlexNet modeli üzerinde çeĢitli değiĢiklikler yapmıĢtır. Büyük filtreler kullanıldığında verideki desenlerin kaybolduğunu savunmuĢlardır. Bu nedenle, AlexNet modelinde yer alan filtre boyutu ve konvolüsyon iĢlemi değiĢtirilmiĢtir. Rectified Linear Unit (ReLU) aktivasyon fonksiyonu kullanılmıĢtır. Top-5 hata oranına göre %16,50 değerinde bir orana sahip olarak AlexNet modelinden daha baĢarılı olduğunu göstermiĢtir. GeliĢtirdikleri model aynı zamanda ZFNet olarak da bilinmektedir. ILSVRC 2013’de birincilik elde etmiĢtir.

Simonyan ve Zisserman (2015) yaptıkları çalıĢmada küçük konvolüsyon filterleri kullanımının sağlayacağı avantajları ortaya koymuĢtur. GeliĢtirmiĢ oldukları model (VGGNet) ile ILSVRC2014’deki bazı kategorilerde iyi dereceler almıĢlardır. VGG-11 (A), 13 (B), 16 (C), 16 (D), 19 (E) olmak üzere 5 farklı versiyon önermiĢlerdir. Yaptıkları ILSVRC sınıflandırma testinde top-5 hata yüzdelerine göre ZFNet (1 net) %16,1, GoogLeNet (1 net) %7,9 ve VGGNet ise %7,0 sonuçlarını vermiĢtir.

Szegedy ve ark. (2015) GoogLeNet (Inception) adında bir CNN modeli geliĢtirmiĢlerdir. Bu model 22 katmandan oluĢmaktadır. Inception adımlarıyla birlikte farklı konvolüsyon filtrelerini bir sonraki adımda Pooling yöntemiyle kombine

(18)

etmiĢlerdir. 1x1, 3x3 ve 5x5 boyutlarında konvolüsyon filtreleri kullanılmıĢtır. Derin öğrenme modelinin son aĢamalarında tam bağlantılı ağlar yerine Global Average Pooling kullanılmıĢtır. GeliĢtirilen bu model, ILSVRC 2014 yarıĢmasını kazanmıĢtır.

He ve ark. (2016) CNN ağları üzerinde yaptıkları çalıĢmada elde ettikleri baĢarıyla ILSVRC 2015 yarıĢmasını kazanmıĢlardır. Derin öğrenme ağlarında, katmanlar arttıkça, baĢarı oranının azalmaktadır. GeliĢtirmiĢ oldukları Residual Network (ResNet) ağlar ile bu sorunu gidermiĢlerdir. 18, 34, 50, 101 ve 152 katmanlı ağlarla çalıĢmalarını yapmıĢlardır. ImageNet veri seti üzerinden alınan top-5 hata oranlarına göre ResNet-50, 6,71, ResNet-101 6,05 ve ResNet-152 5,71 sonuçlarını vermiĢtir. KarĢılaĢtırma yapılan 16 katmanlı VGGNet 9,33 ve GoogLeNet 9,15 sonuçlarını vermiĢtir.

Xie ve ark. (2017) ResNet derin öğrenme modelinde yaptıkları değiĢiklik ile ILSVRC 2016 yarıĢmasında ikincilik kazanmıĢlardır. ―Kardinalite‖ adıyla geliĢtirdikleri kavram ile ResNet modeline paralellik kazandırmıĢlardır. Her adımında kullanılan filtreler 32 farklı paralel birimde (kardinalite = 32 parametresine göre) çalıĢtırılmıĢtır, çıktıları kombine edilmiĢtir. Model, 50 katmana sahiptir. ImageNet-5K deney sonuçlarına göre top-5 hata oranları kıyaslandığında ResNet %8,2 ve ResNeXt %6,6 sonuçlarını almıĢtır.

Redmon ve ark. (2016) gerçek zamanlı obje sınıflandırması için You Only Look Once (YOLO) modelini geliĢtirmiĢlerdir. Bu model, saniyede 45 kare iĢleyebilmektedir. Daha hızlı versiyonu olan Fast-YOLO ise saniyede 155 kare iĢleyebilmektedir. YOLO modeli, 24 konvolüsyon ve 2 tam bağlantılı sinir ağından oluĢmaktadır. Gelen girdi verisini, ızgaralara ayırarak tahmin yapmaktadır. Girdiyi tek bir seferde modelden geçirdiği için diğer obje sınıflandırma yöntemlerine göre daha hızlı sonuçlar vermektedir. PASCAL VOC 2007+2012 veri setleriyle yapılan eğitimde 63,4 mAP değeri elde edilmiĢtir.

Anwer (2017) çalıĢmasında, göğüs kanseri teĢhisi için bir derin öğrenme modeli kullanmıĢtır. ÇeĢitli yapay sinir ağları kullanarak yaptığı bu çalıĢmada, Winconsin University of California Irvine (UCI) veri deposunda yer aĢan göğüs kanseri veri seti üzerinde çalıĢmalarını yerine getirmiĢtir. CNN modeliyle maksimum %99,30 baĢarı oranı elde etmiĢtir. Tam bağlantılı sinir ağı modeliyle maksimum %97,90 oranında bir doğruluk sağlamıĢtır.

Szegedy ve ark. (2017) ResNet ağlarını, GoogLeNet CNN modelinde kullanılan Inception metoduyla modifiye etmiĢlerdir. Adımlarda kullanılan konvolüsyon

(19)

filtrelerini birleĢtirerek bir sonraki adıma göndermiĢlerdir. 4 farklı Inception modeli ortaya koymuĢlardır. ILSVRC 2012 validasyon setiyle yapılan deneyde top-5 hata oranı kıyaslamasına göre ResNet (He ve ark., 2015) %3,6 ve Residual-Inception-v4 modeli %3,1 sonuçlarını vermiĢtir.

Çapkan (2018) yapmıĢ olduğu tez çalıĢmasında ResNet, AlexNet, GoogLeNet gibi baĢarılı modeller kullanarak cisim sınıflandırma iĢlemi yapmıĢtır. Sınıflandırılan cisim, robot bir kolun karar mekanizmasında kullanılmıĢtır. ĠĢlenmiĢ resimler için 200 iterasyonda, ResNet ağında %97,78 doğruluk oranı elde etmiĢtir.

Wu ve ark. (2015) geliĢtirmiĢ oldukları Deep Image adındaki model ile resim sınıflandırma çalıĢmaları yapmıĢtır. BaĢarının önemli bir bölümü kullanmıĢ oldukları donanım ve ekran kartı altyapısıyla sağlanmıĢtır. Aynı zamanda Brute Force yöntemini de kullanmıĢlardır. ILSVRC2014 veri setiyle yapılan çalıĢmada top-5 validasyon hata oranı %7,42 olarak bulunmuĢtur. GoogLeNet ve VGGNet aynı testte sırasıyla %7,89 ve %8,0 sonuçlarını vermiĢtir.

Huang ve ark. (2018) DenseNet adında bir derin öğrenme modeli geliĢtirmiĢlerdir. ResNet modeline benzer bir Ģekilde katmanların baĢka katmanlara bağlantısı bulunmaktadır. Ancak ResNet modelinde yer alan bu bağlantı, her katman bir sonraki katmana bağlanan yapıda kurgulanmıĢtır. DenseNet modelinde ise her katman ileri yöndeki diğer katmanlara bağlanmaktadır. 121, 169, 201 ve 264 katmanlı versiyonları vardır. CIFAR10 setiyle yapılan çalıĢmada DenseNet (k = 12), %7,0 hata oranı elde etmiĢtir.

Hu ve ark. (2019) SENet adıyla geliĢtirmiĢ oldukları derin öğrenme ağıyla ILSVRC 2017 yarıĢmasını birincilikle kazanmıĢlardır. ÇalıĢmadaki ana amaç, konvolüsyon katmanlarından alınan çıktı kanallarının bir parametre yardımıyla ağın ağırlıklarının adaptif bir Ģekilde ayarlanmasını sağlamaktır. SENet özelliğinin ResNet ve Inception ile beraber kullanım olanakları da bulunmaktadır.

Yaman (2018) gerçekleĢtirmiĢ olduğu tez çalıĢmasında kulak imgelerinden cinsiyet ve yaĢ tahmini yapmıĢtır. GerçekleĢtirmiĢ olduğu çalıĢmada ResNet-50 ve VGG-16 derin öğrenme modellerinden yararlanmıĢtır. FERET, UND-F ve UND-J2 veri kümelerini kullanmıĢtır. Cinsiyet sınıflandırması için kullandığı VGG-16 ve ResNet-50 modellerinde %100 baĢarı oranı elde etmiĢtir.

Gürkaynak (2018) gerçekleĢtirmiĢ olduğu çalıĢmada gemi sınıflandırması yapmıĢtır. MARVEL veri seti kullanarak yapmıĢ olduğu çalıĢmada, ResNet, AlexNet ve

(20)

VGGNet derin öğrenme modellerini kullanmıĢtır. Eğitim transferi yaklaĢımını uygulamıĢtır. Elde ettiği sonuçlara göre VGGNet en baĢarılı model olmuĢtur.

Seyfioğlu (2017) yapmıĢ olduğu tez çalıĢmasında radarlara ait Radio Frequency (RF) sinyallerini sınıflandırmak için çeĢitli modeller kullanmıĢtır. Gözetimsiz ön-eğitim ve aktarımlı öğrenme metodlarıyla öğrenme iĢlemi yapmıĢtır. Aktarımlı öğrenme için GoogLeNet, ResNet ve VGGNet modellerini kullanmıĢtır. ÇalıĢmada en iyi sonucu DivNet modeli vermiĢtir.

Akılotu (2019) gerçekleĢtirdiği tez çalıĢmasında tıkayıcı uyku apnesi tespiti üzerine çalıĢmıĢtır. Tıkayıcı uyku apnesi, hastaya ait çeĢitli sinyallerin (EEG, Solunum, Karbondioksit vb.) ölçümüyle tespit edilebilmektedir. AlexNet ve VGG-16 modellerine ait FC-6 ve 7 numaralı katmanları karĢılaĢtırmıĢtır. Sınıflandırma için k-Nearest Neighbors (kNN) ve Support Vector Machine (SVM) kullanmıĢtır. Kıyaslama sonucuna göre kNN için VGG-16 model değerleri daha iyi sonuçlar vermiĢtir.

Kadiroğlu (2019) tez çalıĢmasında meme kanserinin tespiti için AlexNet ve VGG-16 derin öğrenme modellerinden faydalanmıĢtır. Bununla beraber Destek Vektör Makineleri ve transfer öğrenme metotlarını da kullanmıĢtır.

Örs (2018) buğdayların sınıflandırılması üzerine çalıĢmıĢtır. Farklı dalga boylarında elde edilen buğday görselleri üzerinde farklı metotlar kullanarak sınıflandırma iĢlemi yapmıĢtır. AlexNet modeli ile birlikte SVM ve Bag of Words (BoW) modellerinden de faydalanmıĢtır.

Ezel (2018) yapmıĢ olduğu tez çalıĢmasında Türk ĠĢaret Dili’ni yazı diline çevirmiĢtir. Bunun için özel bir CNN modeliyle birlikte AlexNet modelinden faydalanmıĢtır. 4176 adet görüntüden oluĢan bir veri seti üzerinde çalıĢmalarını yapmıĢtır.

Kılınç (2018) tez çalıĢmasında fotoğraflardan Down sendormu tespiti üzerinde çalıĢmıĢtır. Bunun için AlexNet modelinden faydalanmıĢtır. Elde edilen baĢarı oranının %85 – 90 arasında olduğunu belirtmiĢtir.

Mehr (2017) yapmıĢ olduğu çalıĢmada akciğer kanseri teĢhisi üzerine çalıĢmıĢtır. Kaggle ve Data Science Bowl veri setleriyle beraber AlexNet ve GoogleNet modellerini kullanmıĢtır. BaĢarı oranları sırasıyla %95.919 ve %96.360 olarak elde edilmiĢtir.

Toprak (2018) yapmıĢ olduğu tez çalıĢmasında demiryollarından geçen yayaların tespit edilmesi üzerinde durmuĢtur. AlexNet, VGGNet modelleri ve CalTech, INRIA veri setlerinin bu problem için yetersiz olduğunu belirtmiĢtir. ÇeĢitli makine

(21)

öğrenmesi yöntemleriyle beraber aktarımlı öğrenme kullanmıĢtır. Railway Pedestrian Dataset (RAWPED) kullanarak tez çalıĢmasını gerçekleĢtirmiĢtir.

Almisreb ve ark. (2018) AlexNet modelini modifiye ederek kulak görselleriyle kiĢi tanıma çalıĢması yapmıĢlardır. Aktarımlı öğrenmeyle beraber eğitim için 250 kulak görseli, test iĢlemi için 50 adet kulak görseli kullanmıĢlardır. Modeli 10 farklı çıktı alacak Ģekilde konfigüre etmiĢlerdir. Test setiyle yapılan testlerde %100 baĢarı elde etmiĢlerdir.

Wang ve ark. (2019) çalıĢmalarında bir hastanın alkolik bir birey olup olmadığını sınıflandırmıĢlardır. Alkol, vücudun bütün organlarına, özellikle beyne etki eder. Bu çalıĢmada veri seti olarak, alkolik olan ve olmayan bireylere ait 379 beyin MR görseli kullanılmıĢtır. ÇeĢitli veri artırma teknikleri uygulanmıĢ olup AlexNet modelinden faydalanılmıĢtır. %92,42 oranında bir baĢarı elde edilmiĢtir.

Zhou ve ark. (2017) araç sürücülerinin emniyet kemerlerini takıp takmadığını tespit etmek için bir uygulama geliĢtirmiĢlerdir. Bu uygulamada Batch Normalizasyonu ile birlikte AlexNet modelini kullanmıĢlardır. Toplamda 1100 görselden oluĢan bir veri kümesinden faydalanmıĢlardır. %92,51 oranında bir baĢarı elde etmiĢlerdir.

Singla ve ark. (2016) çalıĢmalarında ikili sınıflandırma iĢlemi yapmıĢtır. Bu iĢlemi, yemek / yemek değil ayrımı için kullanmıĢtır. ÇalıĢmada GoogleNet modeli kullanılmıĢtır. Veri setini kendileri oluĢturmuĢtur. %99,2 oranında bir baĢarı elde etmiĢlerdir.

Yeong-gyu ve ark. (2016) yapmıĢ oldukları çalıĢmada Kore alfabesindeki karakterlerin sınıflandırılmasını sağlamıĢlardır. Bu çalıĢma için GoogleNet modelini kullanmıĢlardır. PHD08 adlı Kore alfabesine ait karakterleri içeren veri setini kullanmıĢlardır. GoogleNet modeli %99 test baĢarı oranı vermiĢtir.

Lévy ve ark. (2016) çalıĢmalarında göğüs kanserinde teĢhis için kullanılan göğüs kütlelerini sınıflandırmıĢlardır. Göğüs kütleleri, mamogramdan alınan çıktılarla elde edilmiĢtir. Digital Database for Screening Mammography (DDSM) adlı veri setini kullanmıĢlardır. AlexNet ile %89 ve GoogleNet ile %92,9 baĢarı oranları elde etmiĢlerdir.

RaĢo (2019) makine öğrenmesi metotlarıyla hisse senedi piyasası tahmini üzerine çalıĢmıĢtır. Investing.com’a ait 01.01.2016 – 31.12.2018 tarihleri arasındaki verileri kullanarak çalıĢmasını gerçekleĢtirmiĢtir. BIST30’un (Borsa Ġstanbul) gelecekteki değerlerini tahmin etmek için bir derin öğrenme modeli önermiĢtir. Önerdiği bu model, literatürdeki diğer modellere göre daha iyi sonuç vermiĢtir.

(22)

Rasheed (2019) tez çalıĢmasında farklı köpek cinslerini sınıflandırmak için Faster R-CNN ve R-CNN ağlarını kullanmıĢtır. 20 farklı köpek cinsi üzerinde sınıflandırma iĢlemlerini yapmıĢtır. Ortalam 0,84 mAP değeri elde etmiĢtir.

(23)

3. MATERYAL VE YÖNTEM

Sınıflandırma çalıĢmaları için literatürde çok çeĢitli ve değiĢik yöntemler kullanılmıĢtır. Turizm sektöründe de birbirinden farklı metot ve yöntemler, problemin durumuna ve çözümüne göre kullanılabilir. Bu baĢlık altında, tez çalıĢmasında kullanılan materyal ve yöntemler açıklanmıĢtır.

3.1. Yapay Sinir Ağı (YSA)

Ġnsan beyninde, birbirine bağlantılı milyonlarca sinir hücresi (nöron), gelen sinyali almakta, iĢlemekte ve bir baĢka nörona aktarmaktadır. Yapay sinir ağları, biyolojik sinir sistemleri ve beyninden esinlenilerek geliĢtirilmiĢ bir makine öğrenmesi metodudur. YSA, birbirine bağlı nöronlarla hesaplama iĢlemlerini gerçekleĢtiren matematiksel sistemlerdir. Bir nöron birimi, baĢka bir nörondan gelen sinyali alır, iĢler ve çıktı olarak iletimini yapar (Kılınç, 2018). En basit haliyle bir yapay sinir ağı, üç katmandan oluĢmaktadır. Bunlar; giriĢ katmanı, gizli katman ve çıkıĢ katmanıdır. Modeller problemlere göre farklı Ģekillerde tasarlanabilmektedir (Future of Privacy Forum, 2018). Üç katmandan oluĢan basit bir yapay sinir ağı modeli ġekil 3.1’de verilmiĢtir.

ġekil 3.1. Yapay sinir ağı modeli

YSA modelleri birbirinden farklı öğrenme algoritmaları kullanabilir. Bu algoritmalar, almıĢ olduğu ikili veya sürekli değerlere göre iki farklı ana kategoriye bölünmektedir. Bu kategoriler de kendi içlerinde, denetimli, denetimsiz ve takviyeli öğrenme olmak üzere çeĢitli alt kategorilere ayrılabilmektedir. Denetimli öğrenmede kullanılan eğitim verisi etiketlenmiĢ bir Ģekilde algoritmaya verilir, yani kullanılan

(24)

eğitim verisinin sonuçları bellidir. Denetimsiz öğrenmede kullanılan eğitim verisine ait sonuçlar belirsizdir, algoritmaya sadece eğitim verisi verilmektedir (Walczak, 2019). Takviyeli öğrenmede ise bir öğretici kullanılmaktadır. Bu öğretici, geçmiĢ iterasyonlardaki çıktılardan alınan geribildirimlerle yeni taktikler geliĢtirerek daha iyi bir çıktı elde etmeyi amaçlamaktadır. Bir çözüm hakkındaki optimal yolun bulunması veya performansının artırılması için kullanılmaktadır (Amiranashvili ve ark., 2019).

YSA’ları bir baĢka Ģekilde incelemekte mümkündür. Ġleri beslemeli, geri beslemeli ve geri beslemeli – geri yayılımlı yapay sinir ağları olarak 3 farklı alt alanda sınıflandırmak mümkündür. Ġleri beslemeli yapay sinir ağlarında, girdiler çıktı katmanlarına doğru tek bir yönde aktarılmaktadır, herhangi bir geri besleme durumu söz konusu değildir. Geri beslemeli yapay sinir ağlarında elde edilen çıktı, ileri yöne aktarılır, ancak bunun yanı sıra çıktının, bir önceki katmana veya aynı katmanda baĢka bir düğüme aktarıldığı durumlarda söz konusudur. Geri beslemeli – geri yayılımlı yapay sinir ağlarında ise bilgi dağıtımı geriye doğru sağlanmaktadır, ağ yapısı geri yayılım yoluyla hatalardan ders çıkararak öğrenme iĢlemini gerçekleĢtirmektedir (Ömrüuzun, 2019).

Günümüzde YSA modelleri, bilimsel, pazarlama, üretim, biyomedikal, finansal ve birçok farklı alanda kullanılmaktadır. Bu durumun sonucu olarak YSA geliĢtirmeye yönelik birçok program, eklenti ve uygulama bulmak mümkündür. YSA dizayn ve tasarımında kullanılacak veri, giriĢ değiĢkenleri, ağ mimarisi, öğrenim algoritması, eğitim ve test süreçleri önemlidir (Walczak, 2019).

3.2. Derin Öğrenme

Derin öğrenme, kompleks iliĢkilere sahip veri üzerinde, farklı seviyelerdeki temsilleri öğrenen ve makine öğrenmesi alt alanında yer alan yöntem ve modellerdir. 2006’dan beri derin yapılı öğrenme veya kısa haliyle derin öğrenme (hiyerarĢik öğrenme) alanında yapılan araĢtırmalar, makine öğrenmesi alanında yeni bir sayfa açmıĢtır. Son yıllardaki araĢtırmalarla geliĢtirilen derin öğrenme yöntemleri, sinyal ve bilgi iĢleme tekniklerine etki etmiĢtir (Deng ve Yu, 2013).

Literatürdeki tanımlar incelendiğinde en genel haliyle derin öğrenme, problemlerin çözümünde kullanılan, analiz, çıkarım, gözlem ve öğrenme gibi eylemleri büyük miktarlardaki verilerden yararlanarak yapan bir makine öğrenmesi tekniğidir. Geleneksel makine öğrenmesi algoritmalarının aksine farklı hiyerarĢik yapılarda

(25)

olabilmektedirler (Kayaalp ve Süzen, 2018). Derin öğrenme, YSA’nın alt alanıdır. Nonlineer dönüĢümlerle, saf veri üzerinden belirli bir çıkıĢ değerinin alınması için çalıĢan YSA türüdür. Doğal dil iĢlemleri, resim tanıma ve sınıflandırma, gerçek zamanlı çeviri gibi birçok uygulamada kullanılmaktadır (Future of Privacy Forum, 2018).

Tarihsel olarak derin öğrenme ele alındığında Frank Rosenblatt tarafından 1958 yılında 2 katmandan oluĢan basit bir yapay sinir ağı önerilmiĢtir. Ġlk denetimli, derin beslemeli ve çok katmanlı öğrenme algoritması Ivakhnenko ve Lapa tarafından 1965 yılında yayınlanmıĢtır. Ivakhnenko ve Lapa tarafından yayınlanan bu algoritma, katmanlar arası veri aktarımında çeĢitli istatistiksel yöntemler kullanmıĢtır. Ivakhnenko ve Lapa’dan sonra Fukushima tarafından 1979 yılında, el yazısı ve desen tanıma sorunlarına çözüm için Neocognitron adlı derin öğrenme mimarisi önerilmiĢtir. Neocognitron adlı bu derin öğrenme mimarisinde denetimsiz öğrenme gerçekleĢtirilmiĢtir (Kayaalp ve Süzen, 2018, ġeker ve ark., 2017).

3.3. Konvolüsyonel Sinir Ağı (CNN)

Konvolüsyonel sinir ağları, çok katmanlı perceptron ağların (Multi Layer Perceptron – MLP) bir türüdür. CNN, görüntü analizi, sınıflandırması, tanınması ve segmentasyonu gibi iĢlemler için kullanılan bir derin öğrenme mimarisidir. Matematiksel konvolüsyon iĢlemiyle çalıĢan bir mimaridir (ġeker ve ark., 2017). Hayvanlardaki görsel korteksten esinlenilerek geliĢtirilmiĢtir. GiriĢ katmanından almıĢ olduğu görseli, diğer katmanlarda farklı iĢlemlerden geçirerek bilgi çıkarımı yapmaktadır. Örnek olarak bir aĢamada gerçekleĢtirilen konvolüsyon iĢlemiyle görseldeki kenarların çıkarılması verilebilir. Pooling, dropout, vb. katmanlar kullanılarak farklı farklı iĢlemlerin yapılması mümkündür (RaĢo, 2019). ġekil 3.2’de örnek bir CNN modeli verilmiĢtir.

(26)

CNN’de kullanılan konvolüsyon katmanı, yapının en önemli parçasıdır. Konvolüsyon katmanında, baĢlangıçta rastgele belirlenmiĢ ağırlıklar kullanılarak, matematiksel konvolüsyon iĢlemi yerine getirilir. Geri bildirim mekanizmalarıyla, ağırlıklar güncellenir. Her konvolüsyon katmanında kullanılan filtrenin, kaç adım hareket edeceği ya da filtrenin uygulandığı veriye ekleme yapılıp yapılmayacağı gibi parametreler ayarlanabilir (Aghdam, 2018). Örnek bir konvolüsyon iĢlemi ġekil 3.3’de verilmiĢtir.

ġekil 3.3. Konvolüsyon iĢlemi

Kullanılan CNN modeline göre, farklı boyutlardaki veri üzerinde hesaplama iĢlemleri yapılabilmektedir. Derinliğin de hesaplamalara dahil olduğu durumlarda 3 boyutlu konvolüsyon, pooling, vb. iĢlemler uygulanmaktadır. Kısaca 3 boyutlu konvolüsyon matrisi, çok boyutlu veri üzerinde kayarak hesaplama iĢlemlerini yerine getirmektedir (Albawi ve ark., 2017). GerçekleĢtirilen iĢleme ait desen ġekil 3.4’de verilmiĢtir.

(27)

ġekil 3.4. Üç boyutlu konvolüsyon iĢlemi

Aktivasyon fonksiyonları, yapay sinir ağlarındaki öğrenme iĢlemi için önemli bir elemandır. Doğrusal olmayan veri özelliklerinin öğrenilebilmesi için aktivasyon fonksiyonu Ģarttır. Aktivasyon fonksiyonları kullanılmasaydı, yapay sinir ağları lineer fonksiyonlardan oluĢan bir sıralama dizisi halinde görülürdü. Yapay sinir ağlarında, Sigmoid, ReLU, Tanh, vb. birçok farklı aktivasyon fonksiyonu kullanılmaktadır. Hızlı yapısından dolayı ReLU popülerdir (Aghdam, 2018). Aktivasyon fonksiyonları kısaca, gelen veriyi filtreden geçirerek bir çıkıĢ verisi oluĢturur. Genellikte aktivasyon fonksiyonları [0, 1] ya da [-1, 1] aralığında değer üretirler (Uztemur, 2019).

Pooling katmanı, giriĢ olarak aldığı verinin boyutunu küçültmek için kullanılır. Kernel kullanılarak gerçekleĢtirilen bu iĢlemde ortalama pooling ve maksimum pooling teknikleri kullanılabilir. Maksimum poolingde, en büyük değer, ortalama poolingde ise kernel alanının ortalaması alınarak iĢlem yapılır. CNN mimarilerinde pooling, kompleksliği azaltmak ve overfittingden kaçınmak için kullanılan bir yöntemdir. Genellikle 2x2 filtre boyutunda, 2 atlamalı (stride) pooling yöntemi tercih edilmektedir (Aghdam, 2018). ġekil 3.5’te pooling iĢlemi gösterilmiĢtir.

(28)

Normalizasyon katmanında, verimliliği ve performansı artırmak için veriler üzerinde normalizasyon iĢlemleri yapılabilir. Yığın Normalizasyonu (Batch Normalization - BN), Katman Normalizasyonu (Layer Normalization – LN), Nesne Normalizasyonu (Instance Normalization – IN), vb. kullanılabilecek çeĢitli normalizasyon yöntemleri bulunmaktadır (Doukkali, 2017). ġekil 3.6’da verilen bu normalizasyon yöntemleri görselleĢtirilmiĢtir.

ġekil 3.6. Normalizasyon iĢlemi

DüzleĢtirme katmanında, tam bağlantılı katmanlara geçiĢten önce matris olarak temsil edilen veri, tek boyutlu diziye dönüĢtürülür. Konvolüsyon ve pooling katmanlarından sonra tam bağlantılı katmana uygun veriyi hazırlamak için kullanılır (Ergin, 2018). Yapılan iĢlem ġekil 3.7’de verilmiĢtir.

ġekil 3.7. DüzleĢtirme iĢlemi

Tam bağlantılı katmanlarda konvolüsyon katmanlarının aksine bir önceki katmanın nöronlarının, bir sonraki katmanın nöronlarına tam bağlantısı vardır. Klasik yapay sinir ağı yapısına benzer bir Ģekildedirler. Konvolüsyon katmanlarında analiz edilen veriye ait özellik vektörlerini barındırırlar. Yüksek sayıda parametre içerdiği için çok sayıda kompleks hesaplama iĢlemleri bu katmanda yapılmaktadır. Bu nedenle, eğitim aĢamasında çok süre almaktadırlar (Albawi ve ark., 2017).

(29)

Sınıflandırma katmanında ise her iterasyon sonunda modelden alınan çıktının hangi sınıfa ait olduğu ihtimali belirlenmektedir (Aghdam, 2018). Derin öğrenme ağlarında çeĢitli durumlar için farklı tekniklerde kullanılabilir. Örnek olarak gereksiz kompleksliği ve overfitting problemini önlemek için Dropout kullanılabilir. Dropout, modelde yer alan bazı nöronları ve bu nöronların bağlantılarını kaldırarak bu iĢlemi sağlar (Aghdam, 2018). ġekil 3.8’de Dropout iĢlemi paylaĢılmıĢtır.

ġekil 3.8. Dropout iĢlemi 3.4. Donanım

Konvolüsyonel yapay sinir ağları, yapıları itibariyle çok çeĢitli hesaplamalar yapmaktadırlar. Tam bağlantılı ağlarda, pooling iĢleminde veya konvolüsyon iĢleminde farklı hesaplama teknikleri ve parametreler kullanılarak iĢlemler yerine getirilmektedir (Albawi ve ark., 2017).

Günümüzde birbirinden farklı katman kombinasyonlarına veya farklı komplekslik oranlarına sahip derin öğrenme ağları yaygın bir Ģekilde kullanılmaktadır. Derin öğrenme ağının, çalıĢtığı donanımın ve yazılımın, performansa ve verime doğrudan katkısı bulunmaktadır. Yapılan çalıĢmalara göre birden çok çekirdeğe sahip Central Processing Unit (CPU) üzerinde yürütülen derin öğrenme ağları, tek çekirdekli CPU üzerinde yürütülen derin öğrenme ağlarına göre daha performanslıdır. Ancak en verimli ve performanslı yöntem, derin öğrenme ağının Graphical Processing Unit (GPU) üzerinde çalıĢtırılmasıdır. Farklı sayıda ve yüksek seviyede iĢlem gücüne sahip GPU kombinasyonlarıyla daha performanslı ortamların yaratılması mümkündür (Shi ve ark., 2017).

(30)

Bu çalıĢmasında, güncellik ve maliyet açısından uygun bulunan bir derin öğrenme bilgisayarı kullanılmıĢtır. Yapılan çalıĢmalar doğrultusunda, derin öğrenme ağının GPU üzerinde çalıĢtırılmasının daha verimli olacağı düĢünülmüĢtür. Çizelge 3.1’de detayları verilen derin öğrenme bilgisayarı bu tez çalıĢmasında kullanılmıĢtır.

Çizelge 3.1. Tez çalıĢmasında kullanılan derin öğrenme bilgisayarı Özellik Açıklama

GPU Nvidia GTX 2080 Ti

CPU AMD Ryzen ThreadRipper 2950X

RAM 64 GB

ĠĢletim Sistemi Ubuntu Linux

3.5. Yazılım

Derin öğrenme alanında geçmiĢten günümüze yaĢanan geliĢmeler doğrultusunda, farklı araç ve kütüphanelere ulaĢmak mümkündür. En iyi aracı tanımlamak mümkün değildir ancak kiĢiden kiĢiye değiĢen istek ve kullanım biçimleri, probleme olan yaklaĢım, programlama dili, dökümantasyon, geliĢtirme ortamı, yürütme ve eğitim hızı, GPU desteği, hatalardan arındırılmıĢ olup olmaması, model kütüphaneleri ve Git uygulamarında yer alan eriĢilebilirlik ve verilen katkı durumu seçim konusunda büyük bir rol oynamaktadır (Erickson ve ark., 2017).

Günümüzde sıklıkla tercih edilen derin öğrenme araçları incelendiğinde Caffe, Deeplearning4j, Tensorflow, Keras, Theano, Cognitive Network Toolkit (CNTK), MXNet, Lasagne, DIGITS, Torch, Chainer vb. birçok sonuca ulaĢmak mümkündür. Caffe, JSON formatına benzer bir Ģekilde ağ tanımları yapılan, Berkeley Vision and Learning Center tarafından geliĢtirilmiĢ ve çoklu GPU desteği sağlayan bir araçtır. Kendi web sitesi üzerinden farklı modellere ait ağırlıkların indirilmesi mümkündür. Theano, Python ile yazılmıĢ ve sembolik bir mantıkla ağ yapılarının tasarlanmasını mümkün kılan bir araçtır. Lasagne ile Theano bir arada kullanılarak daha kolay ve hızlı bir geliĢtirme ortamı elde edilebilir. CNTK, Microsoft tarafından geliĢtirilmiĢ ve ―Makine Öğrenmesi için Visual Studio‖ yaklaĢımıyla kullanıcılarla buluĢturulmuĢ verimli bir araçtır (Erickson ve ark., 2017).

Tensorflow, farklı platformlar üzerinde, çeĢitli makine öğrenmesi algoritmalarının yürütülebilmesi ve geliĢtirilebilmesi için kullanılan bir makine öğrenmesi sistemidir. Tensorflow, Apache 2.0 lisansı altında Kasım 2015 tarihinde

(31)

paylaĢılmıĢtır. Google Brain ekibi tarafından geliĢtirilmiĢtir. Google’ın 2011 yılından beri kullandığı DistBelief’e göre daha esnek bir yapıdadır. Tensorflow, basit bir Ģekilde dataflow tabanlı bir soyutlama sunmaktadır. Dataflow graph üzerinde bulunan düğümlerle temsil sağlamaktadır. Tensor, Operation gibi çeĢitli graph elementleri mevcuttur (Abadi ve ark., 2016).

Tensorflow, farklı katmanlardan oluĢan bir mimariye sahiptir. Tensorflow kütüphanesinin çekirdeği, performans ve çalıĢma ortamı gibi etkenlerden dolayı C++ programlama diliyle geliĢtirilmiĢtir. Tensorflow farklı CPU mimarileri üzerinde ve GPU donanımlarıyla çalıĢabilmektedir. Python ve C++ programlama dilleri baĢta olmak üzere farklı programlama dilleriyle kullanımı mümkündür (Abadi ve ark., 2016). Tensorflow logosu ġekil 3.9’da verilmiĢtir.

ġekil 3.9. TensorFlow

Keras, yüksek seviyeli bir yapay sinir ağı kütüphanesidir ve TensorFlow, CNTK ve Theano gibi makine öğrenmesi platformları üzerinde çalıĢmaktadır. CPU ve GPU üzerinde çalıĢabilmektedir. Python programlama diline ait 2.7 ve 3.6 versiyonlarıyla kullanılabilmektedir. Hızlı bir Ģekilde sonuç alınmak istenen çalıĢmalarda tercih edilmektedir (Keras, 2019). Modüler ve kolay kullanım yapısına sahip Keras’ın logosu ġekil 3.10’da paylaĢılmıĢtır.

ġekil 3.10. Keras

GerçekleĢtirilen bu çalıĢmada, Keras ve TensorFlow araçları tercih edilmiĢtir. Bahsedilen bu araçlar, derin öğrenme için hazırlanan bilgisayara kurulmuĢ ve çalıĢtırılmıĢtır. ÇalıĢmada kullanılan Keras ve TensorFlow versiyonları Çizelge 3.2’de paylaĢılmıĢtır.

(32)

Çizelge 3.2. Keras ve TensorFlow versiyonları

Araç Versiyon

TensorFlow GPU 1.3.1

Keras 2.0.0

3.6. Derin Öğrenme Modelleri

Son yıllarda yapılan yarıĢmalarla beraber literatürde yer alan baĢarılı derin öğrenme modellerinin sayısı ve bilinirliği artmıĢtır. 2010 yılından beri her sene düzenli olarak yapılan ImageNet Large Scale Visual Recognition Challenge (ILSVRC) yarıĢması büyük seviyeli obje sınıflandırma alanında bir standart benchmark olmuĢtur. ILSVRC’de PASCAL Visual Object Classes (VOC) yarıĢmasının yolundan gitmektedir. ILSVRC iki parçadan oluĢan bir yarıĢmadır. Ġlk parçası herkese açık bir veri seti ve ikinci parçası ise yarıĢma ve buna bağlı olarak gerçekleĢtirilen bir workshoptır. GerçekleĢtirilen bu yarıĢmalarla beraber, her sene literatüre farklı baĢarılara sahip derin öğrenme modelleri eklenmektedir (Russakovsky ve ark., 2015).

Bu tez çalıĢmasında, bu yarıĢmalara katılan derin öğrenme modelleri baĢta olmak üzere çeĢitli derin öğrenme modelleri kullanılmıĢtır. ResNet, DenseNet, VGGNet, Inception v3 ve NASNet derin öğrenme modelleri bu tez çalıĢmasında incelenmiĢtir.

3.6.1. ResNet (Residual Network)

ResNet, 152 katmana kadar çıkabilen çok derin ağ yapısıdır ve farklı katman sayılarında konfigürasyonları bulunmaktadır. ILSVRC 2015 sınıflandırma alanında ve COCO 2015 yarıĢmasında birincilik elde etmiĢtir. Çok derin ağ yapılarının eğitilmesinde çeĢitli zorluklar ve problemler yaĢanmaktadır. ResNet, önermiĢ olduğu kısayol bağlantılarıyla bu soruna bir çözüm sunmuĢtur. Sunulan bu çözümle ağın daha kolay bir Ģekilde optimize edilebildiği, kompleksliğin artmadığı ve elde edilen doğruluk oranının daha iyi olduğu gözlemlenmiĢtir (He ve ark., 2016).

Derin ağ yapılarındaki eğitim ve geriye yayılım süreçlerinde, kaybolma ve patlama durumları söz konusu olabilmektedir. Bu durum overfitting probleminden ziyade çok derin katman yapısından kaynaklanan bir problemdir. Çok küçük birden fazla sayının çarpımı sonucunda elde edilen değer sıfır olabilir, bu durumda kaybolma

(33)

durumu söz konusudur. Çok büyük birden fazla sayının çarpımı sonucunda ise elde edilen değer aĢırı yüksek olabilir, bu durumda da patlama durumu söz konusudur. Beklenti derin ağ yapılarında daha iyi eğitim ve test süreçlerinin elde edilmesidir. Ancak gerçekleĢtirilen örneklerde bu durum farklıdır. ġekil 3.11’de 20 katmanlı ve 50 katmanlı iki farklı ağ yapısının eğitimine ait test hata oranı ve eğitim hata oranı verilmiĢtir. Sonuçlara göre 20 katmanlı ağ yapısından elde edilen hata oranları, 50 katmanlı ağ yapısından elde edilen hata oranlarına göre daha düĢüktür (He ve ark., 2016).

ġekil 3.11. 20 ve 50 katmanlı ağ yapılarından elde edilen test ve eğitim hata oranları

ResNet modelinin önermiĢ olduğu kısayol bağlantıları ile derin ağ yapılarının eğitim problemine bir çözüm sunulmuĢtur. Modeldeki bir noktada elde edilen x değeri, birkaç ağırlık katmanından sonraki çıktı değerine kısayol bağlantıları kullanılarak eklenmiĢtir. Bu Ģekilde, ağırlık katmanları arasında yaĢanabilecek bir kaybolma/patlama sorunundan sonra bile birkaç adım önceki x değeri korunmuĢ olmaktadır. ġekil 3.12’de iĢleme ait görsel paylaĢılmıĢtır (He ve ark., 2016).

ġekil 3.12. ResNet modelinde yer alan kısayol bağlantıları

ResNet modeline ait 18, 34, 50, 101 ve 152 katmanlı farklı versiyonları bulunmaktadır. Kompleksliğin düĢürülmesi için darboğaz (bottleneck) dizaynında 1 x 1 konvolüsyon filtreleri konvolüsyon bloğunun baĢına ve sonuna eklenerek

(34)

kullanılmaktadır. 50, 101 ve 152 katmanlı ResNet modellerinde darboğaz dizaynı mevcuttur. ġekil 3.13’de modellere ait kullanılan konvolüsyon blokları ve filtre boyutları verilmiĢtir (He ve ark., 2016).

ġekil 3.13. ResNet farklı katman modelleri

ResNet modeline ait Batch Normalizasyonu kullanılan ayarlamaları da bulunmaktadır. Çizelge 3.3’de ILSVRC sonuçlarına ait 10-Crop Testing yüzdeleri paylaĢılmıĢtır.

Çizelge 3.3. ResNet ILSVRC 10-Crop Testing karĢılaĢtırması Model Top-1 Hata Oranı Top-5 Hata Oranı

VGG16 28,07 9,33 GoogleNet - 9,15 PReLU-Net 24,27 7,38 ResNet-50 22,85 6,71 ResNet-101 21,75 6,05 ResNet-152 21,43 5,71

Ġlgili bu çalıĢmada ResNet modeline ait 50 katmanlı yapı kullanılmıĢtır. 50 katmanlı ResNet modeline ait yapı ġekil 3.14’de verilmiĢtir.

(35)

3.6.2. DenseNet

Derin yapay sinir ağı yapılarındaki kaybolma/patlama sorunlarına çözüm için farklı teknikler ve modeller geliĢtirilmiĢtir. ResNet ve Highway ağlar 100 katman bariyerini aĢmıĢlardır. Bir katmandan alınan çıktıyı baĢka bir katmanın çıktısına ekleyen yöntemler kullanıldığı gibi daha iyi bir veri akıĢı için rastgele bir Ģekilde çeĢitli katmanların modelden çıkarıldığı çözümler de kullanılmaktadır. Bu tip çözümlerin ortak yönü baĢlangıç katmanlarından ileri seviye katmanlara doğru kısayollu bir bağlantı kullanmalarıdır (Huang ve ark., 2018).

Yapılan çalıĢmalar göstermiĢtir ki konvolüsyonel yapay sinir ağlarındaki giriĢe yakın katmanların, çıkıĢa yakın katmanlara yapmıĢ olduğu doğrudan kısa bağlantılar, daha iyi baĢarı oranı, daha verimli eğitim ve daha derin ağ yapısı sunmaktadır. Bu gözleme dayanarak geliĢtirilen DenseNet, her katmandan elde edilen çıktıyı ileri yönde yer alan diğer katmanlara bağlamaktadır. ġekil 3.15’de DenseNet modelinde yer alan bağlantı yapısı gözlemlenebilmektedir (Huang ve ark., 2018).

ġekil 3.15. DenseNet modeline ait bağlantı yapısı

Klasik ağ yapılarında L adet katmanın L adet bağlantısı bulunmaktadır. Ancak DenseNet ağlarda L adet katmanın L(L+1)/2 adet bağlantısı bulunmaktadır. Birbirine bağlama (Concenation) olarak adlandırılan bu ileri yönlü bağlantılar, diğer katmanlara özellik haritalarının (feature maps) aktarılmasına imkan vermektedir. Bu sayede ilerde yer alan her katman, önceki tüm katmanlardan ortak bir veri almaktadır. Bu durum ağın daha ince ve kompakt bir yapıda olmasını sağlamaktadır. Ayrıca az sayıda kanal sayısı

(36)

kullanılmasına ve hesaplama, bellek tüketimi yönlerinden verimlilik sağlamaktadır. ġekil 3.16’da DenseNet ve ResNet modellerine ait kısayol bağlantılarının kıyaslaması verilmiĢtir (Huang ve ark., 2018).

ġekil 3.16. ResNet (üstte) ve DenseNet (altta) kıyaslaması

DenseNet modelinde DenseBlock ve Aktarım Katmanları (Transition Layers) adı verilen yapılar kullanılmaktadır. Ġlk giriĢ seviyesinde 7 x 7 filtre boyutlarına sahip bir konvolüsyon iĢlemi gerçekleĢtirilmektedir. DenseBlock yapılarında ise farklı boyutlarda konvolüsyon iĢlemleri gerçekleĢtirilmektedir. Ġki DenseBlock arası bağlantılarda kullanılan Aktarım Katmanları’nda ise 1 x 1 konvolüsyon ve Pooling iĢlemleri yapılmaktadır. ġekil 3.17’de DenseNet modeline ait yapı verilmiĢtir (Huang ve ark., 2018).

ġekil 3.17. DenseNet modeline ait DenseBlock ve Transition Layer

DenseBlock yapıları içinde gerçekleĢtirilen konvolüsyonla birlikte Batch Normalizasyonu ve ReLU iĢlemleri de yapılmaktadır. Modelin kompleksliğini ve boyutunu azaltmak için ―BN-ReLU-1x1 Conv‖ ve ―BN-ReLU-3x3 Conv‖ iĢlemleri yapılmaktadır. GerçekleĢtirilen bu iĢlemler ġekil 3.18’de verilmiĢtir (Huang ve ark., 2018).

(37)

ġekil 3.18. DenseBlock içinde gerçekleĢen BN-ReLU-1x1 Conv ve BN-ReLU-3x3 Conv iĢlemleri

DenseNet modeline ait 121, 169, 201 ve 264 katmanlı versiyonları bulunmaktadır. Her modelde yer alan DenseBlock yapılarında kullanılan konvolüsyon iĢlemlerinin boyutları değiĢmektedir. ġekil 3.19’da DenseNet modeline ait farklı versiyonların kıyaslaması paylaĢılmıĢtır (Huang ve ark., 2018).

ġekil 3.19. DenseNet modeline ait farklı katman sayılarına sahip versiyonları

DenseNet modeli üzerinde CIFAR-10/100, Street View House Numbers (SVHN), ILSVRC-2012 sınıflandırma veri seti çalıĢtırılmıĢtır. ILSVRC veri seti üzerinden alınan Top-1 ve Top-5 hata oranlarına ait Single-Crop ve 10-Crop test sonuçları Çizelge 3.4’de paylaĢılmıĢtır (Huang ve ark., 2018).

Çizelge 3.4. DenseNet ILSVRC Single-Crop / 10-Crop Testing karĢılaĢtırması Model Top-1 Hata Oranı Top-5 Hata Oranı

DenseNet-121 25.02 / 23.61 7.71 / 6.66 DenseNet-169 23.80 / 22.08 6.85 / 5.92 DenseNet-201 22.58 / 21.46 6.34 / 5.54 DenseNet-264 22.15 / 20.80 6.12 / 5.29

(38)

GerçekleĢtirilen bu akademik tez çalıĢmasında güncel bir derin öğrenme modeli olmasından dolayı ve literatürde popüler bir konumda bulunmasından dolayı DenseNet modeli bu tez çalıĢmasında tercih edilen bir baĢka model olmuĢtur.

3.6.3. VGGNet

VGGNet, 2014 yılında ILSVRC sınıflandırma görevinde runner-up birinciliğini elde etmiĢ bir modeldir. ÇalıĢmada, küçük boyutlarda konvolüsyon filtresi kullanmanın öneminden ve ağın derinliğinden bahsedilmiĢtir. Bir önceki yıl ILSVRC’de yer alan ZFNet (Zeiler ve Fergus, 2014) modelinin küçük konvolüsyon filtresi kullanmasına vurgu yapmıĢlardır (Simonyan ve Zisserman, 2014).

GeliĢtirilen VGGNet modeline ait mimari, 224 x 224 boyutlarında Red Green Blue (RGB) görselleri giriĢ olarak almaktadır. 3 x 3 konvolüsyon filtresinin kullanıldığı modelde, 1 x 1 konvolüsyon filtresine sahip konfigürasyonlarda bulunmaktadır. Konvolüsyon filtrelerinde 1 adımlık atlama (stride) kullanılmıĢtır. Her konvolüsyon adımından sonra Max-Pooling iĢlemi gerçekleĢtirilmiĢtir. Pooling katmanlarında ise 2 adımlık atlama (stride) kullanılmıĢtır. Modelin son bölümünde ise 3 farklı tam bağlantılı (Fully-Connected) katman kullanılmıĢtır. Ġlk iki tam bağlantılı katman 4096 adet kanala sahiptir. Ancak son katman ILSVRC veri seti için 1000 kanaldan oluĢmuĢtur. Modelin son aĢamasında ise Softmax katmanı bulunmaktadır. Bütün gizli katmanlarda ise ReLU aktivasyon fonksiyonu tercih edilmiĢtir (Simonyan ve Zisserman, 2014).

VGGNet modelinde, ILSVRC 2012 ve 2013 yıllarında baĢarı sağlayan AlexNet ve ZFNet modellerinin aksine 11 x 11 ya da 7 x 7 konvolüsyon filtreleri tercih edilmemiĢtir. Bunun yerine 3 x 3 konvolüsyon filtresi 1 adım atlamayla (stride) kullanılmıĢtır. Çünkü 3 katmandan oluĢan 3 x 3 konvolüsyon filtresi, 7 x 7 boyutlarına sahip bir konvolüsyon filtresiyle aynı alanı kapsayabilmektedir. Bu durumun getirmiĢ olduğu pozitif yararlar bulunmaktadır. Modele ait farklı kongürasyonlarda, sadece C versiyonunda 1 x 1 filtre boyutuna sahip konvolüsyon iĢlemi yapılmıĢtır (Simonyan ve Zisserman, 2014).

VGGNet modeline ait 5 farklı tipte konfigürasyon bulunmaktadır. Bunlar A, B, C, D ve E olarak adlandırılmıĢtır. Sırasıyla bu konfigürasyonlar 133, 134, 138 ve 144 milyon parametreye sahiptir. A versiyonu 11, B versiyonu 13, C ve D versiyonları 16 ve son olarak E versiyonu ise 19 ağırlık katmanına sahiptir. ġekil 3.20’de bu konfigürasyonlar verilmiĢtir (Simonyan ve Zisserman, 2014).

Referanslar

Outline

Benzer Belgeler

 Çoğu makine öğrenmesi algoritması, öğrenme algoritmasının davranışını kontrol etmek için farklı ayarlara/parametrelere sahiptir (öğrenme hızı, derin ağda

 Sinapslar veya sinir uçları, neuronlar arasında etkileşimi sağlayan temel bileşenlerdir..  Plastisite, sinir sisteminin çevresine adapte olarak gelişmesine

 Öğrenme hızı çok yüksek olursa kararsızlık olur, çok düşük olursa öğrenme çok uzun süre

 Pooling katmanı çıkışı 3D alınır ve fully connected ANN ile 1D vektör çıkışı elde

Hatanın geri yayılımı (Gizli katman 1 ve gizli katman 2 arasındaki ağırlıklar için) Yeni ağırlık değerleri.. Yeni

 AE’ların eğitimi sürecinde ağırlıklar gradient descent ile değiştirilir.  AE, eğitim yaparken veriye göre kendi etiketlerini kendisi ürettiği için

 Tekrarlayan sinir ağları (recurrent neural networks) önceki çıkışı veya gizli katmanın önceki durumlarını giriş olarak alır..  Herhangi bir t zamanındaki

 Boltzmann makinesinin giriş düğümleri arasında ve çıkış düğümleri arasında bağlantıya sahip olmayan (kısıtlanmış, restricted) alt türüdür..  Birden çok