5.1 Doğal Dil İşleme (Natural Language Process)
Tweetler, sosyal medya mesajları, blog yazıları, forum yazıları ile metin verisi gittikçe artan miktarda üretilmeye devam etmektedir. Verinin içersinden anlamlı ve istenen bilgilerinin bilgisayarın anlayabileceği anlamların çıkarılması icin Doğal Dil işleme(NLP) tekniği kullanılmaktadır.
NLP; sohbet botları(chatbots), makale veya yazıların özeti, dil çeviri ve veriden görüş tanımlama gibi birçok akıllı uygulamada kritik bir rol oynamaktadır. NLP ön-işleme, varlık(entity) çıkarımı, kelime frekanslarının ölçümleri gibi aşamaları içerir.
Metin ön-işlemede gürültü giderme(noise removel), sözlük normalize edilmesi(lexicon normalization), nesne standart oluşumu(object standarization) teknikleri kullanılır.
Gürültü giderme ile “ve, veya, ama” gibi bağlaçlar üzerinde işlemler yapılır.
Sözlük normalize “yaptım, yapıyorum, yapacağım” gibi aynı kökten gelen kelimelerin normalize oluşumu üzerindeki islemleri içerir.
Nesne standart oluşumu ise “rt → retweet, dm → direct message” gibi kısaltmalar üzerinde yapılabilecek ön işleme teknikleridir.
Ön işlemeden sonra entity extraction(varlık çıkarma) özne yüklem ve nesnelerin belirlenmesi bu aşamada yapılır. Bu aşamada metinden ilgili konunun çıkarılması yapılır. Kullanılan tekniklerden biri Latent Dirichlet Allocation for Topic Modelling (LDA). Bu konu üzerinde bir çalışmayı ilerleyen sayılarda yapalım. NLP üzerindeki genel başlıklardan devam edelim şimdilik…
Konu çıkarımının dışında kelime frekansları, sayısı, yoğunluğu gibi özellikler çıkarılabilir. Kelimelerin text içerisinde kullanım istatistikleri deep neural networks ve recurrent neural network ile hesaplanabilmektedir. (Glove, Word2Vec kullanılan kütüphanelerden bazıları)
NLP kullanım alanları şöyle sıralayabiliriz.
Makine diline ceviri (machine translation) → NLP merkezine yer alan bu kullanım alanı, sözcük ve kelime dizilerinden anlam çıkarmaya çalışma işlemidir.
Spam ile mücadele (fighting spam) → Mail verisinden anlamlar çıkararak filtreleme işlemi yapılması NLP kullanım alanlarından biridir.
Bilginin çıkarılması(Information Extraction) → Finans alanında yapılan algoritmik ticaret sırasında haberlerden, forumlardan, sosyal medyalardan bilgi çıkarılması diğer NLP kullanım alanıdır.
Özetleme(Summarization) → Gittikçe artan veriden özet bilgiler çıkarmaya pazarlama alanında çok rastlanır. Bir markanın müşteri gözünde iyi veya kötü olarak algılanıp algılanmadığı metinlerin yorumlanması ile özetlenebilir.
Soru Cevaplama (Question Answering) → Sorulan sorulardan anlamlar çıkarıp uygun cevaplar verebilmek NLP kullanım alanlarındandır.
NLP’in siber güvenlik alanında kulanım alanları,
- Domain isimlerlerinin kontrol edilmesinde —NLP ile son kullanıcıyı aldatmaya yönelik domain isimlerinin kontrolu yapılabilir.
- Açık kaynak kod güvenlik analizi— Bazı kod desenlerinin yakalanmasını için kullanılır.
- Oltalama (Phishing Identification )— Kullanıcıları yemlemek için kullanılabilecek kelimelerin bulunmasında kullanılır.
Bazı açık kaynak kod NLP kütüphaneleri şunlardır. Genel başlıklarımızın tanıtımı bittikten sonra ilgili kütüphanelerle ayrıntılı çalışmalarımız olacaktır.
Tümdengelim yöntemi ile yazılarımıza devam ederken genel başlıkları hatırlamak adına aşağıdaki linke bakabilirsiniz.