HSA_Not - Yıldız Teknik Üniversitesi

advertisement
İÇİNDEKİLER
1. GİRİŞ ............................................................................................................................ 1
2. YAPAY SİNİR AĞLARI ............................................................................................. 4
2.1. Biyolojik Sinir Sistemi............................................................................................... 4
2.2. Yapay Sinir Ağı ......................................................................................................... 6
2.2.1. Yapay Sinir Ağlarının Özellikleri........................................................................... 6
2.2.2. Yapay Sinir Ağlarının Tarihsel Gelişimi ................................................................ 8
2.3 Hopfield Sinir Ağı ...................................................................................................... 8
2.3.1 Giriş ......................................................................................................................... 8
2.3.2 Ağ Topolojisi .......................................................................................................... 9
3. HÜCRESEL SİNİR AĞLARI .................................................................................... 11
3.1. Hücresel Sinir Ağlarının Keşfi ................................................................................ 11
3.2. Hücresel Sinir Ağlarının Mimarisi .......................................................................... 12
3.2.1 Temel Gösterilim ve Tanımlar............................................................................... 12
3.3 Hücre Yapısı ............................................................................................................. 16
3.4 Zamandan ve Konumdan Bağımsız HSA................................................................. 17
3.4.1 Klonlama Şablonu Gösterilimi .............................................................................. 18
3.4.1.1. Geri Besleme Operatöründen ( A(i-k , j-l) ) Gelen Katkı.................................. 18
3.4.1.2. Giriş (Kontrol) Operatöründen ( B(i-k , j-l) ) Gelen Katkı............................... 19
4. HÜCRESEL SİNİR AĞLARININ GÖRÜNTÜ İŞLEMEDE.................................... 21
KULLANILMASI ...................................................................................................... 21
4.1 Giriş .......................................................................................................................... 21
4.2 Lineer HSA ile Görüntü İşleme ................................................................................ 22
4.2.1 Lineer HSA İle Görüntü İşleme Uygulaması ........................................................ 24
4.2.1.1 Uygulama Adımları ............................................................................................ 25
4.3 Standart (Lineer Olmayan) HSA ile Görüntü İşleme Uygulaması ........................... 29
4.3.1 Uygulama Adımları: .............................................................................................. 29
5. LİNEER HSA SİMÜLASYONUNUN MATEMATİKSEL KARŞILIĞI................. 31
5.1 Giriş .......................................................................................................................... 32
5.2 Lineer HSA Denklemleri .......................................................................................... 33
5.3 Euler İleri Yaklaşıklığı.............................................................................................. 34
5.4 Optimum Zaman Adımının Belirlenmesi .....................................................................
1
1. GİRİŞ
Bilim, insanlık tarihi boyunca doğadaki muhteşem işleyişin hep takipçisi olmuş ve
kendinin doğmasına sebep bu yapıya kendini benzetmeye çalışmıştır.
Doğanın en karmaşık ve harikulade sistemi olan insan, bütün bilim dallarını cezbeden
bir araştırma konusu olmaya, geçmişten günümüze devam etmektedir. İnsan gibi
düşünen ve davranan bir sistem üretmek çok uzun yıllardır, özellikle matematik ve
mühendislik dallarının vazgeçmediği hedeflerindendir. Bilim adamları bir yandan insan
beyninin işleyiş sırlarını çözmeye çalışırken diğer yandan, edindikleri bilgilerle daha
yetenekli makineler yapmaya çabalamaktadırlar.
Uzun yıllardır, insan beyni üzerinde sürdürülen araştırmalara rağmen, beynin asli
görevleri olan, düşünme ve karar verme işlevlerini nasıl gerçekleştirdiği, hala çözüm
bekleyen bir sırdır. Bu süreçte ortaya atılan birçok teori, gelişen teknoloji sayesinde elde
edilen basit bilgilerle geçerliliğini yitirebilmektedir. Örneğin son yıllardaki gelişmeler
daha önceden zannedildiği gibi beynin sayısal değil, analog ve paralel bir yapıya sahip
olduğunu göstermektedir.
Beyin milyarlarca beyin hücresinin bir araya gelmesi ile oluşmuştur. Beyin hücrelerine
nöron adı verilir
ve beyinde yaklaşık 1,5.1010 adet farklı tipte nöron olduğu
zannedilmektedir. Nöron uyarıların alındığı dendritler ve tepkilerin verildiği aksonlarla
giriş çıkış faaliyetini sağlar. Devre bakış açısı ile bir nöronu; dendritlerindeki girişlere
bağımlı olarak değişen farklı frekanslarda işaret üretebilen bir darbe üreteci olarak
tanımlayabiliriz. Bir tek nöronun tepki verme süresinin bir lojik kapı ortalama hızından
çok daha yavaş olmasına karşın, diğer nöronlarla paralel çalışırken inanılmayacak
derecede hızlı yanıt üretmeleri ne kadar ilginçtir. Bu muhteşem yapıyı taklidi hayal eden
bilim adamları şimdilerde kullanılmadığı hiç bir alan kalmayan yeni bir devre yapısı
keşfettiler. Keşfin adı keşfedildiği yapıya izafen Yapay Sinir Ağları olarak
belirlendi.[1]
2
Yapay sinir ağları (YSA) basitçe; doğrusal olmayan karakteristiğe sahip analog
birimlerden oluşan bir devre yapısıdır. Yapının keşfedildiği 20. yüzyılın ortalarından bu
yana bu konuda binlerce araştırma yapılmış, gelişmeler yaşanmış ve bunların büyük bir
kısmı sayısal bilgisayarların yetersiz kaldığı gerçek hayat problemlerine çözümler
sunmuştur.
Bu tez boyunca, 1982 yılında ünlü bir fizikçi J. Hopfield tarafından ortaya atılan ve
ismiyle anılan Hopfield YSA’nın özel bir alt kümesi olan Hücresel Sinir Ağı (HSA)
tanıtılmış ve bu yapının görüntü işlemede kullanılması detaylı olarak incelenmiştir.
Hücresel Ağ modeli 1988 yılında L. O. Chua ve L. Yang tarafından ortaya atılmıştır.
Hücresel Sinir Ağlarının, insan beynindeki gibi bölgesel bağlantılara sahip olması VLSI
gerçeklenmesini olanaklı kılmıştır. Analog yapıdaki HSA sayısal sistemlerin
erişemeyeceği işlem hızlarına erişebilmekte, bundan dolayı bir çok alanda tercih
edilmektedir.
Bilgi alış-verişinde görsel verinin rolü oldukça fazladır. Gelişen teknoloji ile birlikte
görüntü ve resim gibi görsel veriye artan talep, daha çok verinin işlenme gerekliliğini de
beraberinde getirmiştir.
Hücresel Sinir Ağlarının sahip olduğu yapı bir çok uygulamaya elverişli olsa da en
yaygın kullanımını görüntü işlemede bulmaktadır.
Hücresel Sinir Ağlarının sahip olduğu yapı, görüntü işleme uygulamaları için oldukça
uygundur. Önemli nedenlerini şu şekilde sıralayabiliriz;
 Görüntü işlemede her bir görüntü pikseline uygulanan işlemin konumdan
bağımsızlığı, HSA’nın (Konumdan Bağımsız HSA) da sahip olduğu bir özelliktir.
 Görüntüdeki her bir piksel, HSA’da ki bir hücreye karşı düşmektedir.
 Sahip olduğu paralel işleyişin yanında ayrık uzay-sürekli zaman özelliği eşzamanlı görüntü işleme uygulamalarını olanaklı kılar.
 HSA sahip olduğu paralel ve analog yapı nedeniyle, sayısal sistemlerle görüntü
işleme hızından çok daha hızlı sonuçlar verir.
3
Hız konusuna bir örnek vermek gerekirse; dakikada 30 pencerenin değiştiği 512 x
512’lik bir görüntü, 3 x 3’lük bir maske ile konvolüsyon edilmek istense, dakikada 70.7
milyon çarpma ve 62.9 milyon toplama işlemi yapılması gerekmektedir. Bu
konvolüsyonun sayısal bir sistemle yapılması saniyeler alırken, HSA kullanıldığında
görüntünün boyutundan bağımsız olarak işlem nano (10-9) saniyeler sonunda
tamamlanmış olacaktır.
Bu tezde genel sinir ağı özelliklerinden bahsedildikten sonra Hücresel Sinir Ağları
üzerinde detaylı teorik ve pratik inceleme yapılıştır. Ayrıca orijinal bir çıkarım olarak
Lineer HSA simülasyonunun, lineer denklem sistemi yinelemeli çözüm yöntemleri ile
benzerliği ortaya konulmuştur.
Tezdeki diğer bölümleri kısaca özetlersek;
2. Bölümde Yapay Sinir Ağları tanıtılmıştır. Yapay Sinir Ağları’nın biyolojik sinir
ağları ile benzerliği, genel özellikleri, tarihsel gelişimi verildikten sonra, Hopfield Sinir
Ağı incelenmiştir. Hücresel Sinir Ağı, Hopfield Sinir Ağının özel bir halidir.
3. Bölüm Hücresel Sinir Ağlarına (HSA) giriş yapısındadır. Hücresel Sinir Ağlarının
keşfi, ağ mimarisi, kullanılan temel gösterilim, tanım ve denklemler ve bir hücrenin
devre yapısı bu bölümde verilmiştir. Yine bu bölümde en yaygın kullanma sahip
Konumdan ve Zamandan Bağımsız HSA yapısı tanıtılmıştır.
4. Bölümde Hücresel Sinir Ağlarının görüntü işlemede kullanılması incelenmiştir.
Lineer HSA yapısı ile görüntü işleme tanıtılmış ve sıradan (adi) görüntü işleme
yöntemiyle kıyaslamalar yapılmıştır. Teorikte anlatılanlar bir uygulamayla pratikte de
gösterilmiştir. Uygulamalarda MATLAB 6.0 program dili kullanılıştır. Yine bu
bölümde Standart HSA yapısı kullanılarak başka bir uygulama da yapılmıştır.
5. Bölümde Lineer HSA’nın simülasyonun matematiksel karşılığı araştırılmıştır.
Simülasyon için gerekli Euler İleri yaklaşıklığından bahsedilmiş, yaklaşıklıkta
kullanılan zaman adımının optimum değeri başka bir tezdeki çıkarım genişletilerek
verilmiştir. en Jacobi ve Gauss-Seidel’a benzerliği gösterilmiştir.
4
2. YAPAY SİNİR AĞLARI
Bu bölümde Yapay sinir ağları hakkında genel bir bilgi verilmiştir. HSA’nın özel bir
kümesi olduğu Hopfield Sinir Ağı incelenmiştir.
2.1. Biyolojik Sinir Sistemi
Biyolojik sinir sistemi, merkezinde sürekli olarak bilgiyi alan, yorumlayan ve uygun bir
karar üreten beynin (merkezi sinir ağı) bulunduğu 3 katmanlı bir sistem olarak açıklanır.
Alıcı sinirler organizma içerisinden yada dış ortamlardan algıladıkları uyarıları, beyine
bilgi ileten elektriksel sinyallere dönüştürür. Tepki sinirleri ise, beyinin ürettiği
elektriksel darbeleri organizma çıktısı olarak uygun tepkilere dönüştürür. Şekil 2.1 de
bir sinir sisteminin blok gösterimi verilmiştir.
Şekil 2.1. Biyolojik sinir sisteminin blok gösterimi
Merkezi sinir ağında bilgiler, alıcı ve tepki sinirleri arasında ileri ve geri besleme
yönünde değerlendirilerek uygun tepkiler üretilir. Bu yönüyle biyolojik sinir sistemi,
kapalı çevrim denetim sisteminin karakteristiklerini taşır. Merkezi sinir sisteminin temel
işlem elemanı, sinir hücresidir (nöron) ve insan beyninde yaklaşık 15 milyar sinir
hücresi olduğu tahmin edilmektedir. Sinir hücresi; hücre gövdesi, dendritler ve aksonlar
olmak üzere 3 bileşenden meydana gelir. Dendritler, diğer hücrelerden aldığı bilgileri
hücre gövdesine bir ağaç yapısı şeklinde ince yollarla iletir. Aksonlar ise elektriksel
darbeler şeklindeki bilgiyi hücreden dışarı taşıyan daha uzun bir yoldur. Aksonların
5
bitimi, ince yollara ayrılabilir ve bu yollar, diğer hücreler için dendritleri oluşturur.
Şekil 2.2 de görüldüğü gibi akson-dendrit bağlantı elemanı sinaps olarak söylenir.
Şekil 2.2. Biyolojik Sinir Hücresi ve bileşenleri.
Sinapsa gelen ve dendritler tarafından alınan bilgiler genellikle elektriksel darbelerdir
ancak sinapstaki kimyasal ileticilerden etkilenir. Belirli bir sürede bir hücreye gelen
girişlerin değeri, belirli bir eşik değerine ulaştığında hücre bir tepki üretir. Hücrenin
tepkisini artırıcı yöndeki girişler uyarıcı, azaltıcı yöndeki girişler ise önleyici girişler
olarak söylenir ve bu etkiyi sinaps belirler.
İnsan beyninin 15 milyar sinir hücresinden ve 60 trilyon sinaps bağlantısından oluştuğu
düşünülürse son derece karmaşık ve etkin bir yapı olduğu anlaşılır. Diğer taraftan bir
sinir hücresinin tepki hızı, günümüz bilgisayarlarına göre oldukça yavaş olmakla
birlikte duyusal bilgileri son derecede hızlı değerlendirebilmektedir. Bu nedenle insan
beyni; öğrenme, birleştirme, uyarlama ve genelleştirme yeteneği nedeniyle son derece
karmaşık, doğrusal olmayan ve paralel dağılmış bir bilgi işleme sistemi olarak
tanımlanabilir.[1]
6
2.2. Yapay Sinir Ağı
Beynin üstün özellikleri, bilim adamlarını üzerinde çalışmaya zorlamış ve beynin nörofiziksel yapısından esinlenerek matematiksel modeli çıkarılmaya çalışılmıştır. Beynin
bütün davranışlarını tam olarak modelleyebilmek için fiziksel bileşenlerinin doğru
olarak modellenmesi gerektiği düşüncesi ile çeşitli yapay hücre ve ağ modelleri
geliştirilmiştir. Böylece ‘Yapay Sinir Ağları’ denen yeni ve günümüz bilgisayarlarının
algoritmik hesaplama yönteminden farklı bir bilim alanı ortaya çıkmıştır. Yapay sinir
ağları; yapısı, bilgi işleme yöntemindeki farklılık ve uygulama alanları nedeniyle çeşitli
bilim dallarının da kapsam alanına girmektedir.
Genel anlamda YSA, beynin bir işlevi yerine getirme yöntemini modellemek için
tasarlanan bir sistem olarak tanımlanabilir.[2] YSA, yapay sinir hücrelerinin birbirleri
ile çeşitli şekillerde bağlanmasından oluşur ve genellikle katmanlar şeklinde düzenlenir.
Donanım
olarak
elektronik
devrelerle
yada
bilgisayarlarda
yazılım
olarak
gerçeklenebilir. Beynin bilgi işleme yöntemine uygun olarak YSA, bir öğrenme
sürecinden sonra bilgiyi toplama, hücreler arasındaki bağlantı ağırlıkları ile bu bilgiyi
saklama ve genelleme yeteneğine sahip paralel dağılmış bir işlemcidir. Öğrenme süreci,
arzu edilen amaca ulaşmak için YSA ağırlıklarının yenilenmesini sağlayan öğrenme
algoritmalarını ihtiva eder.
2.2.1. Yapay Sinir Ağlarının Özellikleri
Yukarıda verilen açıklamalardan, 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 yada öğ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.
7

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 yada 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 yada 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, 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.
8
2.2.2. Yapay Sinir Ağlarının Tarihsel Gelişimi
Beynin işleyişi ve sinir ağları üzerinde sürdürülen araştırmalar 1940’larda Mc Cullogh
ve Pitts’in nöron işlevini görebilecek birimin; belli bir eşik seviyesinden sonra çıkış
veren bir özellik göstermesi gerektiği fikrini ortaya atmaları ile yeni bir açılım kazandı.
Bu görüş, ortaya attığı basit devrenin, paralel işleyişi sırasında çok karmaşık işlevleri
yapabildiği iddiası açısından, çok önemliydi.
1950’lerin sonları 1960’ların başlarında nöron modelleri çeşitlilik kazanmıştı. Bunlar
arasında Rosenblatt’ın ‘Perseptron’u’, Widrow ve Hoff’un ‘Adaline’nı’ ve Steinbuch’un
‘Öğrenme Matrisi’ önemli olanlarıdır.
Perseptron’un sahip olduğu basitlik özelliği, yapının ilk ortaya atıldığında büyük
heyecana neden olmuştu. Fakat bu heyecan, Minsky ve Papert'in 1969'da yayınlanan
‘Perceptrons’ adlı kitaplarında; lineer olarak ayrılamayan karmaşık mantıksal
işlemlerde, Perseptron’un kullanılamayacağını matematiksel olarak kanıtlamaları ile
kısa sürdü. Adaline’nın kullanımı ise uyarlanmalı sinyal işleme tekniğindeki büyük
gelişmelerle etkisini yitirdi.
2.3 Hopfield Sinir Ağı
1982 yılında Hopfield tarafından yayınlanan makale Yapay Sinir Ağları (YSA)
dünyasında yeni bir heyecana neden oldu.
2.3.1 Giriş
Hopfield 1982’de yayınladığı makalesinde, nöronların birbirleriyle etkileşimi temeline
dayanan yeni bir sinir ağı ortaya koydu. Bu model belli bir enerji düzeyine yakınsayan
birinci dereceden lineer olmayan diferansiyel denklem takımları ile ifade ediliyordu.
9
Hopfield ismiyle anılacak sinir ağı geri beslemeli sinir ağlar sınıfına girmektedir. Bu
ağdaki temel düşünce; enerjiyi minimuma indirmek için gerekli sinaptik ağırlık
değerlerine yakınsamadır. Bunu tepenin başında bırakılan bir topun sürtünme ve diğer
kuvvetlerin etkisiyle sahip olduğu enerjinin diğer enerji türlerine dönüştüğü anda
durmasına benzetebiliriz. Ağ öğrenme işlevini tamamladıktan sonra tepenin üzerinde
oluşacak yeni top (durum) diğer topun nerede durduğunu hatırlayacaktır. Hopfield
‘enerji kuyuları’ kavramını bu ağ yapısı ile tanımlamıştır. (Şekil 2.1)
Şekil 2.3. Hopfield Sinir Ağı yapısındaki ‘Enerji Kuyuları’nın
basit bir gösterilimi
2.3.2 Ağ Topolojisi
Hopfield ağ topolojisi diğer ağlardan farklıdır. Farklı katmanlar yoktur; her birim diğer
tüm birimlere bağlıdır. Ayrıca, bağlantılar çift yönlüdür (bilgi her iki yönde akar) ve
simetriktir. Her iki yönde akan veriye uygulanan ve her bağlantı için hesaplanan bir
ağırlık değeri vardır.
Şekil 2.4. 6 birimli Hopfield ağı
10
YSA üzerindeki çalışmaların ışığında oluşan yeni devre yapısının var olan sayısal
bilgisayarlar ve analog devrelere göre öne çıkan avantajları uyarlanabilir, öğrenme
yeteneğine sahip ve tabii ki hızlarıdır. Bunun yanında yeni devre yapısının doğasında
var olan lineer olamama özelliği, lineer tekniklerle karşılaştırıldığında işlevsel
yaklaşıklık ve işaretlerin filtreleme işlemlerinde çok daha ideal sonuçlar alınmasını
sağlar.
Tüm mühendislik harikalarında olduğu gibi yapay sinir ağları da sınırlara sahiptir.
Yapay sinir ağlarının paralel yapısı, ayrık devre elemanları ile gerçeklemesini engeller.
Çünkü dört yada altıdan fazla nöron içeren ağlarda bağlantı sayısı oldukça
fazlalaşmaktadır. Özellikle Hopfield ağında her bir nöronun diğer tüm nöronlarla
bağlantılı olması gerektiği düşünüldüğünde ayrık devre elemanları ile devrenin
gerçekleştirilmesi imkansız hale gelmektedir. Buna çözüm olarak sunulabilecek
tümleşik gerçeklemede de bağlantı yollarında sorun yaşanmaktadır. Bağlantı sayısı
sınırlaması yanında devrenin az güç harcaması da aranan bir özelliktir.
Sayılan bu sınırlamalardan birçoğu, 1988 yılında Hücresel Sinir Ağı yapısının keşfi ile
ortadan kalmıştır.
11
3. HÜCRESEL SİNİR AĞLARI
Hopfield Sinir Ağı’nın özel bir kümesi olan Hücresel Sinir Ağları 1988 yılında ortaya
atılmıştır. Bu bölümde Hücresel Sinir Ağları kavramı ve temel tanımlamaları
verilecektir.
3.1. Hücresel Sinir Ağlarının Keşfi
Sinir sistemimizdeki nöronların birbirine olan bağlantılarına yoğunlaşan iki bilim adamı
Leon O. Chua ve Lin Yang 1988 yılında yeni bir yapay sinir ağı mimarisi ortaya
koydukları makalelerini yayınladılar ve bu makale ile Hücresel Sinir Ağı (HSA)
doğmuş oldu[3].
Sinir sistemimizdeki nöronların diğer nöronlarla bölgesel olarak bağlı olması -ki her bir
nöronun 1000’e yakın komşuluk kurduğu nöron bulunduğu bilinmektedir- HSA
yapısının dayandığı en önemli özelliktir. Hopfield sinir ağlarındaki bütün hücrelerin
birbirleriyle doğrudan bağlılığına karşın HSA’nda her bir hücre en yakın
komşuluğundaki hücre ile doğrudan, diğer hücrelerle dolaylı olarak bağlıdır. HSA’nın
bu yapısı, ağın tümleşik devre gerçeklemesini olanaklı kılmış ve ilk HSA cipi (CNNUM) Macaristan Teknik Üniversitesi’nde Prof. T. Roska ve öğrencileri tarafından
gerçeklenmiştir.
Bölgesel bağlantı sonucu; hem devrenin kapladığı alan azalmakta hem de verilerin
devre üzerindeki taşınım yolları kısa olduğundan toplam güç harcaması düşük
olmaktadır.
HSA önemli avantajlarından bir diğeri de kararlı bir sonuca yakınsama süresinin
devrenin boyutundan bağımsız olması ve bir kaç nöron gecikmesi ile belirlenmesidir.
HSA’nın bu özellikleri gelecekte pek çok uygulama alanı bulacağının göstergeleridir.
12
3.2. Hücresel Sinir Ağlarının Mimarisi
Bu kısımda hücresel sinir ağı mimarisi, ayrıntılı olarak incelenmiştir.[4]
3.2.1 Temel Gösterilim ve Tanımlar
Tanım 1. Standart HSA Mimarisi
MxN standart HSA MxN boyutundaki dikdörtgen hücreler dizisinden oluşur. Burada
M: satırı N: sütunu gösterir. HSA’nın en küçük birimine hücre adı verilir. Hücreler
devrenin boyutuna göre iki boyutlu uzayda kartezyen koordinat sistemi düzeninde
yerleştirilmişlerdir. i. satırı, j. sütunundaki hücre C(i,j) ile ifade edilir. (i=1,2,3...M,
j=1,2,3...N) (Şekil 3.1)
sütunlar
1
s
a
t
ı
r
l
a
r
2
3
j
N
1
. . .
. . .
2
. . .
. . .
. . .
3
.
.
.
.
.
.
.
.
.
.
. . .
i
.
.
M
C(i,j)
. . .
.
.
.
.
. . .
.
.
. . .
.
.
. . .
Şekil 3.1. Standart HSA mimarisi
13
Uygulamalarda genellikle M  N alınsa da M  N de olabilir. Örneğin 5 x 512’ lik bir
HSA yapısı tarayıcı, faks yada fotokopi makinesi için uygundur.
Tanım 2. C(i,j) Hücresinin Etki Küresi
C(i,j) hücresinin r yarıçaplı etki küresi S r (i, j ) olmak üzere;

S r (i, j )  C (k , l )

max
1 k  M ,1 l  N
| k  i |, | l  j |  r 

koşulunu sağlayan tüm komşu hücreler topluluğuna denir. Buradaki r pozitif bir tam
sayıdır.
Şekil 3.2. (a) r=1 (3x3 komşuluk) , (b) r=2 (5x5 komşuluk), (c) r=3 (7x7 komşuluk)
Komşuluk r yarıçapı ile belirtilebildiği gibi (2r+1)x(2r+1) şeklinde de gösterilebilir.
Etki küresi içerisinde (2r+1)2 kadar hücre bulunmaktadır.
Komşuluk sistemi simetri özelliğine sahiptir.
C(k, l)  Sr (i, j )  C(i, j)  Sr (k , l )
Hücresel Sinir Ağı tanımlanırken, bir r değeri seçilir ( Çoğu uygulamada r =1 alınır). Bu
seçimden sonra her hücre sadece kendi komşuluk grubundaki hücrelerle doğrudan
bağlantılı bulunur. Yani sadece komşuları ile sinaptik bağlantıları mevcuttur.
14
Tanım 3. Bir Hücrenim Matematiksel Tanımı
En genel halde bir HSA’nda C(i,j) hücresinin matematiksel tanımlamaları şu şekildedir;
1
Durum Denklemi
dxij
dt
  xij 

C ( k ,l )S r ( i , j )
A(i, j; k , l ) y kl 

B(i, j; k , l )u kl  z ij
C ( k ,l )S r ( i , j )
Burada;
xij  R ; C(i,j) Hücresinin Durumu,
ykl  R ; Etki küresi içerisindeki hücrelerin çıkışları,
u kl  R ; Etki küresi içerisindeki hücrelerin girişleri,
zij  R ; Eşik değeri
A(i, j ; k, l) ; Geri Besleme Operatörü
B(i, j ; k, l) ; Giriş (Kontrol) Operatörü’dür
Şekil 3.3. Bir hücrenin blok diyagram gösterilimi
(3.1)
15
2
Çıkış Denklemi
yij  f ( xij ) 
1
1
xij  1  xij  1
2
2
(3.3)
Şekil 3.4. HSA’nın standart nonlinearitesi
HSA’na lineer olmama özelliğini veren bu fonksiyondur.
Tanım 3.3. Sınır Koşulları
Sınır hücrelerinin etki küresi içinde bulunup da M x N boyutundaki hücre dizisinin
dışında kalan hücrelerin durum ve çıkış değerleri koşuludur.
Tanım 3.4. Başlangıç Koşulları
Dizideki tüm hücrelerin ilk koşuludur.
xij(0) , i=1,2...M , j=1,2...N
16
3.3 Hücre Yapısı
HSA’nın bir hücresinin devre şeması Şekil 3.5 de görülmektedir.
Şekil 3.5. Bir Hücrenin devre şeması
Hücrede sırasıyla giriş, durum ve çıkışa karşı düşen u, x ve y düğümleri bulunur.
Hücrede bulunan elemanlar uij ; sabit gerilim kaynağı, Z; sabit akım kaynağı, C; lineer
kapasite , Rx ve Ry ;lineer dirençler, m komşu hücre sayısına eşit olmak üzere en fazla
2m adet Ixu(i,j;k,l) ve Ixy (i,j;k,l) bağımlı akım kaynağı, son olarak da Iyx lineer olmayan
gerilim kontrollü akım kaynağıdır. Komşu hücrelerle bağlantı, kontrol girişi vukl ve geri
besleme gerilimi v ykl ’nin ağırlıklı toplamları üzerine kurulmuştur.
I xy (i, j; k , l )  A(i, j; k , l )v ykl
,  C (k , l )  S r (i, j )
I xu (i, j; k , l )  B(i, j; k , l )vukl
,  C (k , l )  S r (i, j )
17
Hücredeki tek lineer olmayan eleman ise Iyx parça-lineer gerilim kontrollü akım
kaynağıdır.
I yx 
1
f (v xij )
Ry
Buradaki f(.) fonksiyonu Tanım 3.2’de verilen çıkış fonksiyonudur.
HSA’nın VLSI gerçeklemelerinde f(.) fonksiyonunun keskin karakteristiğini elde etmek
mümkün olmadığından daha yumuşak ve sürekli bir fonksiyon olan Sigmoid
fonksiyonu kullanılır. Bu değişim teoriyi etkilemez.
3.4 Zamandan ve Konumdan Bağımsız HSA
Eğer geri besleme A(i, j ; k, l), giriş B(i, j ; k, l) operatörleri ve zij eşik değeri, hücrenin
ağ içerisindeki yerleşiminden ve zamandan bağımsız olarak belirleniyorsa bu yapıya
‘Zamandan ve Konumdan Bağımsız HSA’ adı verilir. Uygulamaların neredeyse tamamı
bu yapıyı kullanır.
Bu durumda aşağıdaki ifadeleri yazabiliriz;

A(i, j; k , l ) y kl 

B(i, j; k , l )u kl 
C ( k ,l )S r ( i , j )
C ( k ,l )S r ( i , j )
 
A(i  k , j  l ) y kl
 
B(i  k , j  l )u kl
|k  i|  r |l  j | r
|k i| r |l  j | r
z ij  z
18
3.4.1 Klonlama Şablonu Gösterilimi
HSA’nın uygulamalarında en fazla 3x3 komşuluğun (etki küresi yarıçapı r =1)
bulunduğu, konumdan bağımsız yapı kullanılır. Bu uygulamalarda analizini
kolaylaştıracak bazı tanımlamalar yapılmıştır.
Geri besleme ( A(i-k , j-l) ), giriş ( B(i-k , j-l) ) operatörleri ve zij eşik değeri, hücrenin ağ
içerisindeki yerleşiminden bağımsız olduklarından, bir şablon şeklinde gösterilebilirler.
3.4.1.1. Geri Besleme Operatöründen ( A(i-k , j-l) ) Gelen Katkı

A(i, j; k , l ) y kl 
C ( k ,l )S r ( i , j )
 
|k i| r |l  j| r
A(i  k , j  l ) y kl 
 a1, 1 yi 1, j 1  a1,0 yi 1, j  a1,1 yi 1, j 1 
 a0, 1 yi , j 1  a0,0 yi , j  a0,1 yi 1, j 1 
 a1, 1 yi 1, j 1  a1,0 yi 1, j  a1,1 yi 1, j 1 

1
1
 a
k  1 l  1
k ,l
yi  k , j l 
a1, 1 a1,0
 a0, 1 a0,0
a1, 1 a1,0
a1,1
a0,1
a1,1
yi 1, j 1
 yi , j 1
yi 1, j 1
a1, 1 a1, 0
A  a0, 1 a0,0
a1, 1 a1, 0
yi 1, j
yi , j
yi 1, j
a1,1
a0,1
a1,1
yi 1, j 1
yi 1, j 1  A  Yij
yi 1, j 1
19
yi 1, j 1
Yij  yi , j 1
yi 1, j 1
yi 1, j
yi , j
yi 1, j
yi 1, j 1
yi 1, j 1
yi 1, j 1
Burada 3 x 3 boyutundaki A matrisi ‘Geri Besleme Klonlama Şablonu’ olarak
isimlendirilir.
Yij matrisi MxN boyutundaki çıkış görüntüsünün üzerinde 3x3 bir pencere gezdirilerek
elde edilebileceğinden ‘C(i,j) Hücresindeki Çıkış Görüntüsü’ olarak adlandırılır.
 sembolü nokta çarpımların toplamını ifade eder ve ‘Şablon Skaler Çarpım’ olarak
isimlendirilir. Ayrık matematikte bu işlem uzaysal konvolüsyona karşı düşer.
Bazı uygulamalarda A şablonu şu şekilde ikiye ayrılabilmektedir:
a00; A şablonunun merkez elemanını göstermek üzere (akl ; k=l=0);
_
A A  A ,
0
A 
0
0
0
0
0
a00
0
0
0
0
,
a1, 1
A  a0, 1
a1, 1
_
a1,0
0
a1,0
A0 ; Şablonun Merkez Bileşeni,
_
A ; Şablonun Çevre Bileşeni olarak adlandırılır.
3.4.1.2. Giriş (Kontrol) Operatöründen ( B(i-k , j-l) ) Gelen Katkı
Bir önceki bölümde yapılan işlemlere benzer işlemlerle;
a1,1
a0,1
a1,1
(3.4)
20

B (i, j; k , l )ukl 
C ( k , l )S r ( i , j )
 
| k  i |  r |l  j | r
B (i  k , j  l )ukl 
 b1, 1ui 1, j 1  b1, 0ui 1, j  b1,1ui 1, j 1 
 b0, 1ui , j 1  b0, 0ui , j  b0,1ui 1, j 1 
 b1, 1ui 1, j 1  b1, 0ui 1, j  b1,1ui 1, j 1 

1
1
 b
k  1 l  1
u
k ,l i  k , j  l
b1, 1 b1, 0
 b0, 1 b0, 0
b1, 1 b1, 0

b1,1
b0,1
b1,1
ui 1, j 1 ui 1, j
 ui , j 1
ui , j
ui 1, j 1 ui 1, j
b1, 1 b1, 0
B  b0, 1 b0, 0
b1, 1 b1, 0
U ij 
ui 1, j 1 ui 1, j
ui , j 1
ui , j
ui 1, j 1 ui 1, j
ui 1, j 1
ui 1, j 1  B  U ij
ui 1, j 1
b1,1
b0,1
b1,1
ui 1, j 1
ui 1, j 1
ui 1, j 1
3x3 boyutundaki B matrisi ‘Giriş (Kontrol) Klonlama Şablonu’ olarak isimlendirilir.
Uij matrisi MxN boyutundaki giriş görüntüsünün üzerinde 3x3 bir pencere gezdirilerek
elde edilebileceğinden ‘C(i,j) Hücresindeki Giriş Görüntüsü’ olarak adlandırılır.
Bazı uygulamalarda B şablonu şu şekilde ikiye ayrılabilmektedir.
b00; B şablonunun merkez elemanını göstermek üzere. (bkl ; k=l=0)
_
BB B , B 
0
0
0
0
0
0
b00
0
0
0
0
,
b1, 1 b1,0
B  b0, 1
0
b1, 1 b1,0
_
b1,1
b0,1
b1,1
21
B 0 ; Şablonun Merkez Bileşeni
_
B ; Şablonun Çevre Bileşeni olarak adlandırılır.
4. HÜCRESEL SİNİR AĞLARININ GÖRÜNTÜ İŞLEMEDE
KULLANILMASI
Bu bölümde Hücresel Sinir Ağları’nın görüntü işlemede kullanılması teorik ve pratik
olarak ayrıntılı olarak incelenecektir.
4.1 Giriş
Günümüzde işaret işlemenin diğer alanlarında da HSA ile uygulamalar yapılıyor olsa
da, görüntü işleme uygulamaları ilk ve en önemli kısımdır.
Hücresel ağlar iki boyutlu yapılarından dolayı iki boyutlu görüntüler üzerinde özellik
ayrıştırma, gürültü yok etme, hareket sezme gibi pek çok alanda kullanılır.
Görüntüdeki her bir piksel, hücresel ağdaki her bir hücreye karşı düşer. Görüntü,
hücresel ağın başlangıç konumuna [-1,1] sürekli aralığında gerilim seviyeleri ile
verilebildiği gibi hücresel ağın girişine kontrol akımları ile de verilebilir. Ağ dinamik
yapısını belirleyen küme kalıpları ile çalışıp, bir denge durumuna yakınsadığında sonuç
görüntü; durumlardan veya çıkışlardan elde edilir.
Hücresel ağlarda her kararlı denge durumu iki boyutlu bir görüntüye karşı düşer. Karalı
denge durumlarının sınırlı sayıda olduğunu bildiğimize göre, hücresel ağların sürekli
[-1,1]MxN görüntü uzayı ile sınırlı sayıda bipolar görüntüden oluşan bir sonuç uzayı
22
arasında lineer olamayan bir dönüşüm gerçekleştirdiğini söyleyebiliriz. Dönüşüm
dinamik olduğundan sonucun varlığı kadar dönüşümün şekli de önemlidir. Geçiş
durumu devreyi başlangıç durumundan kararlı bir denge noktasına götüren yörüngedir.
Her kararlı denge durumu ise bir yörüngenin limit noktasında bulunur. Bu
özelliklerinden dolayı kararlı sistem denge durumlarına etki havuzları denmektedir.
64x64 boyutundaki görüntülerin de işlenmesini olanaklı kılan HSA yapısının analojik
devre teknolojisi kullanılarak üretilmiş cipi şu an mevcut olsa da boyuta getirdiği
sınırlamalar ve maliyet yüksekliği araştırmaların çoğunu bilgisayarlarla hazırlanmış
devre simülatörleri veya özel uygulama programları yapıp uygulamaya yönlendirmiştir.
Bu bölümde; MATLAB 6.0 programı kullanılarak hem lineer olmayan hem de lineer
HSA
için
farklı
küme
kalıpları
kullanılarak
görüntü
işleme
simülasyonu
gerçekleştirilmiştir.
4.2 Lineer HSA ile Görüntü İşleme
C(0,B,z) ileri beslemeli ( geri besleme yok) HSA yapısını, z=0 olduğu durum için
inceleyelim.
B şablonunun (2σ+1)x(2σ+1) boyutta olduğu kabulü ile (σ=r) Eşitlik 3.2 ile tanımlanan
durum denklemi şu şekilde yazılabilir;

x ij   x ij 


 b
k ,l
u i  k , j l
k , l
u i  k , j l
k   l  


  x ij  
 b
k  l 

  x ij  

h
k  l 

x ij   x ij 
k ,l


k 
l 
u i  k , j l
  h
k ,l
u i  k , j l
(4.1)
23
hk , l  b k ,  l
,
(4.2)
k , l    ,  (    1),...  1, 0 , 1 ....(   1), 
hk,l Eşitlik 4.2 ile tanımlandığına göre, H şablonu B şablonunun merkeze göre simetriği
olacaktır.
Yani;
b1, 1 b1,0
B  b0, 1 b0,0
b1, 1 b1, 0
b1,1
b0,1
b1,1
b1,1
, H  b0,1
b1,1
b1,0
b0, 0
b1, 0
b1, 1
b0, 1
b1, 1
B’nin simetrik olduğu -ki genelde simetriktir-durumlarda:
H=B
olacaktır.
Eşitlik 4.1’deki çift toplamın, iki boyutlu konvolüsyon ifadesi olduğu görülmektedir.
Bilindiği gibi konvolüsyon işlemi ‘*’ işareti ile gösterilmektedir.
O halde;
H  U ij 


 h
k   l  
u
k ,l i  k , j  l

x ij   x ij  H  U ij
(4.3)
H ve Uij iki matris olmasına karşın konvolüsyonları sabit bir sayıdır. Bu durumda
Eşitlik 4.3’deki diferansiyel ifadenin çözümü şu şekilde elde edilir;
xij (t )  xij (0)e  t  ( H  U ij )(1  e  t ) , t  0
Denklemin t   için çözümü incelendiğinde
xij ()  lim xij (t )  H  U ij
t 
(4.4)
24
Bulunan denklem çok önemli bir sonuçtur ve aşağıdaki teoremin ispatıdır.
Teorem 4.2.1
Her ileri beslemeli (C(0,B,z)) HSA kararlıdır ve herhangi bir xij(0) başlangıç koşulu için
Eşitlik 4.3’deki xij(t)durumu B şablonunun simetriği olan H ve sabit giriş görüntüsü
Uij’nin konvolüsyonu sonucundaki sabite yakınsar.
Teorem 4.2.1’de ilk bakışta çok doğru gelebilecek bir soru gizlidir. Soru şudur; Şayet
HSA’daki her bir hücrenin t   için durumu -ağın tümü düşünüldüğünde çıkış
görüntüsü- halihazırdaki DSP’ler kullanılarak yapılabilecek bir konvolüsyon işlemi ile
ve bunun alacağı kısa süre kadar sonra elde edilebiliyorsa HSA’nı tercih etmemin
nedeni nedir?
Sorunun cevabı HSA’ da t   ’un ne ifade ettiğidir. HSA’nın analog yapısı için,
τ;zaman sabiti olmak üzere;
t    t  5
Dolayısıyla HSA ile nano (10-9) saniyeler mertebesinde görüntünün işlenmesi
tamamlanmış olacaktır. Bu kadar hızlı sonuç verebilecek bir DSP mevcut mudur?
4.2.1 Lineer HSA İle Görüntü İşleme Uygulaması
Bu bölümde yukarıda teorisi anlatılan HSA’nın lineer görüntü işlemede kullanılmasına
bir örnek verilmiş ve teorik olarak verilen ifadeler uygulama ile gösterilmiştir.
Uygulamada MATLAB 6.0 program dili kullanılmış ve program kodları her uygulama
adımı için ayrı ayrı verilmiştir. (Ek.1)
Eşitlik 3.2 ile verilen HSA’nın durum denklemine Euler İleri Yaklaşıklığı uygulanarak
diferansiyel denklem fark denklemi haline getirilir. (Bu konuda ayrıntılı bilgi için bkz.
Bölüm 5.3).
25
Uygulamada kullanılan küme kalıbı ‘kenar ayıracı’ olarak isimlendirilir ve aşağıda
tanımlanmıştır.
C(A,B,z);
1 1 1
0 0 0
A 0 0 0
0 0 0
,
B  1
8
1
,
z  1
1 1 1
4.2.1.1 Uygulama Adımları
Adım 1. Giriş olarak 64 x 64 boyutlarında bir görüntüsü kullanılmıştır.
Şekil 4.1. Giriş görüntüsü (64x64)
Adım 2. Euler İleri Yaklaşıklığı kullanılarak fark denklemi haline getirilen HSA durum
denklemi, kenar ayıracı küme kalıbı denklemde yerine konularak programa
aktarılmıştır.
Adım 3.Çıkış görüntüsü başlangıç anından durağan hale gelinceye kadar farklı t
anlarında izlenmiştir.
26
Burada kullandığımız HSA lineerliğinden dolayı her bir hücrenin çıkışı aslında o
hücrenin durumudur.
yij  f ( xij )  xij
Başlangıç koşulu olarak ( xij(0) ) giriş görüntüsünün kendisi alındığı gibi tüm piksel
değerleri sıfır olan bir görüntüde alınabilir. Başlangıç koşulu olarak giriş görüntüsünün
kendisinin alınması daha kısa süre sonunda sonuca ulaşılmasını sağlar.
Çıkış görüntüsünün zamanla değişimi Şekil 4.2’de görülmektedir.
(a)
(b)
(c)
(d)
(e)
(f)
27
Şekil 4.2. Farklı t anlarındaki çıkış görüntüleri (a) t=0 sn (başlangıç hali) , (b) t=0.3 sn
(c) t=0.5 sn , (d) t=0.8 sn , (e) t=1 sn , (f) t=2 sn
Şekil 4.2’deki çıkış görüntülerine bakıldığında zamanla görüntüdeki değişim azalmış ve
belli bir süre sonra değişim ortadan kalkmıştır. t=1 sn.de ve t=2 sn.deki görüntülerde bir
değişim yoktur.
Giriş görüntüsü ve çıkış
görüntüsü incelendiğinde açıktır ki yapılan işlem giriş
görüntüsündeki kare şekillerin yalnız kenarlarının seçilmesidir. Zaten bu küme kalıbı da
bu özelliğinden dolayı kenar ayıracı olarak isim alır. Kenar ayıracı küme kalıbı sadece
siyah-beyaz giriş görüntüsüne uygulanabilir. Gri yada renkli ölçekli bir giriş görüntüsü
için çıkış görüntüsünde kenar ayırma işlemi belli bir oranda yapılsa da istenmeyen
bozulmalarla karşılaşılır. Gri ölçekli görüntüler için de kenar ayırma işlemini
gerçekleştiren küme kalıbı mevcuttur.
Komşu hücreler için giriş-çıkış arasındaki piksellerin değişim kuralları şu şekilde
verilir;
Sabit Giriş (uij)

Durağan Haldeki Çıkış ( yij(∞) )
Beyaz piksel
 Beyaz (komşu hücrelerin renginden bağımsız)
Siyah piksel
 Beyaz (bütün komşu hücreleri siyah ise)
Siyah piksel
 Siyah (en az bir komşusu beyaz ise)
Siyah, Gri veya Beyaz piksel  Gri (şayet bütün komşuları gri ise)
Adım 4. Eşitlik 4.1 ve Eşitlik 4.3’de giriş görüntüsü ile giriş klonlama şablonu
arasındaki işlemin ayrık uzayda konvolüsyona denk düştüğü gösterilmişti. Adım 3’de
bu işlem denklemdeki çift toplam ifadesi ile gerçeklenmiştir. (Bkz. Ek 1.2). Bu adımda
işlem Eşitlik 4.3’deki şekliyle yapılmıştır. Konvolüsyon MATLAB ‘conv2’ komutu
kullanılarak gerçeklenmiştir.
İşlem sonunda elde edilen durağan hal çıkış görüntüsü Şekil 4.3’de verilmiştir.
28
Şekil 4.3. Konvolüsyonlu denklem çözümü ile elde
edilen durağan hal çıkış görüntüsü (t=1 sn)
Adım 5. Bu adımda Teorem 4.2.1’de ifade edilen ve matematiksel olarak ispatlanan;
xij ()  H  U ij
eşitliğinin doğruluğu uygulamada görülmeye çalışılmıştır. B şablonunun simetrik
olmasından dolayı H=B ’dir. Bu durumda durağan haldeki çıkış görüntüsü B şablonu ile
giriş görüntüsünün konvolüsyonu olmalıdır. (Program kodu Ek 1.5)
Elde edilen çıkış görüntüsü;
Şekil 4.4. y  x()  H U
sonucu oluşan çıkış görüntüsü
Bilinen görüntü işleme yöntemi ile elde
edilen çıkış görüntüsü HSA durum
denklemlerinin çözümü ile elde edilen çıkış görüntüsü ile aynı olduğu görülmüştür.
Teorem 4.2.1’in ispatı uygulamada da gösterilmiştir.
29
4.3 Standart (Lineer Olmayan) HSA ile Görüntü İşleme Uygulaması
4.2.1 Bölümünde lineer HSA yapısı ile kenar ayıracı küme kalıbı kullanılarak bir
uygulama gerçeklenmişti. Yapının lineer olmasından dolayı eşik aktivasyon fonksiyonu
kullanılmamıştı. Uygulamada kullanılan küme kalıbında geri besleme şablonunun tüm
elemanlarının 0 olması HSA yapısının ileri beslemeli halde olmasını sağlamıştı.
Bu bölümde standart HSA yapısı ile bir uygulama yapılmıştır. Standart HSA yapısında
durumlar ile çıkış arasındaki ilişki eşik aktivasyon fonksiyonu ile tanımlanır ve bu
yüzden ağ lineer değildir.
Uygulamada kullanılacak küme kalıbı ‘köşe ayıracı’ olarak isimlendirilir ve C(A, B, z)
şu şekilde tanımlanır.
1 1 1
0 0 0
A 0 2 0
, B  1
0 0 0
8
1
, z4
1 1 1
4.3.1 Uygulama Adımları:
Adım 1. Giriş görüntüsü olarak bir çizim programında hazırlanmış 64x64 boyutundaki
Şekil 4.5’deki görüntü kullanılmıştır. Görüntü MATLAB ‘imread’ komutu ile bir matris
haline dönüştürülür.(Prog. Kod Ek 2.1)
Şekil 4.5. Giriş görüntüsü (64x64)
30
Adım 2. Uygulamada kullanılan köşe ayıracı küme kalıbı matrisler halinde programa
aktarılmıştır.
Adım 3. 4.2 Bölümü’nde ispatlandığı gibi şablonlarla (A,B) görüntüler (U, Y)
arasındaki işlem uzaysal konvolüsyona karşı düşer. Bu adımda işlemler hazır
konvolüsyon komutu kullanılarak yapılmıştır. Durum denklemi Euler İleri Yaklaşıklığı
kullanılıp fark denklemi haline getirilip programa aktarılmıştır.( Prog. Kodu Ek 2.3)
Adım 4. Çıkış görüntüsü HSA çıkış denklemi ile bulunacaktır. En genel halde çıkış
,durumlara eşik aktivasyon fonksiyonu ile bağlıdır.
yij  f ( xij ) 
1
1
xij  1  xij  1
2
2
Başlangıç koşulu olarak ( xij(0) ) giriş görüntüsünün kendisi alındığı gibi tüm piksel
değerleri sıfır olan bir görüntüde alınabilir. Giriş görüntüsünün kendisinin alınması daha
kısa sürede sonuca ulaşılmasını sağlar.
Çıkış görüntüsünün zamanla değişimi Şekil 4.6’da görülmektedir.
(a)
(b)
(c)
31
(d)
(e)
(f)
Şekil 4.6. Farklı t anlarındaki
çıkış görüntüleri (a) t=0 sn
(başlangıç hali) , (b) t=0.1 sn
(c) t=0.3 sn , (d) t=0.5 sn , (e)
t=1 sn , (f) t=2 sn
Giriş görüntüsüne ve durağan haldeki çıkış görüntüsüne bakıldığında görülecek ki giriş
görüntüsündeki karelerin köşeleri seçilmiş ve çıkışa aktarılmıştır.
Komşu hücreler için giriş ve çıkış görüntülerindeki piksellerin değişim kuralları şu
şekilde verilir;
Sabit Giriş (uij)
Beyaz piksel
Siyah piksel



Durağan Haldeki Çıkış ( yij(∞) )
Beyaz (komşu hücrelerin renginden bağımsız)
Siyah (sadece ve sadece 3 yada daha az siyah
komşu hücreye sahipse)
Köşe ayıracı küme kalıbı sadece siyah-beyaz giriş görüntülerine uygulanır ve çıkış da
siyah-beyaz özellikte bir görüntü elde edilir.
5. LİNEER HSA SİMÜLASYONUNUN MATEMATİKSEL
KARŞILIĞI
Analog sistemler şayet yapılarında kondansatör ve bobin gibi dinamik bir elemanlar
bulunduruyorlarsa diferansiyel denklemler -durum denklemleri- ile ifade edilirler.
Analog bir sistemin sayısal sistem karşılığı bulunmak istendiğinde diferansiyel
denklemleri fark denklemleri haline getirmek gerekir ki bu dönüşüm çeşitli yaklaşıklık
yöntemleri ile gerçeklenir.
32
Analog HSA’daki hücrelerin yapısındaki kondansatörden dolayı her hücrenin bir durum
denklemi mevcuttur. Ağın simülasyonu için diferansiyel haldeki durum denklemi fark
denklemi haline getirilmelidir.
Bu bölümde yaklaşıklık yöntemlerinden Euler İleri Yaklaşıklığı diferansiyel
denklemden fark denklemine geçiş için kullanılmıştır. Lineer HSA yapısı için bu
yaklaşıklıkta seçilecek en ideal zaman adımı değeri belirlenmiştir. Belirlenen en ideal
zaman adımının fark denkleminde yerine konulması ile oluşacak yinelemeli
denklemlerin, lineer denklem sistemlerinin çözümünde kullanılan Jacobi ve GaussSeidel yöntemlerinde elde edilen yinelemeli denklemlere benzerliği gösterilmiştir.
5.1 Giriş
Hücresel Sinir Ağı yapısı ile görüntü işleme uygulamalarının bir çoğu siyah-beyaz
görüntüleri kullanır. Bunun nedeni ağın yapısının lineer olmamasından kaynaklanır.
Standart HSA yapısında hücrelerin her birinin çıkış değeri sonuçta bir doyuma görüntüdeki siyah, beyaz renge- ulaşacaktır. Bunun olmasını sağlayan eşik aktivasyon
fonksiyonudur. Bazı özel uygulamalarda durum değerlerinin, fonksiyonun lineer bölge
aralığında kalması nedeniyle çıkışta gri renklerde görülebilmektedir. Çıkış değerlerinin,
durum değerlerinden alınması yani parça-lineer haldeki eşik aktivasyon fonksiyonunun
sürekli-lineer hale getirilmesi ile çıkış değerlerinin, tüm değerleri alabilmesi sağlanır ki
bu lineer HSA yapısına karşılık düşer. HSA’daki bu tip değişik uygulamaları analog
yapıdaki donanım kısmında denemek oldukça güçtür. Bunun için uygulamalar öncelikle
yazılımda gerçekleştirilir.
HSA diferansiyel denkleminin ayrık zamanlı bir sisteme aktarılabilmesi için çeşitli
yaklaşıklık metotları kullanılır. Analog yapının hızından dolayı kullanılan yaklaşıklık
metotlarının hızı da önem kazanmaktadır. Yaklaşıklık yöntemlerinden en hızlısı ‘Euler
İleri Yaklaşıklığı’ yöntemidir.[5].
33
Simülasyonun hızı; yaklaşıklıkta kullanılan zaman adımının değeri ile doğrudan
ilgilidir. Zaman adımının, simülasyonun hızı için en uygun değeri lineer HSA için
bulunabilmektedir. [5]
Öncelikle Lineer HSA yapısı ve denklemleri incelenecektir.
5.2 Lineer HSA Denklemleri
En genel haldeki ağ denklemlerinde lineerlik; çıkışın durumlara eşit alınması ile
sağlanır. Bu durumda çıkış denklemi aşağıdaki gibi olacaktır.
yij  f ( xij )  xij
Lineer HSA’nın durum denklemi Eşitlik 5.1’de verilmiştir.
dxij
dt
  xij 

C ( k ,l )S r ( i , j )
A(i, j; k , l ) xkl 

B(i, j; k , l )u kl  z ij
(5.1)
C ( k ,l )S r ( i , j )
HSA’nın lineer, konudan bağımsız ve r komşuluk kabulü ile durum denklemi şu
şekilde yazılabilir. (σ = r)

x ij 

d x ij
  x ij  
dt
k  

 A(k , l ) xik , jl 
l  


  B ( k , l )u
k   l  
i  k , j l
 zij
(5.2)
Durum değerlerinin zamanla değişmesinden dolayı durumlar diferansiyel denklem ile
ifade edilir. Başlangıç değerleri -ilk koşullar- belli olan bu tip diferansiyel denklemlerin
çözümünde nümerik yaklaşıklık yöntemleri kullanılır. Yaklaşıklık yöntemleri
diferansiyel haldeki denklemleri fark denklemleri haline getirir. Euler İleri Yaklaşıklığı
bu yöntemlerden biridir.
34
5.3 Euler İleri Yaklaşıklığı
Euler İleri Yaklaşıklığı; integralin dikdörtgen yaklaşıklığı ile hesaplanmasına karşı
düşer.
Şekil 5.1. İntegralin dikdörtgen yaklaşıklığı ile hesaplanması

t1  t
t1
x (t ) 
x (t )dt  t x (t1 )
dx(t ) x(t  t )  x(t )

dt
t
Diferansiyel haldeki durum denklemini fark denklemi haline getirmek için Eşitlik
5.2’ye Euler İleri Yaklaşıklığı’nı uygulanırsa Eşitlik 5.3 elde edilir.

d xij (t) xij (t  t)  xij (t)

  xij (t)  
dt
t
k 

A(k,l)xik, j l (t) 
l 

 B(k,l)u
k  l 
Denklem zamanda ayrık hale getirilirse eşitlik 5.4 elde edilir.


x ij (nTs )  x ij (t )
, t  Ts
t  nTs

i  k , j l
 zij (5.3)
35

x ij (n  1)Ts   x ij (n)
  x ij (nTs )  
Ts
k 


 A(k , l ) x
i  k , j l
l 

  B(k , l )u

k  l 
 
x ij ( n  1)Ts   (1  Ts ) x ij (nTs )  Ts  
 k  

i  k , j l

 A(k , l ) x
i  k , j l
l 

k 
l 
 zij
(nTs ) 

  B(k , l )u
(nTs ) 
i  k , j l

 zij 

(5.4)
5.4 Optimum Zaman Adımının Belirlenmesi
Zaman adımı değeri simülasyonun hızını etkileyen önemli etkenlerdendir. Bu bölümde
durum denklemine Euler İleri Yaklaşıklığı uygulanarak elde edilen fark denklemi için
(Eşitlik 5.4) optimum zaman adımı değeri araştırılmıştır.
En çok kullanılan r =1 komşuluk için A şablonu Eşitlik 3.4’de şu şekilde tanımlanıştı.
_
A A  A ,
0
A 
0
0
0
0
0
a00
0
0
0
0
,
a1, 1
A  a 0 , 1
a1, 1
_
a1,0
0
a1,0
a1,1
a0,1
a1,1
Bu durumda denklem aşağıdaki şekilde yazılabilir;
x ij (n  1)Ts   (1  Ts  Ts a00 ) x ij (nTs ) 
1
1

 1 1 _
 Ts   A(k , l ) xi  k , j l (nTs )    B(k , l )ui k , j l  zij 
k 1 l  1
k 1l 1

Eşitlik 5.5 n’nin farklı değerleri için incelenirse;
(5.5)
36
n  0;
1
1
 1 1 _

xij Ts   (1  Ts  Ts a 00 ) x ij (0)  Ts    A(k , l ) xi  k , j l (0)    B(k , l )u i  k , j l  z ij 
k  1 l  1

k  1l  1
n  1;
1
1
 1 1 _

xij 2Ts   (1  Ts  Ts a 00 ) x ij (Ts )  Ts    A(k , l ) xi  k , j l (Ts )    B ( k , l )u i  k , j l  z ij 
k  1 l  1
 k  1l  1

1
1
1
1 _


 (1  Ts  Ts a 00 ) 2 x ij (0)  Ts (1  Ts  Ts a 00 )    A( k , l ) xi  k , j l (0)    B ( k , l )u i  k , j l  z ij  
k  1 l  1
 k  1l  1

1
1
 1 1 _

 Ts    A(k , l ) xi  k , j l (Ts )    B ( k , l )u i  k , j l  z ij 
k  1 l  1
 k  1l  1

n  2;
1
1
1 1 _

xij 3Ts   (1 Ts  Ts a00 ) xij (2Ts )  Ts   A(k, l)xik , jl (2Ts )   B(k, l)uik , jl  zij 
k 1 l 1
k 1l 1

1
1
1 1 _

 (1 Ts  Ts a00 )3 xij (0)  Ts (1 Ts  Ts a00 )2   A(k, l)xik , jl (0)   B(k, l)uik , jl  zij  
k 1 l 1
k 1l 1

1
1
1 1 _

 Ts (1 Ts  Ts a00 )   A(k, l)xik , jl (Ts )   B(k, l)uik , jl  zij  
k 1 l 1
k 1l 1

1
1
1 1 _

 Ts   A(k, l)xik , jl (2Ts )   B(k, l)uik , jl  zij 
k 1 l 1
k 1l 1

En genel halde denklem şu şekilde yazılabilir.
xij (n  q)Ts   (1Ts Tsa00)q xij (nTs ) 
1
1
 q1 
1 1 _

Ts   (1Ts Tsa00)m  A(k,l)xik, jl (q m1)Ts   B(k,l)uik, jl  zij    (5.6)
k1 l1
 m0 
k1 l1
  
Eşitlik 5.6’da n=0 alınıp q’nun değişimi elde edilecek ifadeler ile Eşitlik 5.5’de n’nin
değişimi ile elde edilecek ifadelerle aynıdır.
Bilindiği gibi x ij () sabit bir değerdir.(Teorem 4.2.1) Bunun sağlanması için Eşitlik
5.6 ‘da
(1  Ts  Ts a00 )  1
37
şartı sağlanmalıdır.
(1  Ts  Ts a00 )  1
1 (1Ts Tsa00)  0
(1)
0  (1Ts Tsa00) 1
(2)

(1) durumu için kararlı bir hal gözlenmemektedir.[5] (2) durumu kabulü ile inceleme
yapılırsa;
0  Ts 
Ts  0
1
1  a00
(5.7)
olduğundan;
a00  1
olmalıdır.
Ts´nin büyük değerler alması, sonuca ulaşmayı hızlandıracağın Ts´nin alabileceği en
büyük değeri -ki bu değer optimum değer olacaktır- alması istenir. Bu durumda
Eşitsizlik 5.7’den;
Tsopt 
1
1  a00
( a00  1)
bulunacaktır.
Zaman adımının en uygun değeri Eşitlik 5.5’de yerine konulursa Eşitlik 5.22 elde edilir.
38


  1 

(a00  1) xij (nTsopt ) 
xij (n  1)Tsopt  1  
  a00  1 

1
1 _
1
1


 Tsopt   A(k , l ) xik , jl (nTsopt )    B(k , l )uik , j l  zij 
k 1 l 1
k 1l 1



1
1
1 1 _

xij (n 1)Tsopt  Tsopt   A(k, l)xik , jl (nTsopt )   B(k, l)uik , jl  zij  (5.8)
k 1 l 1
k 1l 1

Aynı işlem Eşitlik 5.6 için yapılırsa, Eşitlik 5.9 elde edilir.

xij (n  q)Tsopt

q
  1 

(a00 1) xij (nTsopt ) 
 1
  a00 1



1
1
1 1 _

Tsopt  A(k,l)xik, jl (q 1)Tsopt  B(k,l)uik, jl  zij  
k1 l1
k1 l1

m
q1  

1
1
 1 1 _
1 

 
(a00 1)  A(k,l)xik, jl (q m1)Ts   B(k,l)uik, jl  zij   
Tsopt  1
 k1 l1
k1 l1
  
m1   a00 1






1
1
 1 1 _

x ij (n  q)Tsopt  Tsopt    A(k , l ) xi  k , j l (q  1)Tsopt    B(k , l )u i  k , j l  z ij  (5.9)
k  1 l  1
 k  1 l  1

En genel formülümde n=0 için işlemlerin yapıldığı belirtilmişti. Bu durumda Eşitlik 5.9
şu hali alacaktır.

x ij qTsopt



1
1
 1 1 _

 Tsopt    A(k , l ) xi  k , j l (q  1)Tsopt    B(k , l )u i  k , j l  z ij  (5.10)
k  1 l  1
 k  1 l  1

39
Eşitlik 5.8 ve Eşitlik 5.10 ifadelerinden şu sonuç çıkartılabilmektedir; Herhangi bir
hücrenin bir sonraki adımdaki durum değeri; kendisine komşu hücrelerin bir önceki
adımdaki durum değerlerine, sabit giriş görüntüsü ve eşik değerine bağlıdır. Burada
giriş görüntüsü zamanla değişmediğinden, eşik değeri de sabit olduğundan bu iki
terimin toplamı her hücrenin durumuna eklenecek yeni bir sabittir. O halde her bir
hücrenin yeni durumu komşu hücrelerinin bir önceki durumdaki değerlerinden
hesaplanabilmektedir. Bu sonuç lineer denklem sistemlerinin çözümünde kullanılan
yinelemeli yöntemlerde de benzer şekilde ifade edilebilmektedir. Bu benzerlik Bölüm
5.5’de incelenmiştir.
Download