4.10.2017

Doğal Dil İşleme (Natural Language Processing) Hakkında Genel Bilgi

Yapay zekanın bir alt konusu olan doğal dil işleme, günümüzde var olan bir dilin otomatik olarak algılanması ve dile tam hakimiyet kurdurarak makinelere dili öğretme işlemidir. Bu öğreti sonrasında makine tarafından beklenen öğrenmiş olduğu dil ile makine üzerinden insanlar ile konuşabilmesi ve karşıdaki insanın onun makine olduğunu anlamaması üzerine amaçlanmıştır.

Bilişim teknolojilerindeki gelişmeler, bilgisayarlı dil bilimi çalışmalarına önemli bir hız katmıştır. Doğal Dil İşleme(DDİ) çok yeni bir teknoloji olmasına rağmen, yapılan araştırmalar ve geliştirmeler ile yeni bir bilim dalı haline gelmiştir. Bilgisayarın belleğinde bulunan veri ve sonuçları, bilgisayarın doğal dilde konuşarak insanlara aktarılması “konuşma”, insanlar tarafından konuşularak bilgisayara yapılan girişlere “konuşmayı anlama” adı verilmiştir.

Yukarıda değinmiş olduğun gibi bir bilgisayarın, insanın konuşmasını anlayabilmesi ve insanın anlayabileceği dilde konuşarak insanlarla etkileşimde bulunabilmesi için dilin tüm özelliklerini bilmesi gerekir. Bu kapsamda bilgisayardan doğru sonuçlar alabilmek için özellikle aşağıdaki konular üzerinde çalıştırılması gerekir.

  • Ses bilimi (Chatbot konusu için bu bilim dalına girmemiz gerekmemektedir.)
  • Biçim bilimi
  • Söz dizimi
  • Anlam bilimi

1.   DDİ İLGİ ALANLARI
Yukarıda değindiğimiz 3 ana başlık üzerinde çalışmalar yapılabilmesi için DDİ konusunun ilgi alanlarının ne olduğunu tam bilmek gerekir. Aksi halde bu yukarıdaki bilimleri makineye yanlış işleme söz konusu olabilir. DDİ’ın ilgi alanlarının tek tek üzerinden geçmeye başlayabiliriz.

1.1.     Yazım Yanlışlarının Düzeltilmesi
İlk olarak şunu kabul etmek gerekir ki; yazılan her yazıda yazım hatası olabilir. İnsanlar yazmış oldukları yazının yazım kurallarına uygun olmasını ister. Eski zamanlarda bu yazım yanlışlarının düzeltilmesi için insanlar çalışmaktaydı. Günümüzde ilerleyen DDİ teknolojisi ile bu hataları bilgisayarlar bulabilmektedir. Bulabilme oranları gelişen DDİ bilim dalı sayesinde gün ve gün yükselmektedir.

Genel anlamda Türkçe konusunu ele alarak gideceğimiz için burada Türkçe dili özelinde konuyu ele alacağım. Türkçe bitişken ve kurallı bir dildir. Türkçe gibi kurallı bir dilde yazılmış bir metin içindeki yazım hatalarını bulmak için; hece yapısı, eklerin uyumu ve ses uyum kuralları özellikleri kullanılmalıdır.

1.2.     Bul ve Değiştir
Bir metin içerisindeki bir sözcüğü bir başka sözcük ile değiştirilmesi sıkça karşılaşılan bir durumdur. Örneğin, metin içerisinde geçen elma kelimesini erik kelimesi ile değiştirmek istersek; bu iki kelime arasındaki ekler arasındaki ayrıma bakmak gerekir. İngilizce ile kıyaslayarak gidersek, elma kelimesinin İngilizce karşılığı “apple” ve çoğul hali de “apples” dır. Metin içerisindeki tüm apple sözcüklerini plum ile apples olan sözcükleri de plums ile değiştirmek mümkündür. Türkçe dili için bu durum kolay olmayacaktır. Elma kelimesinin çoğulu elmalar iken, erik kelimesinin çoğulu eriklerdir. Görüldüğü üzere çoğul için gelen ekler farklıdır. Aynı durum Elmam-Eriğim, Elmanız-Eriğimiz veya Elması-Eriği olarak verebiliriz. Bu ekler bölümünü istediğimiz kadar uzatabiliriz. İki kelime arasında eklerden dolayı bir fark olduğunu rahatlıkla görebiliriz.

Dolayısı ile Türkçe’de metnin içinde kelime değişikliği yapmak istediğimiz zaman ekleri göze almak zorundayız. Bir sözcüğün kök ve eklerini bulmak için biçim bilimi çözümlemesinin yapılması gerekmektedir.

1.3.     Basılı Bir Metni Okuma
Bilgisayar ortamında olmayan basılı bir metni bilgisayar ortamına aktarılması işlemine metni okuma demekteyiz. Metnin okunması ilgili metnin daha önceden belirlenen kurallara göre hazırlanmış olması önemlidir. Yazım hataları bilgisayara öğretme sürecinin ilk kısımlarında dikkat edilmesi gereken bir husustur. İlk aşamada bilgisayar verilen girdiyi doğru anlaması açısından belirli bir düzen ile girişler yapılmalıdır.

İlk girişler sonrasında istemiş olduğunuz terimler ile ilgili doğru bilgileri yazım hatası olmadan yaptıktan sonra bundan sonraki girişlerinizde bilgisayar yazım hatası olsa dahi bunu anlayacaktır. Bu duruma örnek vermek gerekirse, “Turuncu hesap açmak istiyorum” cümlesindeki “turuncu” kelimesinin bir renk dışında bankanın bir ürünü olduğunu “hesap” kelimesini ise bankanın ürünü ile ilgili bir işlem yapılmasını istediğinizi anlayacaktır. Bu anlatımı doğru yaptığınız takdirde “trncu hesap” veya “turncu hesap” gibi yazım hatası yaptığınızda bilgisayar bunun “turuncu hesap” olduğunu anlayacaktır.

1.4.     Metnin İçerdiği Bilgiyi Çıkarma ve Anlamlandırma
Doğal dilde yazılmış metinlerin belli kurallara uygun olarak yazıldığı bir gerçektir. Kurallar dile ilişkin dil bilgisinden kaynaklanmaktadır. Her dilde tümce içerisindeki sözcüklerin sıralanışı belli kurallara uyar. Bu kurallar dilden dile farklılık gösterebilir. Burada anlamı kavramak istiyorsak iki kısma ayrı ayrı bakmak gerekebilir. Birincisi kurulan cümlenin geneline bakarak buradan bir anlam çıkarmak, ikincisi ise; kurulan metin içindeki bir tümce ile de verilmek istenen bilgi anlaşılabilir. Bunu bir bilgisayarın anlaması için doğal dil işleme algoritmalarının buna göre yazılmış olması gerekir, kodlama içerisinde bilgisayara bunun kararını verebilecek esneklik payı verilmelidir. Girdiler sonrasında çıkan çıktılara göre verilen esneklik payı daraltılabilir.

Bir örnek üzerinden bilgisayardan beklenen metin içerisinden bilgiyi çıkarma daha iyi anlaşılabilir.

“1 Haziran 2016 tarihinde almış olduğum krediyi kapatmak istiyorum. Krediyi Beyoğlu şubesinden almıştım, kalan borcum 10000TL’dir. Nasıl kapatabilirim?”
Bu metin üzerinden bilgisayarın çıkarması gereken sonuçlar aşağıdaki gibi sıralanmalıdır?
  • Zaman: 1 Haziran 2016
  • Kredi kullanmış.
  • Kredi kapatmak istiyor. (Çıkarım: Elde parası var. Farklı kampanyalara yönlendirilebilir.)
  • Kalan borç: 10000TL
  • Beyoğlu şubesinden almış. (Bu bilgiyi kullanmam gerekmiyor.)
  • Kredi nasıl kapanır? (Daha önceden verilen girdilerden kredi nasıl kapanır sorusunu bulmam gerekiyor.)
Bir cümle için daha önceden eğitilmiş bilgisayardan beklenen bilgi çıkarımı bu şekilde olmalıdır. Bunun sonucunda ise çıktıyı aşağıdaki şekilde veya ona yakın bir biçimde cevap vermesidir.

“Kredinizi internet sitemizden şu şekilde kapatabilirsiniz. Beyoğlu şubesine gitmenize gerek yoktur. Eğer kabul ederseniz size şöyle bir teklifimiz var; bu kalan paranızı mevduat hesabınıza yatırırsanız size %12 faiz verebiliriz. Kalan taksitlerinizi ödemeye devam edebilirsiniz. Kabul eder misiniz?”

Buna benzer bir sonuç bizim hedefimiz olan çıktı olmaktadır. Bunu sağlayabilmek için metin içerisinden bilgileri doğru şekilde çıkarabilmesi oldukça önemlidir.

1.5.     Soru Yanıtlama
Soru yanıtlama doğal dil işlemede bir diğer alt başlıktır. İncelenmesi iki kısım üzerine yapılmaktadır. Bir tanesi metni anlama ve soruya karşılık verme. Bir diğeri ise, konuşmayı metne çevirme, anlama ve metni seslendirmedir. Biz ilk kısım üzerine konumlandığımız için detaylı olarak metni anlama ve chat üzerinden anlaşılan metni cevaplama üzerine yoğunlaşacağız.

Çağrı merkezlerinde çalışan bir grup internet kanalı ve sosyal medya hesapları üzerinden yazılı olarak işlemlerini halletmek isteyen müşterilere hizmet vermektedir. Bu kanallar üzerinden yazan müşteri sayısı yıllar geçtikçe artmakta ve çalışan istihdamı çok artmaktadır. Doğal dil işleme teknolojisinin bu alanı bu durum için oldukça elverişlidir. Bu çözüm ile çağrı merkezleri üzerinden oluşan yüksek maliyetin önüne geçilmektedir ve aynı zamanda duygusal olarak yazılan hiçbir durum ile karşılaşılmamaktadır. Müşterinin çağrı merkezi şikayeti en aza indirgenmektedir.

Hiç yorum yok:

Yorum Gönder