05. Doğal Dil İşleme

Doğal dil işleme, bilgisayar bilimlerinin en önemli konularından biridir. Arama sonuçlarının iyileştirmesi, soru cevap sistemleri, gelişmiş chatbot’lar, makine çevirisi ve benzeri birçok problemin çözümünde doğal dil işleme çok önem kazanmaktadır. Doktora eğitiminde çalışma alanlarımdan biri olan bu alan için tanıtacağım kütüphanelerin ne yazık ki Türkçe için destekleri minimum seviyededir. Umarım bu tanıttığım kütüphanelerin benzerleri ileri kendi dilimiz TÜRKÇE içinde kavuşuruz.

NLTK

05.01. NLTK

NLTK, doğal dil işleme için birçok farklı konuya çözüm sunan bir kütüphane havuzudur. NLTK sayesinde metni rahat şekilde işleyebilir / analiz edebilir, etiketleme yapabilir, bilgi çıkarımı yapabilir… 50’nin üzerinde derlem ve sözlük kaynağa (örneğin WordNet gibi) sahiptir. Sınıflama, metin içinden cümle veya kelime çıkarma, kelime kökü bulma, ayrıştırma, etiketleme ve anlamsal çıkarım için metin işleme kütüphane seti için kolay kullanımlı bir ara yüz sağlar.

05.02. SpaCy

SpaCy, güzel örnekler, API dokümanları ve örnek uygulamaları içeren bir doğal dil işleme kütüphanesidir. 30’dan fazla dili destekler. Ayrıca, günümüzün popüler konusu Deep Learning’e kolay bir şekilde entegrasyon sağlar. Dokümanı cümleler haline getirmeden tüm dokümanı işlemek için tasarlanmış bir mimariye sahiptir.

05.03. Gensim

Gensim, anlamsal analiz, konu modelleme vektör uzayı modellemesi için geliştirilmiş bir kütüphanedir. Numpy ve Scipy üzerine kuruludur. Word2vec gibi popüler NLP algoritmalarının bir uygulamasını sunar. Kelime gösterimleri (Word representation) için gelişmiş bir kütüphanesi olsa da  kelime gösterimlerinin etkin bir şekilde öğrenilebilmesi için fasttext adında bir kütüphaneye sahiptir. Kelime gösterimi konusunda Türkçe üzerine bir çalışma yapmayı düşünenlerin kullanabileceği bir özelliktir.