LUIS - The Language Understanding Intelligence Service
LUIS - The Language Understanding Intelligence Service
LUIS, Microsoft tarafından geliştirilmiş bir yapay zeka
servisidir. Natural Language Processing (NLP) kullanarak verilen cümleleri
yorumlar, ayrıştırır ve hangi amaca yönelik olduğunu sınıflandırarak döner.
LUIS ile uygulamalar arasındaki veri alış verişi HTTP endpoint aracılığı ile
olmaktadır.
Bir LUIS uygulamasını dizayn ederken temel üç kavramın
bilinmesi önemlidir. Bunlar:
Utterance
İfade. Kullanıcıdan gelen ve yorumlanması
gereken metin girişi. "Ankara'ya bilet alacağım" veya
"Rezervasyon" veya Ankara uçuşu" gibi bir ifade olabilir.
Intent
Amaç. Kullanıcının gerçekleştirmek istediği
işlemleri temsil eder. Kullanıcının cümlesindeki hedeftir; örneğin, bir fatura
ödemesi veya bir haber makalesini bulma gibi.
Entity
Varlık. Kullanıcının amacıyla alakalı bir
sınıfı temsil eder. “Ankara'ya bilet alacağım" sözcüğünde,
"Ankara", konum türü bir varlıktır.
Şimdi
bir LUIS uygulamasının nasıl oluşturulacağını açıklamaya çalışacağım.
LUIS Uygulamasının Oluşturulması
Azure
portal(portal.azure.com) sitesine girip Cognitive Service altındaki Language
Understanding Intelligent Service seçeneğinden bir LUIS uygulaması yaratılır.
Daha
sonra yine aynı microsoft hesabıyla LUIS’in kendi sitesine(luis.ai) girilip sign
in edilir. My Apps kısmından New App ile yeni bir uygulama oluşturulur. Ben bu
yazıyı yazdığım sırada 10 dil desteği vardı ve bunlar arasında Türkçe mevcut
değildi. Bu nedenle denemelerimi İngilizce yaptım.
Uygulamamızı
oluşturduktan sonra dashboard görüntüsü aşağıdaki gibi olacaktır.
Artık
uygulamamıza Intent, Entity, Utterance tanımlamalarımızı yapabiliriz. Öncelikle
intent ekleyerek başlayalım. Intent sayfasında Add Intent ile yeni intent
ekleriz.
Intent
eklemesini yaptıktan sonra Utterances ekranı gelir, bu ekrandan close door intent’inin
hangi cümlelerden yorumlanacağı tanımı yapılır.Yani utterances sayfasına
girdiğim cümleler close door intent’inin kast edildiği cümleler olmalıdır.
Bu cümlede door kelimesi bizim entity değerimiz olacak. Door kelimesi üzerine gelip create entity işlemi ile entity oluşturabiliriz.
Aynı şekilde open door intent’i tanımlayıp utterance kısmına “please open the door” cümlesini tanımlayıp devamında bu cümledeki entity olan door kelimesini entity olarak tanımlarız.
Daha
sonra Train & Test kısmından Train Application yaparak uygulamamızı
eğitiriz. Bu ekranda interactive test kısmından uygulamamızı test edebiliriz.
Test kısmında yazdığımız cümleler yorumlanır ve ilgili intent ile
ilişkilendirilip bir tahmin yüzdesi verilerek ekrana yazar.
Bu
ekrandan kapıyı aç veya kapıyı kapat intent’leriyle ilgili farklı cümleler
kurabilir ve bunların model tarafından hangi oranda doğrulukla anlaşıldığını ve
ilgili intent ile ilişkilendirildiğini görebilirsiniz.
Modelin
testi de tamamlandıktan sonra publish edilme aşamasına geçilir. Publish App
sayfasından geliştirdiğimiz uygulamamız bir web servis olarak publish
edilebilir. Publish işleminde bize bir Endpoint Url verilir. Publish edilen uygulamamıza
bu url ile erişebilir.
Publish edilen serivsimize erişim(consume) için c#, python gibi güncel diller kullanılabilir. Bununla ilgili örnekler azure portalde luis altındaki quick start sayfasında mevcut. Ben bu servise C# Consol Application ile nasıl erişildiğinin örneğini github hesabıma yükledim. Aşağıdaki adresten ulaşabilirsiniz.
https://github.com/enginunal/ConsumeLuisConsoleApp
Bu yazıda LUIS uygulamasının nasıl oluşturulduğunu, içindeki kavramların neler olduğunu ve ne işe yaradığını, üretilen yapay zeka modelinin dış dünyaya nasıl açıldığını ve sonrasında nasıl erişildiğini özetlemeye çalıştım. Umarım yararlı olmuştur.
İyi günler.
Publish edilen serivsimize erişim(consume) için c#, python gibi güncel diller kullanılabilir. Bununla ilgili örnekler azure portalde luis altındaki quick start sayfasında mevcut. Ben bu servise C# Consol Application ile nasıl erişildiğinin örneğini github hesabıma yükledim. Aşağıdaki adresten ulaşabilirsiniz.
https://github.com/enginunal/ConsumeLuisConsoleApp
Bu yazıda LUIS uygulamasının nasıl oluşturulduğunu, içindeki kavramların neler olduğunu ve ne işe yaradığını, üretilen yapay zeka modelinin dış dünyaya nasıl açıldığını ve sonrasında nasıl erişildiğini özetlemeye çalıştım. Umarım yararlı olmuştur.
İyi günler.
Yorumlar