Sinir Ağlarının Yapı Taşları: Sinir Ağlarının Bileşenlerinin Açıklanması
Yayınlanan: 2020-12-16İçindekiler
Tanıtım
Son yıllarda, derin öğrenme popülerliği, endüstrinin her sektöründe kullanım ve uygulama açısından ani bir eğim aldı. Görüntü tanıma, konuşma oluşturma, çeviri ve benzeri pek çok uygulama olsun, hemen hemen her şirket bu teknolojiyi geliştirdikleri ürünlere veya diğer ürünlere entegre etmek ister. Geleneksel makine öğrenimi algoritmalarına göre bu üstünlüğün nedeni, bu Derin Öğrenme modellerinin sağladığı doğruluk ve verimli performanstır.
Altyapı bu sonuçların sağlanmasında önemli bir rol oynasa da, çekirdek kod, bir Sinir Ağına dahil edilen tüm işlemleri yapar. Bu ağın çeşitli bileşenlerini inceleyelim ve sonra bu bileşenleri kullanan bazı temel birimlere bakacağız.
Okumalısınız: Sinir Ağı Modeline Giriş
Sinir Ağının Çeşitli Bileşenleri
Nöron
Bir sinir ağının temel yapı taşı bir nörondur. Bu kavram, insan beynimizdeki gerçek sinir ağına çok benzer. Bu yapay nöron tüm girdileri alır, toplar ve daha sonra bir fonksiyona dayanarak nöronun çıktısını verir.
Bir sinir ağı, giriş, gizli ve çıkış katmanları olarak bilinen katmanlar biçiminde birbirine bağlanan bu tür birçok nörondan oluşur. Bu ağ, her türlü karmaşık veri modelini matematiksel bir fonksiyonla eşleştirmemizi sağlar ve bu, evrensel yaklaşım teoremi kullanılarak matematiksel olarak doğrulanabilir.
Ağırlıklar
Model, negatif değerler kullanılarak yüksek değerlerin bastırılabilmesi için ağırlıklara sahip olabilir. Bunu bir akıllı telefon satın alma örneğini alarak yorumlayabilirsiniz. Fiyat ne kadar yüksek olursa, o akıllı telefonu satın alma şansı o kadar düşük olacaktır, ancak modelimiz tüm değerleri toplar ve eşikle karşılaştırırsa, yanlış tahmin yapılabilir. Bu etkiyi geçersiz kılmak için negatif ağırlıklar toplamı azaltmalı ve doğru tahmini yapmalıdır.

Aktivasyon Fonksiyonu
Nöron tanımında, bir fonksiyona dayalı olarak, nöronun ya girdinin ya da gizli katmanın bir parçasıysa ya da çıktı katmanında daha ileri işlemler için kullanılıyorsa sonucu bir sonraki katmana çıkaracağından bahsediliyordu.
Bu fonksiyona aktivasyon fonksiyonu denir ve bu, nöronun durumunu tanımlar. Piyasada bu işi yapabilen çok sayıda etkinleştirme işlevi vardır, ancak bunların tümü kullanım durumuna bağlıdır. Örnekler sigmoid işlevi, tanh işlevi, softmax işlevi, Relu (düzeltilmiş doğrusal birim), sızdıran Relu ve çok daha fazlasıdır.
Öğrenme oranı
Ağırlık güncellemesinin hızını kontrol edebilir. Öğrenme oranının önemli bir faktör olarak hareket ettiği iki durumu düşünün. Bir girdi özelliği daha seyrek değerlere sahipse, ağırlıkları daha sık güncellememiz gerekir ve bu nedenle daha büyük bir öğrenme oranı istenir. Benzer şekilde, düşük bir öğrenme oranı yoğun verilerde işe yarayabilir.
Daha büyük sinir ağlarında bu bileşenleri kullanan bazı temel birimlere bakalım.
MP Nöron
Bu, girdi toplamını hesaplayan ve ardından nihai çıktıyı almak için bunu aktivasyon fonksiyonuna ileten en temel Yapay Nöron formudur. İşte bunun bir görseli:
Bunun sınırlayıcı faktörü, girişlerin ikili olması ve hiçbir gerçek sayıya izin verilmemesidir. Bu, farklı değerlere sahip bir veri kümesi kullanmak istiyorsak, bunun modele iletilmesi için ikili olarak ölçeklenmesi gerektiği anlamına gelir.
Bu modelin çıktıları da ikilidir, bu da sonuçların kalitesini yorumlamayı zorlaştırır. Girdilerin herhangi bir ağırlığı yoktur, bu nedenle bir özelliğin sonuca ne kadar katkısı olacağını kontrol edemeyiz.
algılayıcı nöron
MP nöronlarının önemli dezavantajlarından biri, gerçek sayıları girdi olarak kabul edememesi ve bu da istenmeyen sonuçlara yol açabilmesiydi. Bu nörona gerçek sayılarla bir girdi özelliği geçirmek istiyorsak, ölçeğin 1'lere veya 0'lara indirgenmesi gerektiği anlamına gelir. Bu nöron modelinde girdilerde böyle bir sınırlama yoktur, ancak standartlaştırılmış girdileri geçmek, girdilerin toplanması tüm özellik değerleri için adil olacağından daha kısa sürede daha iyi sonuçlar verecektir.
Bu modeli yeni girdilere karşı daha da sağlam hale getiren bir öğrenme algoritması da tanıtıldı. Algoritma, kayıp fonksiyonuna dayalı olarak her girişe uygulanan ağırlıkları günceller. Kayıp fonksiyonu, gerçek değer ile model tarafından tahmin edilen değer arasındaki farkı belirler. Kare hata kaybı, derin öğrenme modellerinde kullanılan popüler işlevlerden biridir.

Algı nöronu da ikili çıktı verdiği için kayıp sıfır veya bir olabilir. Bu, bu türün kayıp fonksiyonunu daha kompakt bir şekilde “Tahmin gerçek değere eşit olmadığında, kayıp birdir ve ağırlıkların güncellenmesi gerekir, aksi takdirde sıfır kayıp ve güncelleme gerekmez” şeklinde tanımlayabileceğimiz anlamına gelir. Ağırlıklardaki güncellemeler şu şekilde yapılır:
w = w + x wx < 0 ise
w = w – x wx >= 0 ise
Okuyun: Yeni Başlayanlar İçin TensorFlow Nesne Algılama Eğitimi
sigmoid nöron
Algılayıcı nöron, MP nörona kıyasla umut verici görünüyor, ancak hala ele alınması gereken bazı sorunlar var. Her ikisinde de büyük bir kusur, yalnızca ikili sınıflandırmayı desteklemeleridir. Diğer bir konu, yalnızca belirli bir durumun mümkün olup olmadığını gösteren katı sınıflandırma sınırlarıdır. İkili çıktılardan daha yorumlanabilir olasılıklar biçimindeki tahminlerde esnekliğe izin vermez.
Tüm bu sorunları çözmek için çoklu sınıflandırma ve regresyon görevleri yapmak için kullanılabilen Sigmoid nöron tanıtıldı. Bu model, sigmoid fonksiyon ailesini veya logaritmik kullanır:
y = 1 / (1 + e^ (-wx + b))
Bu fonksiyonu çizersek, bu eğrinin kesişimi olan farklı 'b' değerleri kullanılarak konumunun ayarlanabileceği 'S' şeklini alacaktır. Bu fonksiyonun çıktısı, kaç giriş iletilirse geçilsin, her zaman 0 ile 1 arasındadır. Bu, katı çıktılardan daha iyi olan sınıfın olasılığını verir. Bu aynı zamanda birden fazla sınıflandırmaya sahip olabileceğimiz veya regresyon yapabileceğimiz anlamına gelir.

Bunun için öğrenme algoritması öncekilerden farklıdır. Burada ağırlıklar ve sapma, kayıp fonksiyonunun türevine göre güncellenir.

Bu algoritma yaygın olarak Gradient Descent kuralı olarak bilinir. Bunun türetilmesi ve ayrıntılı açıklaması oldukça uzun ve matematikseldir, bu nedenle şu anda bu makalenin dışındadır. Basit bir ifadeyle, kayıp fonksiyonunun türevi için en uygun minimumu elde etmek için gradyanın tersi yönde hareket etmemiz gerektiğini belirtir.
Çözüm
Bu, Sinir Ağlarına kısa bir girişti. Mini beyin gibi davranan ve girdileri işleyen nöron, değerleri dengelemeye izin veren ağırlıklar, ağırlıkların hızının nasıl güncellendiğini kontrol etmek için öğrenme hızı ve nöronları ateşlemek için aktivasyon işlevi gibi çeşitli temel bileşenleri gördük.
Ayrıca, temel yapı taşı nöronunun, görevin karmaşıklığını artırma konusunda nasıl farklı biçimler alabileceğini gördük. MP nöronundaki en temel formla başladık, ardından Perceptron nöronundaki bazı sorunları ortadan kaldırdık ve daha sonra sigmoid nöronda regresyon ve çok sınıflı sınıflandırma görevleri için destek ekledik.
Makine öğrenimi hakkında daha fazla bilgi edinmek istiyorsanız, çalışan profesyoneller için tasarlanmış ve 450+ saat zorlu eğitim, 30'dan fazla vaka çalışması ve ödev, IIIT- sunan IIIT-B & upGrad'ın Makine Öğrenimi ve Yapay Zeka PG Diplomasına göz atın. B Mezun statüsü, 5+ pratik uygulamalı bitirme projesi ve en iyi firmalarla iş yardımı.
Yapay zekada sinir ağı nedir?
Bir sinir ağı veya yapay sinir ağı (YSA), biyolojiden ilham alan bir hesaplama ağını, yani insan beyninde bulunan sinir ağlarını ifade eder. İnsan beyni, birbirine bağlı bir ağ oluşturan milyarlarca nörondan oluştuğu gibi, yapay sinir ağı da çeşitli katmanlarda birbirine bağlı nöronlardan oluşur. Bu nöronlar, yapay zeka alanında düğümler olarak da bilinir. Yapay sinir ağları kavramı, bilgisayarlara şeyleri kavramak ve kararlar vermek için insan benzeri yetenekler kazandırmak için geliştirilmiştir; buradaki düğümler veya bilgisayarlar, beynimizin birbirine bağlı hücreleri gibi davranmak üzere programlanmıştır.
Yapay zekada iş bulmak için hangi becerilere ihtiyaç var?
AI, bilgisayar biliminin oldukça uzmanlaşmış bir alanı olduğundan, AI'da kariyer yapmak isteyenler, analitik düşünme, tasarım yetenekleri ve problem çözme yetenekleri gibi beceriler dışında belirli eğitim niteliklerine sahip olmalıdır. Son derece başarılı AI profesyonelleri, modern işletmelere rekabette bir adım önde olmak için gereken uygun maliyetli ve verimli yazılım çözümlerini sağlayan teknolojideki yeniliklerin öngörüsüne de sahiptir. Söylemeye gerek yok, mükemmel sözlü ve yazılı iletişim becerileri bir zorunluluktur. AI projelerinin mantıksal, mühendislik ve teknolojik perspektiflerini takdir etmek için teknik bir eğitim geçmişi gereklidir.
Sinir ağlarını öğrenmek için genel ön koşullar nelerdir?
Herhangi bir büyük ölçekli yapay zeka projesinde çalışmak için sizden yapay sinir ağlarının temellerini net bir şekilde anlamanız beklenir. Temel sinir ağları kavramlarınızı oluşturmak için her şeyden önce bol miktarda kitap, makale ve haber makalesi okumalısınız. Genel olarak konuşursak, sinir ağları kavramlarını incelemenin ön koşulları arasında matematik, özellikle istatistik, lineer cebir, hesap, olasılık gibi şeyler hayati bir rol oynar. Bunun dışında Python, Java, R ve C++ gibi dillerde bilgisayar programlama becerileri de gerekli olacaktır. Orta düzey programlama becerileri de burada çok yardımcı olabilir.
