1.5. YAPAY ZEKA YAKLAġIMLARI
1.5.4. Rasyonel Davranma (Zeki Ajan) YaklaĢımı
Zeki ajan, en iyi sonuca ulaĢmak veya belirsizlik olduğunda en iyi beklenen sonucu elde edecek Ģekilde davranan bir aracıdır. Tüm bilgisayar programları bir Ģeyler yapar, ancak zeki ajanların daha fazlasını yapmaları beklenir. Çevreyi algılayabilir, uzun süre devam edebilir, rasyonel davranma değiĢimine uyum sağlayabilir ve hedefler yaratabilir ve takip edebilir (Steels, 1993: 13).
Yapay zeka düĢüncesinin "düĢünce kanunları" yaklaĢımında, vurgu doğru çıkarsamalar üzerine yapıldı. Doğru çıkarımları yapmak rasyonel bir ajan olmanın önemli bir göstergesidir. Rasyonel davranmak mantık çerçevesinde belirli bir eylem yapılırsa bir hedefe ulaĢacağı biliniyorsa bu sonuca varacak Ģekilde davranmaktır. Turing Testi için gerekli tüm beceriler bir ajanın rasyonel olarak hareket etmesine izin verir. Bilgi keĢfi ve akıl yürütme, ajanların iyi kararlara ulaĢmasını sağlar (Russell ve Norvig, 2010:4).
Rasyonel davranıĢ yaklaĢımı, diğer yaklaĢımlara göre iki avantaja sahiptir. Ġlk olarak, "düĢünce yasaları" yaklaĢımına göre rasyonelliği sağlamak için daha genel mekanizmalar sunar. Ġkinci olarak, insan davranıĢına veya insan düĢüncesine dayanan yaklaĢımlardan daha çok bilimsel geliĢime uygundur (Russell ve Norvig, 2010:4).
14 2. MAKĠNE ÖĞRENMESĠ
Ġnsanoğlu çevreye uyum sağlama konusunda yüzyıllardır çalıĢmaktadır. Bu süreçte davranıĢlarda meydana gelen sürekli değiĢimler öğrenme olarak ifade edilmektedir (Kantardzic, 2011: 89). Bilgisayarların öğrenme kabiliyetinin insandan daha düĢük olduğu düĢünülürse, öğrenme mekanizmalarına yönelik araĢtırmalar yapılması ve makine öğrenme algoritmalarının geliĢtirilmesi yapay zekanın en önemli konularını oluĢturmaktadır (Ertel, 2011:161).
Yapay zeka, zeki makineler ile ilgili olduğuna göre “makine nedir?” sorusu gündeme gelmektedir. Birçok insana göre, bir makine oldukça sağlam bir Ģeydir; diĢlileri olan ve çelik kısımlardan oluĢan bir aleti çağrıĢtırır. Ancak günümüzde bilgisayar, bir makinenin ne olabileceği konusundaki düĢünceleri büyük ölçüde yeniden tanımlamıĢtır. Bir bilgisayar sistemi, hem donanım hem de yazılımdan oluĢur ve sıklıkla yazılımın kendisi bir makine olarak düĢünülmektedir. Örneğin, satranç oynayan makinelere veya akıllı ev aletlerine atıf yapıldığında bu iĢleri yapan programları “makine” olarak ifade etmiĢ olunur (Nilsson, 2010: 14). Öğrenen makine kavramındaki makineler; televizyon, cep telefonu veya bir fırın gibi donanımlar olabilir ama makinelerin öğrenmesini sağlayan esas Ģey bu öğrenme iĢlerini gerçekleĢtiren bilgisayar programları ve yazılımlarıdır (Alpaydın, 2014: 2). Öğrenme iĢini insanlar yerine bir makine için düĢündüğümüzde bu durumun bir hayli zor ve sancılı bir süreç olduğu görülmektedir. Yapay zeka ve istatistik bilimlerinin ortak çalıĢması ile makine öğrenmesi alanında çeĢitli yazılımlar ve algoritmalar üretilerek bu problem aĢılmaya çalıĢılmıĢtır (Kantardzic, 2011: 89).
Makine öğrenmesi, bilgisayar programlarının yazılmasının yanı sıra, insan öğrenme davranıĢını taklit edebilen somut algoritmaların tasarımı ve gerçekleĢtirilmesi ile ilgilenmektedir. Bilim insanlarının temel amacı makineleri insan gibi düĢünüp davranabilen sistemler haline getirebilmektir. Makine öğrenmesi örüntü tanıma, veri madenciliği ve sinir ağları gibi birçok ilgili disiplini içerir. Son yıllarda tanık olduğumuz gibi, satranç oynayan bilgisayarlar, hedef izleme füzeleri, görev robotları ve otonom uçabilen uçaklar bu alanlarda yapılmıĢ çalıĢmaların günlük hayatta kullanıma sunulmuĢ bazı ürünleri olarak sıralanabilir.
15
Teknolojinin geliĢmesi ve yaygınlaĢmasıyla dijital cihaz sayısındaki patlama ile bu cihazlardan üretilen veri miktarı geometrik bir artıĢ göstermiĢtir. Büyük miktardaki veri ön-iĢleme yapılarak bilgiye dönüĢtürülür. Bilgi, yeni veriler üretildikçe sürekli olarak güncellenebilir veya düzeltilebilir bir model olarak tanımlanır. Modeller, müĢterilerin çevrimiçi davranıĢlarına ve satın alma geçmiĢlerine, kredi risk değerlendirmesi, yüz tanıma, hizmet kalitesinin en üst düzeye çıkarılması, hastalığın patolojik belirtilerinin sınıflandırılması, bilgisayar ağlarının optimizasyonu ve güvenlik saldırı tespiti gibi alanlara özgüdür (Bugnion, Nicolas ve Kozlov, 2017: 518).
Büyük veri setleri ile çalıĢmak makine öğrenmesinin sağladığı otomatik veri analiz yöntemlerini kullanmayı gerekli kılar. Özellikle, makine öğrenimi veri içindeki kalıpları otomatik olarak algılayabilen ve daha sonra ortaya çıkacak verileri tahmin etmede veya belirsizlik altında diğer karar verme türlerini yerine getirmek için kullanan bir dizi yöntem olarak tanımlanır (Murphy, 2012: 1).
Bir makine öğrenmesinin davranıĢı nasıl değiĢtireceği Ģu Ģekilde ifade edilebilir (Mitchell, 1997: 2):
“Eğer bir bilgisayar programının T görevlerindeki, E deneyimi ile ölçülen P performansı yükseliyorsa, T görevlerinin sınıf doğruluğu ve ölçülen P performansına göre o bilgisayar programı E deneyimini öğrendiği söylenir.”
Bahsedilen durum örnek olay halinde incelenirse:
T görevi, borsa yatırımcılarının hisse senedi seçiminin doğru sınıflandırılması
P performansı, hisse getirisi doğru olarak belirlenmiĢ müĢteri oranı
E deneyimi, portföy yönetim Ģirketinin bugüne kadar yaptığı müĢteri portföylerinin kayıtlarını içeren veri tabanı
Bir müĢteriye hangi hissenin seçilip seçilmemesi iĢlemini yapacak brokerin, deneyimli ve bilgili bir portföy yöneticisi olması beklenir. ĠĢlemi yapacak broker varsayılan niteliklere haiz olsa bile, hangi hissenin seçilip seçilmemesi olayının arkasındaki gerçek faktörleri bir insanın inceleyip karar vermesi kolay bir iĢ değildir. Bir veya iki hisse için analiz yapmak kolay olmasına karĢın pekçok müĢteri için
16
pekçok analiz gerekli olacağından doğru kararı vermek zor, hata olasılığı fazla olacaktır. Hisse seçme iĢlemini yapan bir bilgisayar programı olsaydı önce bilgisayarın hisse analizinin nasıl yapılacağını öğrendiği bir süreç geçirmeliydi. Bu durumda bilgisayar programı borsa yatırım Ģirketine ait veri tabanını öğrenerek birçok hisse analizini ve teknik bilgiyi içeren bu veri tabanında, daha önce hisse seçilen müĢterilerin portföylerine etki eden faktörleri inceleyerek buradan aldığı bilgilerle sonraki müĢterilere daha etkin bir hisse analizi yapar. Bilgisayar programının doğru hisse seçimi yapıp yapmadığı, müĢterilerin portföy baĢarına yani hisse getirisi doğru olarak belirlenmiĢ müĢteri oranına bakılarak bulunabilir.
Bu örnek olaydan hareketle literatürde makine öğrenmesi ile ilgili yapılmıĢ tanımlara bakıldığında; Makine öğrenmesi, veriden ilginç ve faydalı örüntüleri ortaya çıkarmak için algoritma ve programları kullanan, performansını deneyimler ile arttırdığında öğrenmiĢ olduğu kabul edilen bir öğrenen sistemdir (Harrington, 2012: 5, Domingos, 2012: 78, Blum, 2007: 1). Diğer bir ifadeyle makine öğrenmesi, geçmiĢ deneyimleri kullanarak performans optimizasyonu yapabilen bilgisayar programları geliĢtirmektir (Mitchell, 1997: 4, Alpaydın, 2014: 3, Mohri ve diğ., 2012: 1, Hal Daumé III, 2012: 113).
2.1. MAKĠNE ÖĞRENMESĠNĠN AMACI VE ÖNEMĠ
Ġçinde yaĢadığımız dünyada davranıĢlarını gözlemlediğimiz olaylar süre gelmektedir. Makine öğrenmesindeki temel soru, çevremizde geliĢen bu olaylara, davranıĢlara veya düĢüncelere dayalı kalıpları keĢfetmek ve tarif etmek için bilgisayarlar kullanabilir mi? sorusudur. Makine öğrenmesi bu amaçla çeĢitli bilgisayar algoritmaları üreterek davranıĢ ve düĢünceleri öğrenebilen ve çözümler sunan sistemler geliĢtirmektedir (Hamel, 2009: 4). Makine öğrenmesinin amacı doğru sınıflandırılmıĢ verilerden örüntüyü öğrenerek daha sonrasında tahmin kümesindeki veriler için orijinal örüntüye mümkün olduğunca yakın olan bir sınıflandırma iĢlemi için uygun bir model tasarlamaktır (Hamel, 2009: 4-5).
Makine öğrenmesi, birtakım algoritmalara bağlı olarak oluĢturulmuĢ bir model ve bu modelin performansının ölçüldüğü bir veri setinden oluĢan bir sistemdir. Makine öğrenmesinin amacı, kullanılan modelin en iyi performansı sağladığı parametre değerlerinin bulunması, tahmin özelliği güçlü ve karar vermeye yardımcı
17
bir model olup olmadığı ve veriden bilgiye ulaĢmakta kullanılabilmesidir (Alpaydın, 2014: 4).
Makine Öğrenmesi, öğrenmenin temel ilkelerini bir hesaplama süreci olarak anlamayı amaçlar. Bu alan, hassas matematiksel düzeyde, farklı görev türlerini baĢarılı bir Ģekilde öğrenmek için yetenekler ve bilgilerin ne olduğunu ve bilgisayarlardan veri öğrenmeye ve geribildirimle performansı artırmaya yönelik temel algoritmik ilkeleri anlamayı amaçlamaktadır. Makine öğrenmesinin hedefleri hem daha iyi otomatik öğrenme yöntemleri tasarlamaya yardımcı olmak hem de öğrenme sürecindeki temel konuları anlamaktır (Blum, 2007: 1).