Yapay Zeka, Programcılığı Gereksiz Hale mi Getirecek?

0
Programcılığı genel olarak yaptırmak istediğiniz davranışları bir bilgisayara yaptırma eylemi şeklinde görmek, günün sonunda bu davranışların ne olması gerektiğine karar veren bireylerin yerine bilgisayarı koyamayacağınızı düşündürüyor. Fotoğraf: Depositphotos

Üretken yapay zekanın yardımıyla, yazı yazabilen herkesin program da yazabileceğini düşünmek heyecanlandırıcı bir durum. Fakat iş bu kadar basit değil.

2017 yılında Google’da çalışan araştırmacılar, dil işlemek için “dönüştürücü” adı verilen yeni bir makine öğrenimi programı geliştirmişlerdi. Araştırmacılar büyük oranda makine çevirisini iyileştirmekle ilgilense de (söz konusu isim, bir dili diğerine dönüştürme hedefinden geliyor), yapay zeka camiasının dönüştürücünün muazzam, geniş kapsamlı potansiyel taşıdığını fark etmesi uzun sürmemişti.

Önceki içeriklere göre sırada ne olduğunu tahmin etmesi için devasa belge koleksiyonlarıyla eğitilen program, yazılı kelime ahenginde esrarengiz bir ustalık kazanmıştı. Düşündüğünüz şeyi yazmaya başlıyordunuz ve program, sizi son derece iyi tanıyan bir arkadaşınız gibi cümlelerinizi tamamlayabiliyordu. Yazdığınız kelime dizisi bir soruyla başlıyorsa, dönüştürücü size bir cevap veriyordu. Daha da ilginci, bir programı tarif ederek söze başlarsanız, bıraktığınız yerden alıp o programın çıktısını veriyordu.

Fakat gizem dolu simgelemi ve hatalara karşı affetmez tutumuyla programcılığın zor bir iş olduğu uzun zamandır biliniyor. Programcılığa yeni başlayanların ise sayısal ortalama hesaplamak gibi basit bir işi bile doğru tarif etmekte zorlanabildiği ve çoğu zaman hata yaptığı iyi bilinen bir gerçek. Uzman programcılar bile bir uzay aracının, arabaların ve hatta internetin kaza yapmasıyla sonuçlanan hatalı kodlar yazmıştı.

Dolayısıyla ChatGPT gibi dönüştürücüye dayalı sistemlerin, insanların okuyabileceği gündelik tanımları çalışan kodlara dönüştürebileceği keşfedildiğinde heyecanlanmak için epey sebep vardı. Üretken yapay zekanın yardımıyla, yazı yazabilen herkesin program da yazabileceğini düşünmek insanı heyecanlandırıyor. Bugünkü yapay zeka dalgasının mimarlarından biri olan Andrej Karpathy, “En yeni programlama dilinin İngilizce olduğunu” ilan ediyor. Görünürde her gün duyurulan inanılmaz ilerlemelerle birlikte, programlamayı öğrenme çağının geride kaldığına inanıyor olabilirsiniz. Fakat son gelişmeler amatör ve uzman kullanıcıların programlama şeklini temelden değiştirmiş olabilse de, programcılığın demokratikleşmesi kodlama öğrenmenin önemini hiç olmadığı kadar artırdı çünkü sunduğu yararlardan çok daha geniş miktarda insanın faydalanmasını sağladı. Üretken yapay zeka işleri daha da fazla kolaylaştırıyor fakat programlamayı değil.

Brown Üniversitesinde çalışan bilgisayar bilimleri profesörü Michael L. Littman, kodlama deneyimi olmayan kişilerin kodlama yapmak için bir dönüştürücü kullanabileceği fikrine kuşkuyla yaklaştığını ve bunun üç ana sebebi olduğunu söylüyor. Bunlardan birincisi yanılsama problemi. Dönüştürücüler, kulağa mantıklı gelen saçmalıklar sunmalarıyla tanınıyor; özellikle de sırada neyin geleceğinden pek emin olmadıkları zaman. Sonuçta bilgiye dayalı tahmin yapmak üzere eğitilmişler, hata yaptıkları zaman itiraf etmeye değil. Bunun programcılık bağlamında ne anlama geldiğini düşünün.

Diyelim ki ortalama değerleri tahmin eden bir program üretmek istiyorsunuz. Ne istediğinizi kelimelerle açıklarsınız ve bir dönüştürücü de programı yazar. Olağanüstü! Ancak bu program doğru mu ya da dönüştürücü bir hatada yanılsamaya mı kapıldı? Dönüştürücü size programı gösterebilir fakat nasıl programlama yapacağınızı halihazırda bilmiyorsanız, muhtemelen bunun bir faydası olmayacaktır. Littman bu deneyi kendi kendine yürüttüğünü ve GPT’nin (Google’daki araştırmacıların fikrinden türeyen, OpenAI’ın “önceden eğitilmiş üretken dönüştürücüsü”), ortalama için yanlış formülü kullanmak ya da ortalamasını almadan önce tüm sayıları tam sayılara yuvarlamak gibi bazı şaşırtıcı hatalar ürettiğini gördüğünü söylüyor. Bunlar ufak ve kolayca düzeltilebilen hatalar olsa da, düzeltmek için dönüştürücünün ürettiği programı okuyabilmeniz gerekiyor.

Aslında yapılacak işlerin sözlü tariflerini yazmak, insanların takip etmesi için yapılsa bile zor bir iş.

Bu güçlüğün etrafından dolanmak, kısmen dönüştürücülerin hatalara dönük eğilimini azaltmakla, kısmen de daha fazla test ve geri bildirim yapılmasını sağlayarak mümkün olabilir. Böylelikle bu programların sunduğu çıktıların gerçekte ne yaptıkları netleştirilir. Fakat ortada daha derin ve daha zorlu olan ikinci bir sorun daha var. Aslında yapılacak işlerin sözlü tariflerini yazmak, insanların takip etmesi için yapılsa bile zor bir iş. Bahsettiğimiz şeyi, talimatları izleyerek mobilya monte etmeyi deneyen herkes bilecektir. İnsanlar IKEA’nın verdiği yönergelerle dalga geçiyor ama IKEA sahneye çıkmadan önce gelişim seviyesinin ne durumda olduğunu belki de hatırlamıyorlar. Littman, 70’li yıllarda çocuk iken bir sürü dinozor model kiti aldığını ve herhangi bir Diplodocus modelini başarıyla birleştirmesinin yazı tura atmaya benzediğini söylüyor.

Littman, katkı sunan bazı araştırmacılarla bu soruna eğildiklerini belirtiyor. Yapılan pilot bir çalışmada, internetten çifter çifter insan bulmuşlar ve bunları “göndericiler” ile “alıcılar” olmak üzere iki gruba ayırmışlar. Göndericilere, ortalama alma probleminin farklı bir versiyonunu açıklamışlar. Sonrasında bu denekleri teste tabi tutarak, tarif ettikleri şeyi anladıklarını doğrulamaya çalışmışlar. Deneklerin anladığı görülmüş. Daha sonra bu işi alıcılara kendi kelimeleriyle açıklamalarını söylemişler. Denekler açıklamış. Ardından, anlayıp anlamadıklarını görmek üzere alıcılara test yapmışlar. Bir kez daha, alıcıların istenen şeyi yapıp yapamayacakları hemen hemen yazı tura atmaya benzemiş. İngilizce yeni bir progralama dili olabilir ama hataya karşı neredeyse öncekiler kadar eğilimli.

Son olarak ise programcılığı genel olarak yaptırmak istediğiniz davranışları bir bilgisayara yaptırma eylemi şeklinde görmek, günün sonunda bu davranışların ne olması gerektiğine karar veren bireylerin yerine bilgisayarı koyamayacağınızı düşündürüyor. Yani üretken yapay zeka, istediğiniz davranışları tipik bilgisayarların yürütebileceği bir şekilde daha doğrudan ifade etmenize yardımcı olabilir. Fakat bu hedefi sizin için belirleyemez. Ayrıca hedeflere karar veren insan yelpazesi ne kadar geniş olursa, bilişim de o kadar iyi ve daha temsilci hale gelir.

Üretken yapay zeka çağında herkesin, bilgisayarlara kendi adlarına ne yapmaları gerektiğini söyleyerek programlama benzeri faaliyetlere katılma kabiliyeti var. Fakat ister insanlara olsun, ister geleneksel programlama dillerine ve hatta yepyeni dönüştürücülere; isteklerinizi doğru şekilde iletmek eğitim, çaba ve uygulama gerektiriyor. Üretken yapay zeka, bilgisayarların bizi anlama kabiliyetini büyük ölçüde genişleterek insanların orta yolu bulmasına yardımcı oluyor. Fakat nasıl anlaşılacağımızı öğrenmek yine bize kalıyor.

 

Yazar: Michael L. Littman/Brown Üniversitesi. Çeviren: Ozan Zaloğlu.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz