Yapay Zeka

Diyalog Bazlı Yapay Zeka Nedir?

Yapay zeka teknolojileri gün geçtikçe hayatımızda ve kullandığımız bilgi iletişim araçlarında bir hayli önem arz etmeye başlıyor. Nesnelerin internetinin yaygınlaşması ve çiplerin küçülmesi sayesinde neredeyse 2-3 adet bozuk para boyutunda devre kartları kullanılarak yapılan akıllı cihazlar görmeye başladık.

Bu yenilikçi projeler ve cihazlar sayesinde makineler artık insanlarla eskiden hiç olmadığı kadar etkileşime giriyor. Bu da makinelerle insanların anlaşabilmeleri ve komutları başarıyla yerine getirebilmesi için farklı bir yapay zeka türünün gelişmesinin önünü açıyor.

Bu yazımızda yıllardır makine öğrenimi ve yapay zeka alanında çalışmalar yapan GPU üreticisi NVIDIA’nın bu alanda yazmış olduğu makaleden faydalanarak sizleri “Conversational AI” yani “Diyalog Bazlı Yapay Zeka” hakkında bilgilendirmeye çalışacağız.

Tahmin edebileceğiniz gibi insanlar ile makineler arasındaki etkileşimin arttırılması hedefleniyorsa, makineler ve insanlar arasında kaliteli bir diyalog yapısının kurulması oldukça önemlidir. Makine gibi programlanan bir cihaz ile onu kullanan insanlar arasında temiz ve kulağa doğal gelen bir anlaşma yönteminin geliştirilmesi tam olarak da “Conversational AI” dalının ilgilendiği şey.

Bunun için de geliştiriciler yapay zeka teknikleri ile birtakım konuşma zekaları geliştirmeye başladılar. Fakat şu ana kadar geliştirilmiş olan gerçek zamanlı konuşma uygulamalarının arkasında yatan dil işleme amaçlı sinir ağlarını geliştiren kimseler birçok talihsizlikle karşılaştı. Bu talihsizliklerden en büyüğü yanıtı verecek olan yapay zekanın, yanıtı hızlıca karşılamak için mecburen kaliteden ödün vermesiydi. Kaliteli bir yanıt alınmak istendiğinde sonuç tahmin edebileceğiniz gibi oldukça uzun bekleme sürelerinden ibaret oldu.

Aslında bunun en temel nedeni insanların kullandığı dilin bilgisayarlara göre oldukça karmaşık olması. Bizlerin kullandığı en ufak bir sözcük, yaptığımız en ufak bir ima bile birbiriyle bağlantılı şekilde ağzımızdan çıkmakta. Ayrıca insan konuşması çeşitli özneler, nesneler ve bağlamlar içerdiğinden durumu yapay zekalar açısından daha anlaşılmaz hale getirmekte. Atasözlerinden tutun da, şakalar ve kelime oyunlarına kadar insanlar genellikle bir incelik, düzen içerisinde konuşurlar. Verdiğimiz her yanıt genellikle sonucu anında takip edecek şekilde olur. Örneğin arkadaşlarımızla kelime bulmaca oyunu oynarken, kelimeler daha söylenmeden hemen önce karşımızdakinin ne söyleyeceğini tahmin edebiliyoruz.

İşte 2021 yılında halen yapay zekalarla insanlar arasında tam anlamıyla düzgün bir iletişim kuralamamasının ana nedenlerinden biri bu. Konuşurken kullandığımız dil sadece kelimelerin bir araya gelmesinden oluşan cümlelerden ibaret olmak yerine altında gizli imalar da içerebiliyor. Yapay zeka geliştiricileri her geçen gün yeni dil işleme motorları ve sinir ağları geliştirerek bunu aşmaya çalışıyor.

Conversational AI, insanlarla onların anlayabileceği diyaloglar yoluyla iletişim kurabilen ve insanların kullandığı bağlamlarla ifadeleri yakalayarak akıllı yanıtlar verebilmek için geliştirilen yapay zeka robotlarına veya sesli asistanlara deniliyor.

Bu tarz yapay zeka modelleri fazlasıyla karmaşık yapılardır diyebiliriz. En büyük problem şu ki bir yapay zeka modeli ne kadar büyük ve karmaşıksa kullanıcının sorduğu soruya o kadar geç yanıt verecektir. Saniyenin onda üçünden daha yüksek gecikmeler genellikle iletişimi anlamsız kılar, kulağa hoş gelmez.

NVIDIA’nın yapay zeka alanında yaptığı araştırma geliştirme süreçleri sonucunda NVIDIA GPU’lar yardımıyla diyaloğa dayalı AI geliştirirken, CUDA-X AI kitaplıkları ve son teknoloji dil modelleri, ilgili yapay zeka modelinin saniyenin binde biri oranında çıkarım yapması için kullanılabilir. Ayrıca modelinizi optimize etmek için de bu teknolojilerden faydalanabilirsiniz. Bunun yapay zeka modellerinin karmaşık yapıları nedeniyle yaşanan yavaşlık sorununu ortadan kaldırmak için oldukça önemli bir adım olduğu aşikar.

Bu tarz atılımlar sayesinde geliştiriciler artık şu ana kadarki en iyi ve gelişmiş sinir ağlarını oluşturup kullanıma hazır hale getirebilir. Böylece konuşmaya dayalı insan-makine etkileşimi hedefimize insanlık olarak daha fazla yaklaşmaktayız. GPU (Grafik İşlem Birimi -fazlasıyla hızlı ve yüksek paralel işlem yeteneği nedeniyle) için optimize edilen dil algılama modelleri, finansal hizmetler, sağlık hizmetleri, perakende ve daha birçok sektörde kullanılabilecek yapay zeka uygulamalarının geliştirilmesinde kullanılabilir. Böylece akıllı hoparlörler, iletişim hatları ve gelişmiş dijital asistanlar yardımıyla hizmet sektörü bambaşka boyutlara varabilir.

Ayrıca yüksek kalitedeki akıllı diyaloğa sahip yapay zeka araçları sayesinde sektörde yer alan kurum ve kuruluşlar, işletmeler müşterileriyle klasik iletişim yöntemlerinde uygulanması mümkün olmayan kişiselleştirilmiş hizmetler yardımıyla her daim etkin bir şekilde iletişimde kalabilirler.

Genellikle iki insan arasında geçen doğal bir konuşma sürecinde yanıtlar arasında yaklaşık 300 milisaniye vardır. İnsanların yönelttiği soruya mantıklı bir cevap bulabilmesi için yapay zekanın bundan daha kısa bir sürede yanıt vermesi gerekiyor. Karşıdaki yapay zekanın insanlara benzer etkileşim süreçlerini cevaplayabilmesi için çok katmanlı süreçlerin parçası olarak bir düzine veya kat kat fazla sinir ağına ihtiyaç duyması muhtemeldir. Bunların hepsi en geç 300 milisaniye içerisinde gerçekleşmek zorunda.

Bir yapay zekanın soruya cevap vermesi için arka planda genellikle şunlar yaşanır:

  • Kullanıcının konuşması metne dönüştürülür
  • Dönüştürülen metnin/cümlenin anlamı kavranmaya çalışılır
  • Yanıt olarak verilebilecek en iyi cevap verilmeye sağlanılır
  • Ardından yanıt özel bir metinden konuşma aracıyla insanlara ulaştırılır

Bu adımların her biri birbirinden farklı birçok AI modelinin uygun şekilde çalışmasını gerektiriyor. Her bir sinir ağının çalışması için yaklaşık 10 milisaniye veya daha az bir zaman gerekiyor.

Her bir modelin çalışması 10 milisaniyeden daha uzun sürerse tepki çok yavaş olacağından, konuşma süreci doğallıktan uzak ve anlamsız seslerden ibaret bir hal alır. Bu da diyalog tabanlı bir yapay zeka geliştirirken asla istemeyeceğiniz bir şey.

Böylesi sıkı bir gecikme değerine göre çalışmak zorunda olan geliştiriciler, mevcut dil anlama araçlarını daha farklı şekilde kullanmak üzere ayarlamak mecburiyetinde kalabiliyor. Mesela yüksek kaliteli ve karmaşık bir yapay zeka modeli ses arayüzü kullanılmayacaksa gecikme önemsiz olacağından bu model yazılı sohbet robotu olarak rahatlıkla kullanılabilir. Eğer model illa ses tabanlı işlerde kullanılacaksa, geliştiriciler gecikmenin az olduğu fakat nitelikli yanıtlardan yoksun dil işleme modellerini kullanarak uygulamalar geliştirebilirler.

Ama bu bahsettiklerimiz genellikle bir diyalog tabanlı AI projesinde geliştirici olarak tercih etmeniz gereken en kötü seçeneklerdir. Bunun yerine NVIDIA Jarvis gibi özel kütüphaneleri de durumu iyileştirmek adına kullanabilirsiniz.

NVIDIA Jarvis, 300 milisaniye eşiğinin çok çok altında çalışabilen yüksek doğruluklu diyalog tabanlı yapay zekalar geliştiren yapay zeka uzmanlarına yönelik oldukça zengin bir kütüphane. Böylece geliştiriciler NVIDIA DGX sistemlerde 100.000 saatten fazla zamanda eğitilmiş son teknoloji yapay zeka modellerini kullanarak geliştirme sürecini iyileştirebilirler.

Ayrıca geliştiriciler, bu modellerdeki özel verilerde ince ayarlar yapmak için “Transfer Learning Toolkit” ile aktarım öğrenimi yöntemi uygulayabilir. Bu tarz modeller ve ince ayarlar sayesinde hizmet sektörü için tasarlanmış bir yapay zekada şirket jargonunu kullanmak mümkün hale geliyor. Böylece bu botlardan hizmet alan kullanıcı memnuniyeti hayli artıyor.

Modeller NVIDIA tarafından geliştirilen yüksek performanslı tahmin SDK’sı TensorRT ile optimize edilebiliyor ayrıca veri merkezlerinde çalışan ölçekli hizmetler halinde dağıtılabiliyor. Bu yöntemlerin hepsi cihazlarla insan etkileşimini arttırmak amacıyla kullanılan görme veya konuşma tabanlı yapay zeka uygulamaları oluşturmak için kullanılabilir. NVIDIA Jarvis, herhangi bir alanda daha önceleri sadece yapay zeka uzmanlarının deneyimleyebildiği teknolojileri kullanma imkanı sunuyor.

Basit çağrı ağacı algoritmaları gibi ses arayüzlerinin kullanıldığı (örneğin “Yeni bir uçuş rezervasyonu yaptırmak için “rezervasyon” kelimesini “söyleyin” gibisinden) sistemler işlem bazlıdır ve kullanıcıların daha önce programlanmış bir dizi yanıttan birini vermesini gerektirir. Bazen sadece bir insan temsilci, telefon ağacının sonunda incelikli bir soruyu anlayıp arayanın sorununu akıllıca çözebilir.

Fakat günümüzde halihazırda piyasada olan sesli asistanlar bunun çok daha fazlasını yapabiliyor. Ancak milyarlarca parametre kullanmak yerine milyonlarca parametre kullanarak karmaşıklıktan uzak dil modellerinden yararlanıyorlar. Bu yüzden sadece bir işi en sade haliyle söylediğiniz takdirde bunu algılayıp yanıtlayabiliyorlar. Bu tarz yapay zeka uygulamaları sorulan soruyu cevaplamadan önce “bunu sizin için araştırmama izin verin”, “bunu bilmiyorum, katkıda bulunmak ister misiniz”, “geri bildirim yapar mısınız” şeklinde bildirimlerle konuşmayı maalesef bölebilmekte. Veya daha yaygın görülen sesli asistan davranışı ise sorulan bir soruyu doğrudan web üzerinde aratmak. Böylece sorulan soruya uygulama tarafından sesli bir yanıt verilmemiş olunuyor.

Gerçek bir diyalog tabanlı konuşma yapay zekası söz konusuysa bunun çok daha ilerisine gidilmesi mümkün. İdeal bir yapay konuşma zekası, bir kişinin tıbbi rapor sonuçlarını veya banka hesap özetindeki sorgularını doğru bir şekilde anlayıp yerine getirecek kadar karmaşık ve kusursuz, ayrıca anında yanıt verebilecek kadar da hızlı olmalıdır.

NVIDIA’nın başlığımızın konusu hakkında hazırlamış olduğu videoyu aşağıdan izleyebilirsiniz.

Bu tarz gerçek yanıtlar veren yapay zeka uygulamaları oluşturularak çeşitli sektörlerde kullanılmak üzere sesli asistanlar geliştirilebilir. Örneğin bir hastanın doktora gitmek için poliklinikten randevu alması veya şeker hastasıysa şeker ölçüm değerlerini takip etmesini sağlayan yapay zekalar sağlık sektörüne oldukça fayda sağlayabilir. Ayrıca bir paket bekleyen fakat kendisine paketin uluşmadığını anlayıp üzülen birisine sesli yapay zeka tarafından açıklama yapılıp ek hediye çeki verilebilir. Özetle uzmanların hedefi gerçek dünyada bir insan ile nasıl etkileşimdeysek yapay zekayla da aynı şekilde etkileşimde olmak.

Bu tarz yapay konuşma zekalarına olan talepler hayli artıyor. Geçmiş araştırmalara göre aramaların yaklaşık yüzde 50’si 2020 yılına kadar olan süreçte sesli olarak yürütülecek deniliyordu. Ayrıca 2023’e kadar aktif kullanımda yaklaşık 8 milyar sesli asistanın olması geleceğe dair yapılan tahminler arasında.

BERT (Bidirectional Encoder Representations from Transformers) geçen sene piyasaya çıktığında bizlerin konuştuğu doğal dili anlamak için geliştirilen en son teknolojiyi belirleyen büyük, aynı zamanda hesaplama açısından da oldukça yoğun bir yapay zeka modeliydi. Yapılacak ince ayarlar sonrası okuduğunu anlama, duygu analizi, soru-cevap gibi çeşitli amaçlarla BERT etkin şekilde kullanılabilmekte.

3.3 milyar kelimeden oluşan devasa bir İngilizce metin külliyatı kullanılarak eğitilen BERT, dil anlamak ve işlemek için olağanüstü derecede iyi bir model. Hatta bazı durumlarda ortalama bir insandan daha iyi performans gösterebiliyor. Gücü ise etiketlenmemiş veri kümeleri yoluyla eğitilebilme ve minimum değişiklikle uygulama yelpazesinin geneline değişiklikleri uygulayabilme imkanıdır.

Ayrıca BERT, birkaç farklı dili anlamak amacıyla da kullanılabilir. Çeviri, otomatik kelime tamamlama veya arama sonuçlarının sıralaması gibi işlerde ince ayarlar yardımıyla kullanılabilir. Çok yönlülüğü, karmaşık doğal dili anlayan yapay zekalar geliştiren kimseler için onu oldukça popüler bir seçim haline getiriyor.

BERT teknolojisinin temelinde, dikkat tekniğini uygulayan tekrarcı sinir ağlarına alternatif olarak bir dönüştürme katmanı bulunuyor. Bu dönüştürme katmanı ise şu şekilde çalışıyor: Dikkati ondan önce ve sonra gelen en alakalı kelimelere odaklanmasıyla cümleyi çeşitli şekillerde ayrıştırarak. Örneğin “dışarıda, pencerenin dışında vinç var” ifadesi “göl kenarındaki klübeden” veya “benim ofisimin” ile bitmesine bağlı olarak bir kuşu veya inşaat alanını tanımlayabilmekte. Çift yönlü veya yönsüz kodlama diye bilinen yöntemlerden yararlanan BERT gibi yapay dil modelleri duruma bağlı şekilde hangi anlamın o anda geçerli olduğunu anlamak için bağlamlardan yararlanabilir.

Bugün sektör bazlı dil işleme görevlerinde lider olan BioBERT (biyomedikal belgeler için) ve SciBERT (bilimsel yayınlar için) gibi birçok model BERT’e dayanıyor.

NVIDIA GPU’ların üstün paralel işlem yetenekleri ve Tensor Core mimarisi, model geliştiricilere bu tarz karmaşık dil modelleriyle çalışırken yüksek verimlilik ve ölçeklenebilirlik sağlıyor. Ayrıca BERT’in hem eğitimi hem de çıkarımı için kayıt belirleme performansını da uygun şekilde karşılıyor.

NVIDIA DGX SuperPOD sistemi kullanılan 340 milyon parametreye sahip BERT-Large modeli birkaç günlük tipik eğitim süresine kıyasla bir saatte eğitilebiliyor. Ancak gerçek zamanlı yapay zekalarda asıl hızlandırma anlam çıkarımı içindir.

TensorRT yazılımını kullanan NVIDIA geliştiricileri 110 milyon parametreden oluşan BERT-Base modelini çıkarım için optimize etti. NVIDIA T4 grafik işlemcilerinde çalışan modeller “Stanford Question Answering Dataset/Stanford Soru Cevaplama Veri Seti” kullanılarak test edildiğinde yalnızca 2.2 milisaniyede hesaplamayı yapıp cevap vermeyi başardı. SQuAD olarak bilinen bu veri kümesi, genellikle bir yapay zeka modelinin anlama yeteneğini değerlendirmek amacıyla popüler bir kriterdir. Böylece NVIDIA geliştiricilerinin oldukça büyük bir şeyi başardığını söyleyebiliriz.

Birçok eş zamanlı yapay zeka uygulaması için gecikme eşiği genellikle 10 milisaniye kadardır. Fakat aşırı yüksek düzeyde optimize edilen merkezi işlemci kodu (CPU) bile 40 milisaniyeden daha uzun süren bir işlem süresiyle sonuçlanır. Çıkarım süresini sadece birkaç milisaniyeye düşürerek üretim aşamasında BERT’i ilk kez kullanmak bir hayli pratiktir.

Ayrıca bütün NVIDIA dil işleme yardımcıları sadece BERT ile bitmiyor. GPT-2, XLNet ve RoBERTa gibi diğer büyük dönüştürme tabanlı doğal dil işleme modellerini hızlandırmak amacıyla aynı yöntemler kullanılabilir.

Gerçek anlamda yapay konuşma zekaları hedefe ulaşmak için geliştirilmeye devam ediliyor, dil modelleri büyüyor. Gelecekte yapay zeka modelleri bugünkilerle kıyaslandığında kat kat daha büyük olacak. NVIDIA bu nedenle şu ana kadarki en büyük dönüştürme tabanlı yapay zekayı geliştirip açık kaynak dünyasına sundu: BERT-Large’dan 24 kat daha büyük olan 8.2 milyar parametreye sahip dil işleme modeli olan GPT-2 8B. Bu inanılmaz bir şey.

NVIDIA Derin Öğrenme Enstitüsü metin sınıflandırma, belge kategorize etme gibi birtakım görevleri yerine getirmek için dönüştürme tabanlı doğal dil işleme modelleri ve onları oluşturmaya yönelik bazı temel araçlar/teknikler hakkında eğitmen liderliğinde uygulamalı eğitimler sunuyor.

Uzmanlar tarafından hazırlanan 8 saatlik kapsamlı atölye çalışması katılımcılara aşağıdakileri yapabilmede çeşitli talimatlarala yardımcı oluyor:

  • Word2Vec ve yinelenen sinir ağları kullanan yerleştirme tekniklerinden tutun, Transformer tabanlı modellere kadar NLP görevlerinde kelime yerleştirmenin nasıl hızlıca geliştiğini anlamak.
  • Dönüştürücü mimarisine dair birtakım spesifikasyonların, özellikle de kendi kendine dikakt yeteneğinin RNN’ler olmadan dil modelleri oluşturmak amacıyla nasıl kullanıldığını görmek.
  • İyi NLP sonuçları almak için BERT, Megatron ve diğer varyantlardaki dönüştürme modellerini geliştirmek amacıyla self-supervision teknolojilerini kullanmak.
  • Soru yanıtlama ve NER, metin sınıflandırması gibi birçok görevi çözmek amacıyla önceden eğitilen modern NLP modellerinden yararlanmak.
  • Çıkarımsal zorlukları yönetmek ve gerçek uygulamalar için iyileştirilmiş modelleri dağıtmak.

Ayrıca eğitime katılanlara konuyla ilgili yeterliliklerini gösterebilmeleri ve kariyer gelişimlerini hızlandırabilmeleri için bir DLI sertifikası veriliyor.

Eğer diyalog tabanlı yapay zekalar ve yapay zeka alanında NVIDIA tarafından yapılmış diğer çalışmaları merak ediyorsanız NVIDIA Geliştirici Blogu’nu okuyabilirsiniz.

Bir cevap yazın

Başa dön tuşu