Zephyrnet Logosu

LeNet'te Uzmanlaşmak: Mimari Anlayışlar ve Pratik Uygulama

Tarih:

Giriş

Yann LeCun ve ekibi tarafından 5'larda geliştirilen öncü bir evrişimli sinir ağı (CNN) olan LeNet-1990, bilgisayarlı görme ve derin öğrenmede ezber bozan bir gelişmeydi. Bu çığır açan mimari, elle yazılan ve makineyle basılan karakterlerin tanınmasında devrim yaratmak için açıkça tasarlandı. LeNet-5, geleneksel yöntemlerin aksine, manuel özellik mühendisliği ihtiyacını ortadan kaldıran, piksel görüntülerini evrişimli katmanlar, alt örnekleme ve tamamen bağlantılı katmanlar aracılığıyla doğrudan işleyen yeni bir yaklaşım sundu. Başarısı karakter tanımanın ötesine geçerek modern derin öğrenme modelleri için bir temel taşı görevi gördü ve bilgisayarlı görme, nesne tanıma ve görüntü sınıflandırmada sonraki mimarileri etkiledi.

Yann LeCun'un geriye yayılım algoritmalarını pratik problemlere erken uygulaması, el yazısı karakterleri okumak için tasarlanan ve ABD Posta Servisi tarafından sağlanan posta kodu numaralarını belirlemede mükemmel olan LeNet-5'in temelini attı. Her gün milyonlarca çek okuma yeteneği gibi birbirini takip eden versiyonları ve uygulamaları, araştırmacılar arasında ilginin artmasını tetikleyerek sinir ağlarının yapısını şekillendirdi ve derin öğrenmenin evrimine ilham verdi.

LeNet -5

LeNet-5'in ve günde milyonlarca çek okuyabilen sistemler gibi sonraki uygulamaların başarısı, araştırmacıların sinir ağlarına olan ilgisinin artmasına neden oldu. Günümüzün en iyi performansa sahip sinir ağı mimarileri LeNet-5'in ötesine geçmiş olsa da, çığır açan tasarımı ve başarıları, derin öğrenmeyi önemli ölçüde şekillendiren ve ilham veren çok sayıda sonraki modelin temelini attı. LeNet-5, yeniliğin bir kanıtı ve makine öğrenimi ile görüntü tanımanın evriminin kalıcı bir sembolü olmaya devam ediyor.

Öğrenme hedefleri

  • LeNet-5'in derin öğrenme ve bilgisayarlı görmenin evrimi üzerindeki tarihsel önemini ve etkisini keşfedin.
  • LeNet-5'i çağdaş sinir ağı mimarileriyle karşılaştırarak derin öğrenmedeki mevcut modeller üzerindeki temel etkisini inceleyin.
  • Evrişimli, alt örnekleme ve tamamen bağlantılı katmanlar dahil olmak üzere LeNet-5'in mimarisini anlayın.
  • LeNet-5'in görüntü tanıma görevlerindeki etkinliğini gösteren pratik uygulamaları ve vaka çalışmalarını analiz edin.

Bu makale, Veri Bilimi Blogatonu.

İçindekiler

LeNet'i Anlamak

LeNet-5 olarak da bilinen LeNet, 1990'larda Yann LeCun ve ekibi tarafından geliştirilen öncü bir evrişimli sinir ağı (CNN) mimarisidir. Elle yazılan ve makineyle basılan karakter tanıma görevleri için özel olarak tasarlanmıştır. LeNet-5'in önemi, hiyerarşik özellik öğreniminin başarılı bir şekilde gösterilmesinde ve karakter tanımadaki etkinliğinde yatmaktadır. Etkisi orijinal amacının ötesine geçerek, modern derin öğrenme modellerinin gelişimini etkilemekte ve bilgisayarlı görme, görüntü tanıma ve çeşitli makine öğrenimi uygulamalarındaki sonraki gelişmeler için temel bir mimari görevi görmektedir.

LeNet'i Anlamak

LeNet'in Mimarisi

LeNet-5, karakter tanıma görevlerinde kullanılan özel bir mimariye sahip bir Evrişimli Sinir Ağıdır (CNN). Eğitilebilir parametreler içeren, giriş katmanı hariç birden fazla katmandan oluşur. Özellikle, veritabanındaki karakterlerden daha önemli olan 32x32 piksellik görüntüleri, potansiyel olarak ayırt edici özelliklerin merkezlenmesine odaklanarak işler. Daha iyi öğrenme verimliliği için giriş pikseli değerleri normalleştirilir.

LeNet'in Mimarisi

LeNet'in mimarisi, evrişimli, alt örneklemeli ve tamamen bağlantılı katmanları belirli bağlantı modelleriyle birleştirir. Verimli öğrenme amacıyla verilerden ayırt edici özellikler çıkarmak için giriş pikselleri için normalleştirme ve bir dizi katman kullanır. Ek olarak, aktivasyon fonksiyonlarının doygunluğunu önlemek için benzersiz stratejiler uygular ve verimli eğitim için belirli kayıp fonksiyonlarını kullanır.

"
"

Doygunluğu Önlemek İçin Benzersiz Stratejiler

  • Giriş Katmanı: LeNet, veritabanındaki karakterlerden daha önemli olan 32×32 piksel görüntüleri işler ve görüntünün merkezindeki potansiyel ayırt edici özellikleri yakalamayı amaçlar.
  • Evrişimsel ve Alt Örnekleme Katmanları: Evrişimli katmanlar öğrenilebilir filtreler veya çekirdekler kullanarak öncelikle giriş verilerinden özellikler çıkarın. Her katman, giriş verileri (görüntü) üzerinde kayan ve özellik haritaları oluşturmak için öğe bazında çarpmalar gerçekleştiren birden fazla filtre içerir. İlk katman, tanh işleviyle etkinleştirilen ve 6x5x5 boyutunda özellik haritalarına yol açan, 28x28 boyutunda 6 filtre içerir. Sonraki katmanlar aynı boyutta 16 filtre kullanarak 10x10x16 özellik haritaları oluşturur.
  • Alt örnekleme katmanlarıHavuzlama katmanları olarak da bilinen , evrişimli katmanlardan elde edilen özellik haritalarının boyutluluğunun azaltılmasına odaklanır. Havuzlama, tipik olarak tanımlanmış bölgelerdeki maksimum değeri (MaxPooling) veya ortalama değeri (AveragePooling) alarak özellik haritalarının birleştirilmesini veya altörneklenmesini içerir. 2x2 filtre boyutları ve adım varyasyonları ile bu katmanlar, sırasıyla 14x14x6 ve 5x5x16 özellik haritası boyutlarıyla sonuçlanır.
  • Tamamen Bağlı Katmanlar: Mimari, çıkarılan özelliklere göre son sınıflandırmayı işleyen, Fx etiketli, tamamen bağlı katmanları içerir. 84 nöronlu tamamen bağlantılı bir katman ve 10 nöronlu bir son çıktı katmanı; ilkinde tanh aktivasyon fonksiyonunu, ikincisinde ise Softmax'ı kullanıyor. Softmax işlevi, tahmini belirleyen en yüksek olasılık olacak şekilde her sınıfa olasılıklar atar.
  • Çıktı Katmanı: LeNet, sınıflandırma için, tanıma ve düzeltme amacıyla karakterlerin farklı temsilleriyle birlikte Radyal Temel Fonksiyon birimlerini kullanır.
"

Adım Adım iş akışı

[Input: 28x28x1]
    |
[Conv2D: 6 filters, 5x5, tanh]
    |
[Average Pooling: 2x2, stride 2]
    |
[Conv2D: 16 filters, 5x5, tanh]
    |
[Average Pooling: 2x2, stride 2]
    |
[Flatten]
    |
[Dense: 120, tanh]
    |
[Dense: 84, tanh]
    |
[Dense: 10, softmax (output)]

Evrişimsel Katman 1:

  • Filtre sayısı: 6
  • Çekirdek boyutu: 5×5
  • Etkinleştirme işlevi: Tanh
  • Giriş şekli: 28x28x1

Ortalama Havuzlama Katmanı 1:

  • Havuz büyüklüğü: 2×2
  • Adımlar: 2

Evrişimsel Katman 2:

  • Filtre sayısı: 16
  • Çekirdek boyutu: 5×5
  • Etkinleştirme işlevi: Tanh

Ortalama Havuzlama Katmanı 2:

  • Havuz büyüklüğü: 2×2
  • Adımlar: 2

Tamamen Bağlı Katmanlar:

  • 120 birim ve Tanh aktivasyonu ile yoğun katman.
  • 84 birimden oluşan kalın katman ve Tanh aktivasyonu.
  • Çoklu sınıf sınıflandırma (MNIST veri seti) için 10 üniteli çıktı katmanı ve Softmax aktivasyonu.
Tamamen bağlı katmanlar | LeNet

LeNet'in Temel Özellikleri

  1. CNN Mimarisi: LeNet-5, evrişimli ve havuzlama katmanlarına sahip yapılandırılmış bir mimariye sahip öncü bir Evrişimli Sinir Ağıydı.
  2. El Yazısı Rakamlarda Desen Tanıma: Başlangıçta el yazısı rakam tanıma için geliştirildi ve el yazısı karakterlerin tanımlanmasında ve sınıflandırılmasında yüksek doğruluk sergiledi.
  3. Evrişimsel ve Havuzlama Katmanları: Özellik çıkarımı için evrişimli katmanların tanıtılması ve alt örnekleme için katmanların havuzda toplanması, ağın hiyerarşik temsilleri aşamalı olarak öğrenmesine olanak tanır.
  4. Doğrusal Olmayan Aktivasyon: Ağa, veriler içindeki karmaşık ilişkileri yakalamak için gerekli olan doğrusal olmayan yetenekleri sağlayan hiperbolik tanjant (tanh) etkinleştirme işlevlerinden yararlanılmıştır.
  5. Derin Öğrenmeye Etkisi: LeNet-5'in başarısı, çağdaş derin öğrenme modellerinin temelini attı ve görüntü tanıma ve sınıflandırmaya yönelik sinir ağlarının gelişimini önemli ölçüde etkiledi.

LeNet'in Pratik Uygulaması:

Kitaplığı İçe Aktar

Keras API'sini kullanarak LeNet-5'i TensorFlow'da uygulamak için kodla başlayın. MNIST veri kümesiyle çalışmak iyi bir başlangıç.

import tensorflow as tf
from tensorflow import keras
from keras.datasets import mnist
from keras.layers import Dense, Flatten, Conv2D, AveragePooling2D
from keras.models import Sequential
from tensorflow.keras.utils import plot_model

Veri Kümesini Yükle

Görüntüleri eğitmek ve test etmek için MNIST veri kümesini yükleyin. Bu işlev, el yazısı rakamlı görüntülerden ve ilgili etiketlerden oluşan veri kümesini yükler. Veriler eğitim ve test setlerine bölünmüştür.

(X_train, y_train), (X_test,y_test) = mnist.load_data()

Çıktı:

"

yeniden şekillendirmek

Bu bağlamda yeniden şekillendirme işlevi, görüntülerin şeklini CNN'de işlenmeye uygun hale getirecek şekilde ayarlıyor. (28, 28, 1) şekli görüntülerin 28×28 piksel olduğunu ve tek kanallı (gri tonlamalı görüntüler) olduğunu belirtir. Bu dönüşüm gereklidir çünkü çoğu CNN, görüntülerin genellikle (genişlik, yükseklik, kanallar) olarak temsil edilen belirli bir biçimde olmasını bekler.

#perfoming reshape
X_train = X_train.reshape(X_train.shape[0],28,28,1)
X_test = X_test.reshape(X_test.shape[0],28,28,1)
# Check the shape of data 
X_train.shape

normalleştirme

Sağladığınız kod parçacığı, eğitim ve test veri kümelerindeki görüntü pikseli değerlerini normalleştirir. Her piksel değerinin 255'e bölünmesi, piksel değerlerinin 0 ile 1 arasında olmasını sağlar.

# Normalization ---> convert 0 to 1
X_train = X_train/255
X_test = X_test/255

Bir Sıcak Kodlama

MNIST veri setine ait sınıflar 10 sınıflı kategorik verilere dönüştürülmüştür. Her etiket, her öğenin bir sınıfı temsil ettiği, indekste 1'in sınıfa karşılık geldiği ve diğer yerlerde 0'ın bulunduğu bir vektöre dönüştürülür.

# One hot encoding
y_train = keras.utils.to_categorical(y_train,10)
y_test = keras.utils.to_categorical(y_test,10)

Model Oluşturma

Bu kod parçacığı, TensorFlow'da Keras Sequential API kullanılarak LeNet-5 modelinin oluşturulmasını gösterir. Katmanları ve bunların konfigürasyonlarını tanımlar ve modeli bir optimize edici, kayıp fonksiyonu ve değerlendirme için metriklerle derler.

model = Sequential()
# first layer
model.add(Conv2D(6, kernel_size=(5,5), padding="valid", activation="tanh", input_shape =(28,28,1)))
model.add(AveragePooling2D(pool_size=(2,2),strides=2, padding='valid'))

#second layer
model.add(Conv2D(16, kernel_size=(5,5), padding="valid", activation="tanh"))
model.add(AveragePooling2D(pool_size=(2,2),strides=2, padding='valid'))

# flatten layer
model.add(Flatten())

# ANN
model.add(Dense(120, activation='tanh'))
model.add(Dense(84, activation='tanh'))
model.add(Dense(10, activation='softmax'))

model.summary()

Çıktı:

Lenet

Model Derleme

The “derlemek” yöntemi, optimizasyon yöntemini, kayıp fonksiyonunu ve izlenecek metrikleri tanımlayarak modeli eğitime hazırlar.

model.compile(loss= keras.metrics.categorical_crossentropy, optimizer =keras.optimizers.Adam(),
metrics= ['accuracy'])

Model eğitimi: "uygun ” işlevi, sağlanan eğitim verilerini kullanarak modeli eğitir ve test verilerini kullanarak doğrular.

model.fit(X_train,y_train, batch_size=128,epochs=10 , verbose=1, validation_data=(X_test,y_test))

çıktı:

Çıkış | LeNet

Model Değerlendirmesi

model "değerlendirmek()" işlevi, modelin bir test veri kümesindeki performansını değerlendirmek için kullanılır. Sonuç, test kaybını ve test doğruluğunu sağlar.

score = model.evaluate(X_test,y_test)

print('Test loss', score[0])
print('Test Accuracy', score[1])
model değerlendirmesi | LeNet

Görselleştirme:

# Create a bar chart to visualize the comparison
import matplotlib.pyplot as plt
predicted_labels = np.argmax(predictions, axis=1)

# Compare predicted labels with true labels
correct_predictions = np.equal(predicted_labels, np.argmax(y_test, axis=1))

plt.figure(figsize=(12, 6))
plt.bar(range(len(y_test)), correct_predictions, 
color=['green' if c else 'red' for c in correct_predictions])
plt.title('Comparison of Predicted vs. True Labels')
plt.xlabel('Sample Index')
plt.ylabel('Correct Prediction (Green: Correct, Red: Incorrect)')
plt.show()

Çıktı:

Çıkış | LeNet

LeNet'in Etkisi ve Önemi

LeNet'in etkisi orijinal görevinin çok ötesine uzanır. Başarısı, evrişimli sinir ağlarının (CNN'ler) daha derinlemesine araştırılmasının yolunu açtı. Rakam tanıma görevlerindeki verimli tasarımı ve performansı, görüntü sınıflandırma, nesne algılama ve yüz tanıma dahil olmak üzere çeşitli bilgisayarlı görme uygulamalarındaki gelişmelere zemin hazırlıyor.

LeNet'in etkisi ve önemi
  • El Yazısı Karakter Tanımada Devrim: LeNet-5'in el yazısıyla yazılan rakamları ve karakterleri tanımadaki başarısı, çeşitli pratik uygulamalarda, özellikle posta kodlarının ve çeklerin tanınmasında bir dönüşüme yol açtı. Karakterleri doğru bir şekilde tanıma yeteneği, bu uygulamaların sinir ağlarını yaygın şekilde benimsemesine katkıda bulundu.
  • Geleceğin Mimarilerine Etkisi: LeNet'in mimari tasarım ilkeleri, daha sonraki birçok CNN modelinin temelini oluşturdu. Evrişim, alt örnekleme ve tamamen bağlantılı katmanların yenilikçi kullanımı, çeşitli görüntü tabanlı görevler için daha karmaşık ve gelişmiş sinir ağı mimarilerinin geliştirilmesine ilham verdi.
  • Derin Öğrenmeyi Teşvik Etmek: LeNet-5'in başarısı, görüntü tanımada derin öğrenme ağlarının potansiyelini ortaya koydu ve bu alanda daha fazla araştırma ve geliştirmeye ilham verdi. Araştırma topluluğu üzerindeki etkisi, çeşitli vizyona dayalı görevler için derin sinir ağlarının kullanılmasına yönelik bir paradigma değişikliğine yol açtı ve alanda daha sonraki gelişmelerin temelini attı.

LeNet Uygulaması

LeNet'in etkisi çok sayıda gerçek dünya uygulamasına kadar uzanıyor. LeNet'in temel kavramları, posta hizmetlerinde elle yazılan rakamların tanınmasından tıbbi görüntü analizine yardımcı olarak sağlık hizmetlerinde devrim yaratmaya kadar çok sayıda alanı etkilemiştir.

  • Belge oluşturuluyor: LeNet'in yetenekleri, çeşitli sektörlerde belgeleri tarama ve analiz etme, farklı türdeki bilgileri ayrıştırma ve işleme, belgelerden veri çıkarma ve veri girişi görevlerini otomatikleştirmede kullanım alanı bulmuştur.
  • Elyazısı tanıma: LeNet'in el yazısı karakterleri ve rakamları tanımadaki başarısı, banka çekleri, posta hizmetleri ve formlardaki el yazısı metinlerin işlenmesinde kullanılan Optik Karakter Tanıma (OCR) sistemlerinde temel olmaya devam ediyor. Tarihi belgelerin dijitalleştirilmesinde ve çeşitli formatlarda elle yazılmış bilgilerin tanınmasında uygulanabilir.
  • Biyometrik Kimlik Doğrulama: LeNet'in el yazısı tanıma yetenekleri imza ve parmak izi analizine uygulanarak biyometrik kimlik doğrulama yöntemlerine olanak tanındı ve güvenlik sistemleri geliştirildi.
  • Gerçek Zamanlı Video Analizi: LeNet'teki temel kavramlar, nesne takibi, gözetleme sistemleri, yüz tanıma ve otonom araçlar gibi gerçek zamanlı video analizinin temelini oluşturur.
  • Görüntü Sınıflandırması: LeNet'in ilkeleri modern görüntü sınıflandırma sistemlerini etkiler. Uygulamalar, fotoğraflardaki nesnelerin tanımlanması, üretimde kalite kontrolü, tıbbi görüntüleme analizi ve nesne tanımlamaya yönelik güvenlik sistemleri gibi çok sayıda alan için görüntülerdeki nesnelerin sınıflandırılmasını ve kategorize edilmesini içerir.

LeNet'in Zorlukları ve Sınırlamaları

  • Özellik Çıkarma Verimliliği: Sinir ağı mimarilerinin gelişmesiyle birlikte, daha yeni modeller daha verimli özellik çıkarma yollarına sahip oluyor ve bu da LeNet'i karmaşık kalıpları ve özellikleri tanımlamada nispeten daha az verimli hale getiriyor.
  • Sınırlı Uyarlanabilirlik: El yazısı karakter tanıma gibi belirli görevler için tasarlanan mimarisi, önemli değişiklikler yapılmadan diğer alanlara doğrudan aktarılamayabilir.
  • ölçeklenebilirlik: Öncü bir model olmasına rağmen LeNet, modern veri işleme ve derin öğrenme taleplerine uyum sağlayacak ölçeklenebilirlikten yoksun olabilir.
  • Aşırı uyum gösterme: LeNet, daha karmaşık veri kümeleriyle uğraşırken aşırı uyum sorunu yaşayabilir ve bu sorunu azaltmak için ek düzenleme teknikleri gerekebilir.

Araştırmacılar, bu sınırlamaların üstesinden gelmek için daha karmaşık CNN mimarileri geliştirdiler; çeşitli görevlerde performansı artırırken bu zorlukların üstesinden gelmek için gelişmiş teknikler kullandılar.

Sonuç

Erken bir evrişimsel sinir ağı olan LeNet, derin öğrenmede çok önemli bir kilometre taşıdır. Yann LeCun ve ekibinin başlangıcı, özellikle el yazısı karakter tanıma ve görüntü analizinde bir dönüm noktası oldu. LeNet, mimari basitlik ve olası aşırı uyum nedeniyle modern karmaşık görevlere ve çeşitli veri kümelerine uyum sağlama konusunda zorluklarla karşı karşıyadır. Mirası hala hayati önem taşıyor, daha gelişmiş mimarilere ilham veriyor ve derin öğrenme modellerinin geliştirilmesinde önemli bir rol oynuyor.

LeNet'in başlangıcı, derin öğrenme tarihinde çok önemli bir an oldu. Görüntü tanıma görevlerindeki ve ilkelerindeki başarısı, modern evrişimli sinir ağlarının evrimine zemin hazırladı. Kalıcı mirası, bilgisayarlı görme ve yapay zekanın manzarasını şekillendirmeye devam ediyor.

Önemli Noktalar

  • Modern derin öğrenme mimarilerinin temelini oluşturan evrişimli ve alt örnekleme katmanları kavramını tanıttı.
  • LeNet, zamanında önemli ilerlemeler kaydetmiş olsa da, çeşitli ve karmaşık veri kümelerini işleme konusundaki sınırlamaları belirgin hale geldi.
  • Derin öğrenmede devrim yaratan evrişimli ve alt örnekleme katmanları tanıtıldı.

Sık Sorulan Sorular

S1: LeNet nedir?

C: LeNet, Yann LeCun ve ekibi tarafından 1990'larda tasarlanan bir evrişimli sinir ağıdır (CNN). El yazısı karakter tanıma ve görüntü analizi için geliştirilmiştir.

S2: LeNet'in günümüz dünyasındaki uygulamaları nelerdir?

C: LeNet'in uygulamaları, sağlık ve güvenlik sistemlerinde optik karakter tanıma, rakam ve harf tanıma ve görüntü sınıflandırma görevleridir.

S3: LeNet, sinir ağlarının tarihinde neden önemlidir?

C: LeNet, CNN'lerin ilk başarılı uygulamalarından biri olarak çok önemliydi. Görüntü tanıma görevleri için sinir ağlarının geliştirilmesinde temel taşı görevi gördü.

S4: LeNet, yapay zeka modellerinin gelişimini nasıl etkiledi?

C: LeNet'in başarısı, sinir ağlarına olan ilginin artmasına, ardından bilgisayarlı görme ve derin öğrenmedeki gelişmelere yol açtı. Tasarım ilkeleri ve mimarisi birçok modern yapay zeka modelinin gelişimini etkiledi.

S5: LeNet'in mimarisinden ne gibi dersler çıkarabiliriz?

C: LeNet'in mimarisi, evrişimli katmanlar aracılığıyla hiyerarşik özellik çıkarma kavramını ortaya koydu. Modern derin öğrenme modellerinde standart haline gelen etkili örüntü tanımayı etkinleştirme.

Bu makalede gösterilen medya Analytics Vidhya'ya ait değildir ve Yazarın takdirine bağlı olarak kullanılır.

spot_img

En Son İstihbarat

spot_img