İnsanoğlu, mağara duvarlarına hayvan figürleri çizerek başladığı veri işleme sürecine artık insan gözüyle görülemeyecek küçüklükteki chiplerle devam etmektedir. Bu gelişim yaklaşık 4000 yıl gibi uzun bir süreye yayılmasına karşın gerçek gelişim son 50 yıl içinde yaşanmıştır. Günümüzde hayatımızın her alanına girmiş ve hayatımızın bir rutini haline dönüşmüş olan bu teknolojiyi insan oğlunun önceden tahmin etmesi bile olanaksızdı. Örneğin; bilgisayar sektörünün önemli firmalarından IBM'in bir yöneticisi, Bilgisayar ne kadar küçülürse küçülsün bir odadan daha küçük olamaz demiştir. Sektörün önde gelen isimlerinden birinin böyle büyük bir yanılgı içinde olması, bilgisayar teknolojisinin ne kadar hızlı geliştiğini çok güzel açıklamaktadır. Bu gelişim sürecinde artık kendi zekasıyla yetinmeyen insanoğlu makinelere de zeka verme uğraşı içindedir; artık amaç daha zeki, insan davranışlarını örnekleyebilen ve karar verebilen makineler üretmektir. Bu noktada karşımıza Yapay Zeka kavramı çıkmaktadır.
Günümüzde insanlığın en büyük hayallerinden biri haline gelen, üzerine filmler çekilen, kitaplar yazılan yapay zeka konusunu iyi anlayabilmek için felsefeden bilgisayar bilimine, elektrik-elektronikten biyoloji ve psikolojiye kadar çok geniş bir alanda çalışma yapmak gerekir. Turing makineleriyle temeli atılan yapay zeka üzerinde en fazla araştırma yapılan konu yapay sinir ağlarıdır. Yapay sinir ağları, temelde tamamen insan beyni örneklenerek geliştirilmiş bir teknolojidir. Bilindiği gibi; öğrenme, hatırlama, düşünme gibi tüm insan davranışlarının temelinde sinir hücreleri bulunmaktadır. İnsan beyninde tahminen 1011 adet sinir hücresi olduğu düşünülmektedir ve bu sinir hücreleri arasında sonsuz diyebileceğimiz sayıda sinaptik birleşme denilen sinirler arası bağ vardır. Bu sayıdaki bir birleşimi gerçekleştirebilecek bir bilgisayar sisteminin dünya büyüklüğünde olması gerektiği söylenmektedir; ancak 50 yıl sonra bunun büyük bir yanılgı olmayacağını bu günden kimse söyleyemez. İnsan beyninin bu karmaşıklığı göz önüne alındığında, günümüz teknolojisinin 1.5 kg.lık insan beynine oranla henüz çok geride olduğunu söylemek yanlış olmaz.
Yapay sinir ağları temelde aşağıdaki özelliklere sahiptir:
YSA' nın hesaplama ve bilgi işleme gücünü, paralel dağılmış yapısından, öğrenebilme ve genelleme yeteneğinden aldığı söylenebilir. Genelleme, eğitim ya da öğrenme sürecinde karşılaşılmayan girişler için de YSA' nın uygun tepkileri üretmesi olarak tanımlanır. Bu üstün özellikleri, YSA' nın karmaşık problemleri çözebilme yeteneğini gösterir. Günümüzde birçok bilim alanında YSA, aşağıdaki özellikleri nedeniyle etkin olmuş ve uygulama yeri bulmuştur.
Doğrusal Olmama: YSA' nın temel işlem elemanı olan hücre, doğrusal değildir. Dolayısıyla hücrelerin birleşmesinden meydana gelen YSA da doğrusal değildir ve bu özellik bütün ağa yayılmış durumdadır. Bu özelliği ile YSA, doğrusal olmayan karmaşık problemlerin çözümünde en önemli araç olmuştur.
Öğrenme: YSA' nın arzu edilen davranışı gösterebilmesi için amaca uygun olarak ayarlanması gerekir. Bu, hücreler arasında doğru bağlantıların yapılması ve bağlantıların uygun ağırlıklara sahip olması gerektiğini ifade eder. YSA' nın karmaşık yapısı nedeniyle bağlantılar ve ağırlıklar önceden ayarlı olarak verilemez ya da tasarlanamaz. Bu nedenle YSA, istenen davranışı gösterecek şekilde ilgilendiği problemden aldığı eğitim örneklerini kullanarak problemi öğrenmelidir.
Genelleme: YSA, ilgilendiği problemi öğrendikten sonra eğitim sırasında karşılaşmadığı test örnekleri için de arzu edilen tepkiyi üretebilir. Örneğin, karakter tanıma amacıyla eğitilmiş bir YSA, bozuk karakter girişlerinde de doğru karakterleri verebilir ya da bir sistemin eğitilmiş YSA modeli, eğitim sürecinde verilmeyen giriş sinyalleri için de sistemle aynı davranışı gösterebilir.
Uyarlanabilirlik: YSA, ilgilendiği problemdeki değişikliklere göre ağırlıklarını ayarlar. Yani, belirli bir problemi çözmek amacıyla eğitilen YSA, problemdeki değişimlere göre tekrar eğitilebilir ve değişimler devamlı ise gerçek zamanda da eğitime devam edilebilir. Bu özelliği ile YSA, uyarlamalı örnek tanıma, sinyal işleme, sistem tanılama ve denetim gibi alanlarda etkin olarak kullanılır.
Hata Toleransı: YSA, çok sayıda hücrenin çeşitli şekillerde bağlanmasından oluştuğu için paralel dağılmış bir yapıya sahiptir ve ağın sahip olduğu bilgi, ağdaki bütün bağlantılar üzerine dağılmış durumdadır. Bu nedenle, eğitilmiş bir YSA'nın bazı bağlantılarının hatta bazı hücrelerinin etkisiz hale gelmesi, ağın doğru bilgi üretmesini önemli ölçüde etkilemez. Bu nedenle, geleneksel yöntemlere göre hatayı tolere etme yetenekleri son derece yüksektir.
Yapay sinir ağları; ses tanıma, yazılan karakteri tanıma, robot kontrolleri, resim işleme ve yüz tanıma sistemlerinde çok sık olarak kullanılmaktadır. İnsanı (özellikle insan beynini ve algı sistemlerini) modellemenin giderek öne çıktığı son yıllarda, yüz tanıma sistemlerinin önemi de giderek artmaktadır. Gelecekte hem de çok yakın gelecekte yüz tanıma sistemleri havaalanlarında, ATM'lerde, güvenlik kamerası olan yerlerde kullanılmaya başlanacaktır. Şu sıralarda birkaç havaalanında ve şirkette deneme aşamasında olan bu sistemlerin performanslarının gerçek zamanlı çalışmalara uygun hale getirilmesi için çalışmalar yapılmaktadır. Bu sistemlerin en büyük zorluğu, gerçek zamanlı olarak doğru bir şekilde çalışmasının sağlanmasıdır; çünkü gerçekleştirilecek sistemin çok değişik görüntüleme şartlarında çalışması gerekmektedir ve görüntü işleme algoritmalarının uygulanması için çok hızlı ve çok büyük bellekli bilgisayarlara ihtiyaç vardır. Gerçek zamanlı çalışmaya ihtiyaç duymayan uygulamalarda -örneğin polis sabıka kayıtlarında-, çok yüksek doğruluk oranları ve çok hızlı ile çalışan sistemler kullanılmaktadır.
Yüz tanımada kullanılan çok çeşitli teknikler olmasına rağmen, aslında bu tekniklerin büyük çoğunluğu insan algısı modellenmeden geliştirilmiş tekniklerdir. Bu noktada ilk yapılması gereken iş resimleri bilgisayar için anlamlı hale getirmektir. Bilgisayarda resimler, insan için fazla anlamlı olmayan sayı kümeleri halinde tanımlanır ve resimler üzerinde yapılacak her iş, bu sayı kümesi üzerindeki matris operasyonları sayesinde yapılır. Aslında yapılan tüm bu hesaplamaların gerçekte beynimizde elektrik sinyalleriyle yapıldığını, hatta işi biraz daha abartarak tıpa tıp aynı şekilde gerçekleştiğini söylemiş olsak, pek de yanılmayız. Sonuçta, bilgisayarda 1 veya 0 dediğimiz her şey, beynimizde pozitif (+) ve negatif (-) voltaja karşılık gelmektedir. Peki nasıl oluyor da insan gözü, gördüğü bir nesneyi yeniden gördüğünde bunun ilk gördüğü nesne olduğunu anlayabiliyor. En basit anlamda o nesneyi bir şekilde hafızaya kaydediyor, yeni bir görüntü aldığında ise elektrik sinyallerinden oluşan bu görüntüyü bir şekilde hafızasındakilerle karşılaştırıyor. Tabii ki bu karşılaştırma bildiğimiz anlamda olmaktan öte, değişik hesaplamalarla yapılır. İşte bu işlemler, yapay sinirler için de hemen hemen aynıdır. Yalnız burada sinyaller değil, çeşitli matematiksel hesaplamalar söz konusudur.
Yüz tanıma işlemi, insan yüzünün tamamı kullanılarak gerçekleştirildiği gibi, alınan bu yüze çeşitli teknikler uygulayarak da gerçekleştirilebilmektedir. Bu teknikler, temel olarak, yüzün tanımayı kolaylaştıran kritik bölgelerini ortaya çıkararak veya yüzün bütününü yine değişik metotlarla sıkıştırarak öğrenmeyi kapsamaktadır.
Yaptığımız çalışmalarda, insan yüzünün çeşitli bölgelerini çıkararak da testler gerçekleştirdik. Bunlardan biri, yüz resmi üzerinde gözlerin tespitidir. Gözlerin tespit edilmesi, yukarıda da gösterildiği gibi resmin yatay ve düşey izdüşümlerinin bulunması ile gerçekleştirilir. Aslında bu işlem yüzün arka planını çıkarmakta kullanılır; ancak biz çalışmalarımızda, izdüşümler üzerinden göz çukurunun bulunduğu bölgeyi tespit ederek gözleri ortaya çıkardık. Bundan sonra resmin tümünün yerine yalnızca bulunan gözler oluşturduğumuz yapay sinir ağı modeline verilerek tanıma işlemi gerçekleştirilebilmektedir.
Kaynak: Kaynak: Ergezer, H., Dikmen, M. ve Özdemir, E. (2003). Yapay sinir ağları ve tanıma sistemleri. PiVOLKA, 2(6), 14-17.