Doğal Dil İşleme (NLP) - Stemmer (Köklendirme)
TurkishStemmer
Yazar:
Enes ASAN
Yayın tarihi :03-Şub-22
Bölüm kodlarını ve/veya veri setlerini indir.
TurkishStemmer, Türkçe kelimelerin köklerini bulmak için kullanılan bir modüldür.
Kullanılabilmesi için "TurkishStemmer" modülünün indirilmesi ve daha sonra da içe aktarılması gerekmektedir.
pip install TurkishStemmer
from TurkishStemmer import TurkishStemmer
Konu detayları için örnek üzerinden ilerleyelim.
Örnek-1:
#İlgili kütüphaner import edilir
from TurkishStemmer import TurkishStemmer
from nltk.tokenize import word_tokenize
#Bir cümleyi text değişkenine atayalım
text="Okuldakilerden öğrencilerden birkaçını müdür bey çağırmıştı."
#Cümlenin tamamını küçük harfe çevirelim.
#**Büyük harf içeren kelimelerde kök ayrımı yapamamaktadır.
text=text.lower()
#Noktalama işaretleri kaldırıldı
import re
text=re.sub("[^\w\s]","",text)
#Tokenize işlemi yapıldı.
text_tokenize=word_tokenize(text)
text_tokenize
Çıktı:
['okuldakilerden', 'öğrencilerden', 'birkaçını', 'müdür', 'bey', 'çağırmıştı']
İlgili cümleye tokenize işlemi yapıldı ve son durumda yukarıdaki gibi cümle parçalarına ayrılmış oldu. Şimdi de parçalara ayrılan kelimelere stemmer işlemi yapalım.
#Stemmer ataması yapıldı
T=TurkishStemmer()
#Cümle içinde bulunan her kelimeye ayrı ayrı stemmer işlemi uygulandı
for i in text_tokenize:
print("Kelime: {}, Kökü:{}".format(i,T.stem(i)))
Çıktı:
Kelime: okuldakilerden, Kökü:okul Kelime: öğrencilerden, Kökü:öğrenci Kelime: birkaçını, Kökü:birkaç Kelime: müdür, Kökü:mü Kelime: bey, Kökü:bey Kelime: çağırmıştı, Kökü:çağırmış
Yukardaki çıktıda görüldüğü gibi Türkçe kelimelerde kök ayırma işlemi "TurkishStemmer" ile yapıldı. Bazı kelimelerde doğru sonuçlar olduğu halde bazılarında da yanlış bir kök bulma işlemi oluşmuştur.