Bu rehberimizde insan beynindekine benzer biçimde tasarlanan yapay sinir ağları (artifical neural networks ya da ANN) nedir, nasıl çalışır, nasıl öğrenir, yapay sinir ağlarının türleri, avantajları ve dezavantajları ve tarihi gibi konulara yer veriyoruz.
Yapay sinir ağları (ANN) nedir?
Bilgi teknolojisinde (BT), yapay sinir ağları (ANN), insan beynindeki nöronların çalışması temele alarak modellenen bir donanım ve / veya yazılım sistemidir. Sinir ağları, aynı zamanda yapay zeka veya AI şemsiyesi altına giren çeşitli derin öğrenme teknolojileridir.
Bu teknolojilerin ticari uygulamaları genellikle karmaşık sinyal işleme veya patern tanıma problemlerini çözmeye odaklanır. 2000’lerin başından bu yana beri yapay sinir ağları kullanan ticari uygulamalara örnek olarak, el yazısı tanıma, konuşmadan metne dönüştürme, petrol arama, veri analizi, hava durumu tahmini ve yüz tanıma gösterilebilir.
Yapay sinir ağları nasıl çalışır?
Yapay sinir ağları, genellikle paralel olarak çalışan ve katmanlar halinde düzenlenmiş çok sayıda işlemciyi içerir. Birinci kademede, insan görsel işlemedeki optik sinirlere benzer şekilde ham girdi bilgileri alınır. Her ardışık katman, ham girdiden ziyade kendisinden önceki katmandan çıktı alır. Bu insan beynindeki sinir ağlarıyla benzerdir, onlarda da uzaktaki nöronlar kendilerine yakın olanlardan sinyal alır. Son kademede ise sistemin çıktısı üretilir.
Her işlem düğümü, gördükleri ve başlangıçta programlandığı veya kendisi için geliştirildiği kurallar dahil olmak üzere kendine ait bir küçük bilgi alanına sahiptir. Katmanlar yüksek oranda birbirine bağlıdır; bu, katman n’deki her düğümün, katman n -1’deki (girişleri) ve bu düğümler için giriş verilerini sağlayan katman n + 1’deki birçok düğüme bağlanacağı anlamına gelir. Çıktı katmanında, üretilen cevabın okunabileceği bir veya daha fazla düğüm olabilir.
Yapay sinir ağları, uyarlanabilir olmalarıyla da dikkat çekmektedir. Bu da ilk aldıkları eğitim üzerine, öğrendikçe kendilerini değiştirdikleri ve sonraki çalışmaların verili ortam hakkında daha fazla bilgi sağladığı anlamına geliyor.
En temel öğrenme modeli, giriş akışlarının önceliklendirilmesine odaklanır. Yani her bir düğüm, önceki düğümden gelen giriş verilerinin önemini nasıl önceliklendirir, bu sistemlerde önemli olan budur. Doğru cevapların alınmasına katkıda bulunan girdiler ise ağır basar.
Artificial Neural Networks nasıl öğrenir?
Tipik olarak, bir yapay sinir ağı, başlangıçta eğitilir veya büyük miktarda veri ile beslenir. Eğitim, girdi sağlamaktan ve ağa, çıktının ne olması gerektiğini söylemekten oluşur. Örneğin, insan yüzlerini tanımlayan bir ağ oluşturmak için, ilk eğitim, kişileri ve diğer canlı ya da objeleri içeren bir dizi görsel olabilir. Her girişe, kişilerin adlarını ya da kişi ya da kişi değil gibi eşleşen kimlik bilgileri eşlik eder. Cevapların sağlanması, modelin işini nasıl daha iyi yapacağını öğrenmek için kendini ayarlaması için gerekir.
Kuralları tanımlarken ve belirlerken, yani, her düğümün önceki katmandan gelen girdilere dayalı olarak bir sonraki katmana ne göndereceğine dair karar vermesi için, sinir ağları birkaç ilkeyi temel alır. Bunlar gradyan tabanlı eğitim, bulanık mantık (fuzzy logic), genetik algoritmalar ve Bayes yöntemlerini içerir. Modellenen uzaydaki nesne ilişkileri hakkında bazı temel kurallar da sisteme verilebilir.
Örneğin, bir yüz tanıma sistemine “Kulaklar yüzün iki yanında yer alır” ya da “Sakal yüzün alt kısmında yer alır” gibi talimatlar verilebilir. Önceden yüklenen kurallar, eğitimi hızlandırabilir ve modeli daha çabuk şekilde daha güçlü hale getirebilir. Fakat aynı zamanda, bazen yanlış ve ters etki yaratabilecek varsayımlar da inşa eder. Dolayısıyla sistem belli ön yargılar yaratabilir. Bu sebeple ilk ve temel girdiler, yönergeler sonucun kalitesi için büyük önem taşır.
Yapay sinir ağları türleri
Yapay sinir ağları bazen, girdi ve çıktı arasında kaç katmana sahip oldukları veya modelin sözde gizli katmanları dahil olmak üzere, derinlikleri açısından tanımlanır. Bu nedenle, yapay sinir ağı terimi neredeyse derin öğrenme ile eşanlamlı olarak kullanılmaktadır. Ayrıca, modelin sahip olduğu gizli düğümlerin sayısı veya her düğümün sahip olduğu kaç giriş ve çıkışlarla da tanımlanabilirler. Klasik sinir ağı tasarımındaki varyasyonlar, katmanlar arasında çeşitli türlerde ileri ve geri bilgi yayılmasına izin verir.
Yapay sinir ağlarının türleri aşağıdaki gibidir:
İleri beslemeli sinir ağları
Yapay sinir ağlarının en basit türlerinden biridir. Bu ağlar, bilgileri çıkış düğümüne ulaşana kadar çeşitli giriş düğümlerinden tek yönde iletir. Ağ, gizli düğüm katmanlarına sahip olabilir veya olmayabilir, bu da onların işleyişini daha yorumlanabilir kılar. Yüz tanıma ve bilgisayarla görme gibi teknolojilerde kullanılır.
Tekrarlayan sinir ağları (RNN)
Bu tür, diğerlerinden daha karmaşıktır. İşleme düğümlerinin çıktısını kaydederler ve sonucu modele geri beslerler. Böylece bu model, bir katmanın sonucunu tahmin etmeyi öğrenebilir. RNN modelindeki her düğüm, işlemlerin hesaplanmasına ve uygulanmasına devam eden bir bellek hücresi görevi görür. Bu sinir ağı, ileri beslemeli bir ağ ile aynı ön yayılımla başlar, ancak daha sonra gelecekte yeniden kullanmak için işlenen tüm bilgileri hatırlamaya devam eder. Ağın tahmini yanlışsa, sistem kendi kendine öğrenir ve geri yayılım sırasında doğru tahmin için çalışmaya devam eder. Bu tür yapay sinir ağları, genellikle metinleri konuşmaya dönüştürmede (text-to-speech) kullanılır .
Evrişimsel sinir ağları (CNN)
Günümüzde kullanılan en popüler modellerden biridir. Bu sinir ağı hesaplama modeli, çok katmanlı algılayıcıların bir varyasyonunu kullanır ve tamamen bağlantılı veya havuzda toplanabilen bir veya daha fazla evrişimli katman içerir. Bu evrişimli katmanlar, sonuçta dikdörtgenlere bölünen ve doğrusal olmayan işleme için gönderilen bir görüntü bölgesini kaydeden özellik haritaları oluşturur. CNN modeli, özellikle görüntü tanıma alanında popülerdir. Yüz tanıma, metin dijitalleştirme ve doğal dil işleme dahil olmak üzere yapay zekanın en gelişmiş uygulamalarının çoğunda kullanılmıştır . Diğer kullanımlar, açıklama algılama, sinyal işleme ve görüntü sınıflandırmayı içerir.
Evrişimsiz sinir ağları
CNN model sürecinin tersini kullanır. Başlangıçta CNN sisteminin görevi için önemsiz olduğu düşünülen kayıp özellikleri veya sinyalleri bulmayı amaçlarlar. Bu ağ modeli, görüntü sentezi ve analizinde kullanılabilir.
Modüler sinir ağları
Birbirinden ayrı çalışan, birden çok sinir ağı içerir. Ağlar, hesaplama işlemi sırasında iletişim kurmaz veya birbirlerinin faaliyetlerine müdahale etmez. Sonuç olarak, karmaşık veya büyük hesaplama süreçleri daha verimli bir şekilde gerçekleştirilebilir.
Yapay sinir ağlarının avantajları
- Paralel işlem yetenekleri, ağın aynı anda birden fazla işi gerçekleştirebileceği anlamına gelir.
- Bilgi sadece bir veri tabanında değil, tüm ağda saklanır.
- Doğrusal olmayan, karmaşık ilişkileri öğrenme ve modelleme yeteneği, girdi ve çıktı arasındaki gerçek yaşam ilişkilerini modellemeye yardımcı olur.
- Hata toleransı sayesinde, yapay sinir ağlarının bir veya daha fazla hücresinin bozulması çıktı üretimini durdurmaz.
- Kademeli bozulma özelliği sayesinde ağ bir sorunla anında yok edilemez, bunun yerine, zaman içinde yavaş yavaş bozulur.
- Eksik bilginin ne kadar önemli olduğuna bağlı olarak, eksik bilgi ile çıktı üretme yeteneği.
- Giriş değişkenlerine hiçbir kısıtlama getirilmez.
- Makine öğrenimi, ANN’erin olaylardan öğrenebileceği ve gözlemlere dayalı kararlar alabileceği anlamına gelir.
- Verilerdeki gizli ilişkileri, herhangi bir sabit ilişkiye komut vermeden öğrenme yeteneği, bir YSA’nın son derece değişken verileri ve sabit olmayan varyansı daha iyi modelleyebileceği anlamına gelir.
- Görünmeyen veriler üzerinde görünmeyen ilişkileri genelleme ve sonuç çıkarma yeteneği, yapay sinir ağlarının görünmeyen verilerin çıktısını tahmin edebileceği anlamına gelir.
Yapay sinir ağlarının dezavantajları
- Uygun ağ yapısını belirlemek için kuralların olmaması, uygun yapay sinir ağı mimarisinin yalnızca deneme yanılma ve deneyim yoluyla bulunabileceği anlamına gelir.
- Paralel işleme yeteneklerine sahip işlemcilerin gerekliliği, sinir ağlarını donanıma bağımlı hale getirir.
- Ağ sayısal bilgilerle çalışır, bu nedenle tüm problemler ANN’ye sunulmadan önce sayısal değerlere çevrilmelidir.
- Araştırma çözümlerinin arkasındaki açıklama eksikliği ANN’lerin en büyük dezavantajlarından biridir. Çözümün neden veya nasıl olduğunu açıklayamamak, ağda güven eksikliği yaratır.
Yapay sinir ağları uygulamaları
Görüntü tanıma, sinir ağlarının başarıyla uygulandığı ilk alanlardan biriydi, ancak teknoloji kullanımları aşağıdakiler de dahil olmak üzere çok daha fazla alana yayıldı:
- Sohbet robotları
- Doğal dil işleme, çeviri ve dil üretimi
- Borsa tahmini
- Teslimat sürücüsü rota planlama ve optimizasyonu
- İlaç keşfi ve geliştirme
Yapay sinir ağlarının tarihi
Yapay sinir ağlarının geçmişi, bilgi işlemin ilk günlerine kadar uzanmaktadır. 1943’te Warren McCulloch ve Walter Pitts adlı matematikçiler, basit algoritmalar çalıştıran ve insan beyninin işleyişine yaklaşmayı amaçlayan bir devre sistemi inşa ettiler.
1957’de Cornell Üniversitesi araştırmacısı Frank Rosenblatt, gelişmiş patern tanıma gerçekleştirmek için tasarlanmış bir algoritma olan Perceptron adlı cihazı geliştirdi ve nihayetinde makinelerin görüntülerdeki nesneleri tanıma yeteneğini geliştirdi. Ancak Perceptron iddiasını gerçekleştiremedi ve 1960’larda yapay sinir ağı araştırması durduruldu.
1969’da, MIT araştırmacıları Marvin Minsky ve Seymour Papert, sinir ağları ile ilgili birkaç sorunu açıklayan Perceptrons kitabını yayınladılar; buna günün bilgisayarlarının hesaplama güçlerinde sinir ağlarının gerektiği gibi çalışması için gereken verileri işleyemeyecek kadar sınırlı olduğu gerçeğini de not ettiler. Birçoğu bu kitabın, sinir ağlarıyla ilgili araştırmaların durduğu uzun bir “AI kışına” yol açtığını düşünüyor.
Araştırmanın yeniden fonlanabilmesi 2010’u buldu. Şirketlerin büyük miktarda veri biriktirdiği büyük veri trendi ve paralel hesaplama, veri bilimcilerine karmaşık yapay sinir ağlarını çalıştırmak için gereken eğitim verilerini ve bilgi işlem kaynaklarını sağladı. 2012’de bir sinir ağı, ImageNet yarışmasının bir parçası olarak bir görüntü tanıma görevinde insan performansını geçmeyi başardı. O zamandan beri, yapay sinir ağlarına olan ilgi arttı ve teknoloji gelişmeye devam ediyor.