Nöral Ağlar ve XOR Macerası

Desmin Alpaslan
Hacettepe AI Club
Published in
3 min readFeb 9, 2022

Perceptron her ne kadar Rosenblatt tarafından 1958 yılında bulunmuş olsa da nöral ağların popüleritesinin günümüzdeki şeklini alması 2012’ye kadar sürdü. Nöral ağların ve yapay zekanın popüleritesinin yükselip düşmesinde bir sürü etken olmakla birlikte bu değişimlerin detaylarını merak edenler için AI Winter kavramının araştırılmasının iyi olacağını düşünüyorum. Bu yazıda ise Perceptronların popüleritesinin düşmesinde katkısı olduğu düşünülen, Marvin Minsky and Seymour Papert tarafından yazılmış Perceptrons [1969] kitabında bahsedilen 2 layerlık bir nöral ağın XOR fonksiyonunu öğrenememisini tartışacağız.

İlk olarak XOR fonksiyonunun ne olduğunu anlayarak başlayalım. XOR fonksiyonu bir mantık bağlacıdır ve doğruluk tablosu aşağıdaki gibidir.

XOR Doğruluk Tablosu

Perceptrons kitabında bahsedilen sorun ise 2 layerlık bir nöral ağın XOR fonksiyonunu öğrenememesiydi. Bu sorunun asıl kaynağı ise 2 layerlık bir nöral ağın sadece linear fonksiyonları öğrenebilmesidir. (bu nöral ağlara Feedforward nöral ağ da denmekte). Bahsettiğimiz nöral ağı aşağıda görselleştirdik:

Feedforward Network

XOR fonksiyonunun neden linearly seperable olmadığının ispatına bu yazının kapsamı dışında olduğundan dolayı girmeyeceğiz ama ilgili kişileri araştırmaya davet ediyoruz. İspatın yerine aşağıdaki görselle XOR’un linear bir çizgi kullanılarak ayrılamadığını gösteriyoruz.

Nihayetinde 2 layerlık bir nöral ağ, yukarıda gösterdiğimiz doğruları öğrenebildiği için sadece XOR fonksiyonunu öğrenemeyecek. Zamanında, mantık bağlaçlarını öğrenebilmesi makine öğrenmesi algoritmaları için önemli bir kriter oluşturur. Bu sebeple Perceptrons kitabının, nöral ağlara olan ilgiyi azalttığı düşünülüyor.

Peki nöral ağlar henüz daha XOR’u öğrenemiyorken görsel sınıflandırma, obje algılama, yüz tanıma ve konuşulanları yazıya dökme gibi XOR’dan çok daha kompleks problemleri yapabilir hale nasıl geldi? XOR problemine daha fazla layer eklemek problemi çözerken, farklı türde operasyon layerları, aktivasyon fonksiyonları (linearliği ortadan kaldıran) ve layer sayıları gibi çeşitli fikirler sayesinde daha kompleks problemlerin de çözümlerine yaklaşıldı (hala tüm kompleks problemler çözülmüş değil).

Aklınıza XOR sorununun bu kadar kolay bir çözümü olmasına rağmen nöral ağların popülaritesinde neden böyle bir düşüş olduğu sorusu gelebilir. Fakat zamanın koşullarını da göz önünde bulundurmak lazım. Perceptron algoritması çıktığı zamanlarda, linear bir nöral ağın bütün fonksiyonları öğrenebileceği fikri hakimdi ve bu araştırma sayesinde bunun aslında doğru olmadığı ortaya çıktı. Ayrıca şu an nöral ağların öğrenmek için kullandığı backpropagation algoritması ancak 1988’de, yani Minsky ve Papert’ın kitabından 20 yıl sonra keşfedilebildi. Bu da günümüzde çoğu kompleks problemin çözümünde uygulanan aktivasyon kullanım fonksiyonlarının kullanımının önünü açtı.

Yapay zeka algoritmaların şu ana kadar üstesinden geldiği problemler düşünüldüğünde XOR gibi basit bir mantık fonksiyonu devede kulak kalıyor. Fakat daha basit bir mantık fonksiyonunu öğrenemeyen makine öğrenmesi algoritmasının, zamanında popülaritesinin düşmesi de oldukça normal bana kalırsa. Her ne kadar ihtimali eski zamanlara göre daha düşük olsa da elimizde yeteri kadar ilgi görmemiş nöral ağlar gibi yeni bir çağ açacak makine öğrenmesi algoritmaları var olabilir.

--

--