Merhaba ve bu Python öğreticisine hoş geldiniz.
Şimdi bir sonraki adım, neyi istediğinizi bize vereceği nöronların işlevini yapmaktır.
Kıvrımlar uygulandıktan sonra bu büyük vektörde bu sayıda nöron var.
Şu anda ihtiyacımız olan tek eksik bilgi bu ve fonksiyonla birlikte alacağız.
Bu işlevi saymak için yapacağımız işi yapalım.
Ve bu çekirdek nöronları çok basit.
Ve bu sayım nöronları işlevi argümanlar olarak alacak mı?
alacak çünkü düzleştirici katmandaki bu sayıdaki çıktı nöronları aslında sadece bir şeye bağlı.
Nesneyi kendi kendine alacak ama sonuçta başka bir şey
Sinir ağının başlangıcındaki orijinal girdi imgesinin hakimiyetine
bağlıdır.
Ve şimdi ihtiyacımız olan tek argüman aslında zamanın girdi görüntülerinin zamanlamasından bahsettiği zamandır.
Bu nedenle elmas ve giriş imgesini temsil eden bu argümana bir isim verelim.
Ve bunu resim olarak adlandıracağız.
Tamam.
görüntülerinin gerçek boyutlarının 80 x 80 olarak geçeceğini hemen söyleyebilirim.
Dume'dan gelen girdi
Orijinal görüntülerin boyutunu 80'e 80 azaltacağız ve sinir ağına
giren görüntülerin biçimi olacak.
Öyleyse Görüntü onları aslında 80 80 olacak ve bir siyah ve beyaz resimlerle çalışıyoruz
gerçeğine karşılık gelir.
Bu sadece bir kanalla görüntüye göre, bu kanallar toplam sekiz seksen ve seksenli sekseniyle ilişkilendirilecek.
Tamam.
İhtiyacımız olan tek argüman bu.
Ve şimdi nöronları taralım.
Peki bunu nasıl yapacaksın.
Her şeyden önce aslında şu anda herhangi bir giriş imajımız yok.
İçe aktardığımız herhangi bir doom imajımız yok.
Bunu daha sonra yapacağız.
Yapmamız gereken ilk şey sahte bir görüntü oluşturmaktır, ancak 80'in üzerinde intronlar 80 yapmıştır.
görüntüyü sahte piksellerle yaratacağız ve bu bize sonunda istediğiniz sayıyı
verecektir, çünkü bu sayı sadece görüntülerin içindeki piksellerin değil boyutların boyutlarına bağlı.
Bu sahte
Dolayısıyla bu sadece başlamak için sahte bir görüntü oluşturuyor.
Ve sonra istediğimiz nöron sayısını hesaplayacağız.
Dolayısıyla sahte bir görüntü yaratmanın hilesi de x olarak adlandırılacaktır.
Her şeyden önce Rand fenerini kullanacağız, çünkü rand işlevi olan torche'den
bu rasgele işlevleri kullandığımız bu görüntülere rasgele pikseller koyacağımızı biliyorsun.
Ardından içeride, imajların lanetlerini göreceksin.
80 80'den biri.
Fakat biz bu görüntüyü sinir ağına koyacağız ve sinir ağını hatırladığınız gibi,
yalnızca girdi görüntüleri yığınları olan girdi devlet yığınlarını kabul edebiliyoruz.
Doğrudan bu çalıştırma işlevi yapabildiğimiz sahte elmasları yaratacağız.
Aslında yalnızca partiye karşılık gelecek olanla başlayalım ve sonra
onu giriş imgesinin hakimiyetlerine tekabül eden tüm 188'e yerleştirebiliriz.
Ve anladığınız gibi, bu atıflar bu resimde yer alıyor ve bu tablo bu tabloyu
temsil ediyor. 1 80 80.
Bu yüzden sadece resim eklemeliyiz.
Ancak şu an bildiğiniz için tablonun ögelerini iletmek için Görüntü bunları, bir işlevin
argümanlarının bir listesi olarak bir çift'tir.
Buraya resim yüklemeden önce eklememiz gerekiyor; mağaza sakini Apple'ın mağaza elemanlarını Apple'ın
işine yarayan argümanlar listesi olarak geçirebileceğini belirtti.
Ve gördüğünüz gibi burada tam olarak mağazayla ve elmasla belirtilen şey bu.
Tamam, böylece görüntülerle hiçbir ilgisi olmayan sahte piksel görüntüsü yaratılır.
nihai nöron sayısını elde edebileceğiz ve hatırlamamız gereken
en son şey, bu girdi vektörünü bir meşale değişkenine dönüştürmektir, çünkü bu, sinir ağına gidecektir.
Ancak yine de
Tamam.
Dolayısıyla bu şimdi rastgele piksellerden oluşan, yalnızca uygulanabilir bir hale dönüştürülen ve şimdi sinir ağına giren bir
girdi görüntüsünü temsil ediyor.
Ve daha spesifik olarak, sinir ağının konvolüm katmanları, çünkü konvolüsyonlar
uygulandıktan sonra sadece nöron sayısına ihtiyaç duyduğumuzdan sadece santimetre 3'e geçeceğiz.
Yani hemen üçüncü konvolüsyon katmanına.
Ve burada iki tam bağlantıya geçmeyeceğiz.
Bunun sebebi, istediğimiz nöronların sayısı konvolüsyon 3 ile f arasındadır. c 1.
Pekâlâ, doğru mektupları içeren bir giriş imkimize sahibiz Şimdi sıra düzleştirici katmana
erişmek için bu görüntüyü sinir ağı içine yayma zamanı geldiğinde, düzleştirilmiş katmanda
nöronları alacağız ve biz sadece İstediğimiz bilgi, bu düzleşme tabakasındaki
nöronların sayısıdır.
Dolayısıyla şimdi yapmamız gereken tam bir ileri fonksiyonda yaptığımız şey.
Sinyalleri sinir ağına yaymamız gerekir, ancak sızıntı katına ulaşana kadar
sadece konvolüsyonel katmanlarda.
O halde bunu yapalım.
X değerini güncelleyeceğiz. X, girdi görüntüsü ve ikinci X ile burada X ilk konvolüsyon katmanı
haline gelecektir.
Ve şimdi yapmamız gereken şey, üç adımlı süreç ilk adımı uygulayarak girdi görüntülerine
dekonvolution uygulamaktır.
Sonra ikinci adım, karmaşık görüntülere karışık budama uyguluyoruz ve nöronları bu çekilen kıvrık
görüntülerde aktive ettiğimizi ekliyor ve x, tüm bu havuzlar körüklü Energis'ten oluşan bu
ilk konvolüsyon haline gelecektir.
Bu yüzden ilk adımın ilk konvolüsyon konvolüsyonunu girdi görüntülerine uygulayalım.
Yaptığımız şey, konvolüsyonumuzu kendi kendimize yaparak Lucian'a ait olduğumuzu şimdiye kadar x ile temsil
edilen girdi imgelerimize uyguladığımızı düşünmektir.
Bu yüzden şimdi yapılan ilk şey budur.
İkinci aşamada, konvolüsyonla döndürülen kıvrık görüntülerimize biriktirme işlemi uygulandıracağız. X ve iki doruk
noktası çekildiğinde, fonksiyonel modülden bir işlev alacağız.
Dolayısıyla kısa devreyi biz alıyoruz ve sonra Max havuz fonksiyonunu D'ye kullanacağız.
parantez içine bir X koyduk, çünkü kıvrık görüntülere bir sonraki çekiş oynuyoruz.
Kendiliğinden konvolüsyonu, maksimum çekmenin
Fakat bu sonraki işlevi, öncelikle çekirdek boyutu olan ek argümanları alır.
Bu yine görüntüleriniz arasında kayan pencerenin boyutu ve her slayttaki
maksimum pikseli alacaktır.
Bu özellikler özelliklerini algılayacaktır çünkü özellikler, dizilerdeki pikselin yüksek bir değeri
ile ilişkilendirilmiştir.
Sezgi dersleri gibi.
Dolayısıyla insanın girmesi gereken ilk belgelenmiş bu çekirdek boyutu.
Ve üç alacağız.
Çekirdek boyutu için ortak bir tercih budur.
Ardından, bildiğiniz adımları görüntülerde kaç piksele soktuğunuza göre ayarlamamız gerekir.
Ve biz iki adım önde gidiyoruz.
Yine bu ortak bir seçim.
İşte gidiyoruz.
Şimdi ikinci adım yapılır.
şimdi, bu havuzdaki tüm nöronları ve kıvrık görüntüleri etkinleştirmek için üçüncü adıma geçelim.
Ve
Ve bu ilk konvolüsyon tabakası ve bunu tekrar yapmak için bütün bunlara bir işlev uygulayacağız.
Ve burada ve tekrar alarak, çünkü tahmin ettiğiniz gibi başka bir işlev alacağız, bu
da bir aktivasyon işlevi olacak ama hangisi olacak.
Her zamanki gibi rektifiye aktivasyon fonksiyonu olacak ve belki bunun gerçekten adını
hatırlıyorsunuz.
Oraya gidiyoruz.
Bu o.
Ve bu yüzden, gerçekten hepsi bir araya toplanmış kıvrık görüntüler için geçerlidir.
Tamam.
Ve bu kadar.
Üç adım atıldı.
Bu çok hızlı oldu.
Dolayısıyla, buna bakmamızın yolunu hatırlayın, önce konvoluyu giriş görüntülerimize uyguladıktan sonra,
bir konvolüsyonla elde edilen kıvrık görüntülerimize Max çekerek uyguluyoruz.
konvolasyon katmanımızı bir doruk noktası çekip nöronlar harekete geçirilmiş haliyle alırız.
Ve sonra tüm bu havuz konvolüsyon katmanındaki nöronları doğrultucu aktivasyon işlevi ile
etkinleştiririz, böylece, birinci
Ve temel olarak bu, ilk konvolüyon katmanından diğerine geçerken
sinyalleri yayar.
Ve bir sonraki konuşurken, şu anda bununla ilgileneceğimiz tam da budur.
İkinci kıvırcık katmanın nöronlarını aktive ederek sinir ağına sinyalleri
daha da yaymak için orada ikinci kıvırcık katmanın ilk kıvrımında yaptığı gibi
aynı şeyi yapacağız.
Fakat bunu yapmadan önce bu konvolüsyon tabakasını almalıyız.
Ve böylece, şimdi, ilk konvolüsyon tabakası olan X'e konvolüsyon uygulayacağız.
İkinci kıvırcık tabaka elde etmek için konvolüsyonu 2 x'e uygulayacağız, sonra onu
Max çekecektir.
Sonunda Sirat'ı harekete geçirdi.
O halde bunu yapalım.
Aslında bunu kopyalayıp aşağıdaki alt yapıştırmamız çok kolay.
Şüphesiz elbette konvolüyonu konvolüsyonla değiştirmeliyiz.
Ve işte gidiyoruz.
Aslında hazır görün çok kolay.
Ve şimdi bu hat ile ikinci konvolusiyondan gelen sinyalleri, buradaki üçüncü
konvolüyonel olacak olana çeviriyoruz.
Ve bu üçüncü konvolüyonel iradeyi elde etmek için bunu tekrar uygulamak gerekecek.
Bu yüzden aşağıdaki yapıştırmayı kopyalayıp konvolüsyonun konvolüsyon 3 ile değiştiriyorum ve yapılması çok
pratik değil.
Sinyalleri bir el fenerinde üç konvolüsyon harfle yayarız.
Bu müthiş yapı sayesinde.
Pekâlâ, bu kadar mükemmel.
Şimdi sinyalleri üçüncü kıvrım tabakasına kadar yayılmış durumda.
Ve bundan sonra konuşmak bizi aradıklarımıza götürür.
Bununla ilgilendiğimiz şey orada yassılaştırmak.
Pekâlâ, burada üçüncü kıvırcıklığımız var, bu da burada son X'tir.
Düzleştirmemizin vakti geldi.
Ve işte tam da bunu yapacağız.
Şimdi üçüncü konvolusyon katmanının tüm kanallarını düzleştirip, üçüncü konvolüyonel
katmanın tüm kanallarının tüm piksellerini alacağız.
Onları birbiri ardına büyük bir vektörle koyacağız.
Ve tabii ki bu kocaman vektör düzleştirici tabakadan başka bir şey olmayacak ve
aynı zamanda orada bu düzleşmede nöron sayısını elde etmek için bir hüner kullanacağız.
İşte biz de aradıklarımız.
bu yüzden doğrudan istediğimiz şeyi geri alalım ve bu dönüşte üçüncü konvolusyon
katmanını düzleştireceğiz ve bu katlanan katmandaki aynı sayıda ve nöron sayısına ulaşacağız.
Kaybettiğimiz nöronların sayısı
Böylece X'i alacağız. buradaki üçüncü konvolümanımız.
Üçüncü konvolüsyonun tüm kanallarını alacağız ve tüm bu kanalların
tüm piksellerini aynı büyük bir vektörde düzleştirmek için boyut fonksiyonu olan bir fonksiyonu kullanacağız.
Ve bu yüzden pite bulabileceğiniz hile çok zorlanıyor.
Ilk X'in verilerini alıyoruz, çünkü X bir meşale olduğunu bildiğiniz özel bir yapıdır Voivode Bu yüzden
oldukça karmaşık bir yapıya sahip.
Fakat öncelikle buradaki verilerle ona erişmemiz gerekiyor, içimizdeki şeyi görmek lazım.
Bu yüzden bu görüntüleme işlevini kullanıyoruz ve şimdi aradıklarımıza erişmeliyiz ve
bu da 1 ve eksi 1 argümanlarıyla bile.
Yapının içinde olanı anlamalısınız.
Ancak şunu anlıyorsunuz ki, bu sayıdaki nöronları nasıl elde edeceğiz ve daha
sonra bitirmek için parantez içinde ve girdi girişlerinde 1 boyut eklememiz gerekiyor.
Temelde burada yaptığımız, tüm kanalların tüm piksellerini almamız ve bunları, birbirine
bağlı ağın girişi olacak olan bu büyük vektörde birbiri ardına koymak.
Temel olarak boyutun yaptığı şey budur.
Ve bununla, aradığımız yeni sayıları alabiliriz.
Pekâlâ, şimdi istediğimizi alıyoruz.
Ve nihayet burada görüntülerin formatına uygulandığında bu fonksiyon tarafından döndürülen
nümerik nöronları değiştirebiliriz.
80 x 80 e biri.
Şimdi ne yapmak zorundayız sayı nöronlarının yerini alıyor, toplam sayı 80 ve
80 olacak olan resimlerin formatına uyguladığımız sayım nöronları fonksiyonunu kullanıyoruz.
Ve işte gidiyoruz.
Ve tabii ki kendini de unutmamaktayız çünkü Sayım nöronu aslında CNN testinin bir metodudur.
Bu yüzden eklememiz lazım.
Ve şimdi uyarı kayboldu.
Ve işte gidiyoruz.
Şimdi her şey yolunda gidiyor.
Sinir ağının mimarisini eksik bir şey olmadan edindik ve bazı diğer mimarileri denemek
istediğinizi ve nöronların sayısını manuel olarak saymak istemediğinizde bu sayaç takımlarının
işlevine sahibiz.
Oynattığınız bu işlevi görüntülerinizin biçimine getirmeniz yeterlidir.
Ve bu sizi doğrudan istediğinizi alacaktır.
Bu bir şey yapmak zorunda kalmadan sel katmanındaki nöronların sayısıdır.
Ve mimari bu kritik olan her yerde.
Ve şimdi, bu beynin yapacağımız ilk büyük önemli adımımızı tamamladık ve son bir adımımız
var.
Bu, ana ilerleme işlevi olacak hale getirmek için son bir işlevdir.
bağlantıdan sonraki çıktı katmanına sinyalleri yayacağız.
Dolayısıyla beyindeki başın gözünün gözlerinden ikinci
Bunu bir sonraki iki etapta ve o zamana kadar AI yapacağız.