Sözlük tabanlı yaklaşım ve makine öğrenmesi ile Türkçe doğal dil işleme: Eğitim kurumlarında duygu analizi
Turkish natural language processing using dictionary based approach and machine learning: Sentiment analysis in educational institutions
Yazar: HARUN AKSAYA
Danışman: PROF. DR. SEVİNÇ GÜLSEÇEN
İstanbul Üniversitesi / Fen Bilimleri Enstitüsü / Enformatik Ana Bilim Dalı / Enformatik Bilim Dalı
Derece: Doktora, 2021
Konu: Adli Tıp = Forensic Medicine ; Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control
Dizin: Doğal dil işleme = Natural language processing

Özet:
Bu tez çalışması kapsamında duygu analizi çalışmalarında yeni bir yaklaşım olan hedef tabanlı duygu analizi çalışması yapılmıştır. Çalışma kapsamında sözlük tabanlı yaklaşım ve makine öğrenmesi tekniklerinden olan yapay sinir ağları kullanılmıştır. Veri setinin oluşturulmasında okul.com.tr sitesi üzerinden elde edilen kullanıcı yorumları kullanılmıştır.
İlk olarak okul.com.tr platformu üzerinden kullanıcı yorumları toplanmıştır. Daha sonra yorumlar içerisinde geçen hedefler tespit edilmiştir. Hedeflerin duygu durumları etiketlenmiştir. 
Etiketli veri seti oluşturma süreci tamamlandıktan sonra model oluşturma süreci başlamıştır. Sözlük tabanlı yaklaşım ile oluşturulan model üç farklı sözlük ile test edilmiştir. Bu sözlüklerden ilki Türkçe WordNet tabanlı geliştirilen ve içerisinde 14.795 kelime barındıran SentiTurkNet'dir. İkincisi, İngilizce WordNet tabanlı geliştirilen ve içerisinde 117.659 kelime barındıran SentiWordNet'dir. Üçüncü ise SentiWordNet'in Türkçeye çevrilmesi ile elde edilen ve 73.386 kelime barındıran SentiWordNet-TR'dir. Elde edilen sonuçlar doğrultusunda Türkçe tabanlı geliştirilen SentiTurkNet sözlüğü ile en yüksek doğruluk oranı (%87,7) elde edilmiştir. SentiWordNet sözlüğünün Türkçe'ye çevrilmesi ile elde edilen SentiWordNet-TR ile %84,1'lik doğruluk oranına ulaşılmıştır. Hedefleri niteleyen ilişkili kelimelerin İngilizceye çevrilmesi ve SentiWordNet sözlüğüne gönderilerek puanlanması senaryosunda ise %2'lik bir artış ile %86,12'lik bir doğruluk oranına erişilmiştir. Bu sonuçlardan da görüldüğü üzere kelime sayısı bakımından az olmasına rağmen, Türkçe tabanlı olmasından dolayı en yüksek doğruluk oranı SentiTurkNet sözlüğü ile elde edilmiştir. 
Makine öğrenmesi yaklaşımı kapsamında çok katmanlı yinelenen yapay sinir ağları (Recurrent Neural Network-RNN) kullanılmıştır. Bu doğrultuda 2, 3, 4, 5 katmanlı ve farklı nöron dizilimlerinden oluşan yapılar oluşturulmuştur. Bu yapıların oluşturulmasında Geçitli Tekrarlayan Birim (Gated Recurrent Unit-GRU) kullanılmıştır. Etiketli veri seti %70'e %30 olacak şekilde bölünmüştür. Bölünen etiketli verilerin %70'i modelin eğitimi için, geriye kalan %30'u ise modeli test etmek için kullanılmıştır. En yüksek doğruluk oranı 3 katmanlı 3-6-12 nöron dizilimli yapıda epoch değeri 10 ile elde edilmiştir. Elde edilen en yüksek doğruluk oranı %96,12' dir.  En düşük doğruluk oranı ise 5 katmanlı 96-48-24-12-6 nöron dizilimli yapıda epoch değeri 15 ile elde edilmiştir. Elde edilen en düşük doğruluk oranı ise %92,07 dir. Geliştirilen modelde her bir duygu durumu için f-score değerleri de hesaplamıştır. Pozitif kutup için precision değeri 0,97, recall değeri 0,96 ve bu doğrultuda f-score değeri 0,96 olarak elde edilmiştir.  Negatif kutup için ise precision değeri 0,91, recall değeri 0,93 ve bu doğrultuda f-score değeri 0,92 olarak elde edilmiştir. Bu değerler geliştirilen modelin her bir duygu kutbunu (pozitif-negatif) yüksek oranda doğru sınıflayabildiğini göstermektedir.

Abstract:
Within the scope of this thesis, aspect-based sentiment analysis, which is a new approach in sentiment analysis studies, was conducted. Dictionary-based approach and artificial neural networks were used within the scope of the study. User comments obtained from the okul.com.tr website were used in the creation of the data set.
First of all, user comments were collected on the okul.com.tr platform. Then, the aspects mentioned in the comments were determined. The emotional states of the aspects were labeled.
After the labeled data set creation process was completed, the model creation process started. The model created with the dictionary-based approach has been tested with 3 different dictionaries. The first of these dictionaries is SentiTurkNet, which was developed based on Turkish WordNet and contains 14,795 words. The second is SentiWordNet, which was developed based on English WordNet and contains 117,659 words. The third is SentiWordNet-TR, which was obtained by translating SentiWordNet into Turkish and contains 73,386 words. In line with the results obtained, the highest accuracy rate (87,7%) was obtained with the Turkish-based SentiTurkNet dictionary. With SentiWordNet-TR, which was obtained by translating the SentiWordNet word into Turkish, an accuracy rate of 84,1% was achieved. Finally, an accuracy rate of 86,12% was achieved with an increase of 2% in the scenario translating the related words describing the targets into English and scoring by sending them to the SentiWordNet dictionary. As can be seen from these results, although the number of words is low, the highest accuracy rate was obtained with the SentiTurkNet dictionary, since it is Turkish-based.
Within the scope of machine learning approach, multi-layer recurrent neural networks (Recurrent Neural Network-RNN) are used. In this direction, structures consisting of 2,3,4,5 layers and different neuron arrays were created. The Gated Recurrent Unit (GRU) was used in the creation of these structures. The labeled dataset was split into 70% as training the model and the remaining 30% as testing the model. The highest accuracy rate was obtained with the epoch value of 10 in the 3-layer structure with 3-6-12 neuron arrays. The highest accuracy rate achieved is 96,12%. The lowest accuracy rate was obtained with the epoch value of 15 in the 5-layer 96-48-24-12-6 neuron array structure. The lowest accuracy rate obtained is 92,07%. In the developed model, f-score values were also calculated for each emotion pole. Precision value for positive pole is 0,97, recall value is 0,96 and f-score value is obtained as 0,96. The precision value for the negative pole is 0,91, the recall value is 0,93, and the f-score value is obtained as 0,92. These values show that the developed model can classify each emotion pole (positive-negative) with a high degree of accuracy.