Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
17.05.2014
Sayfa 1
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
Curve Fitting with RBS Functional Networks
RBS fonksiyonel ağı ile eğri uygunluğu
Andr´es Iglesias, Akemi G´alvez
Department of Applied Mathematics and Computational Sciences, University of Cantabria,
Spain
{iglesias,[email protected]
ÖZET
Bu makale de ayrık eğri uygunluğu problemini incelenmiştir. Bu literatürde çok önem verilen
klasik bir problemdir. Son yıllarda bu tür uygulamalarda yapay zekâ tekniklerinin kullanımı
da artmıştır. RBS fonksiyonel ağı, NURBS yüzeylerinin fonksiyonel yapısını kullanan
b-spline ağırlıklı fonksiyonel ağ tabanlı bir uygulamadır. Bu makalede RBS fonksiyonel ağı
kullanılarak eğri uygunluğu hesaplanmıştır. Öncelikle detaylar anlatılmış daha sonra bu
metodun yüksek performansı bir örnek üzerinde anlatılmıştır.
1. GİRİŞ
Son 10 yılda, Çok boyutlu karmaşık veri noktalarından eğri uydurma literatrüde çok klasik
bir uygulamadır. Şimdiye kadar çok farklı alanlarda uygulamaları yapılmış olan bu problem
son yıllarda yapay zeka teknikleri kullanılarak yapılan çözümleri artmaktadır. İnsan
beyninden etkilenen yapay sinir ağları metodu ile datalardan öğrenme kabiliyeti
kullanılmıştır. YSA çok popüler olmasına rağmen bazı yönleriyle kısıtlamaktadır. Bu
kısıtlamaları gidermek üzere farklı yapay zeka teknikleri de kullanılmıştır. Bunun sonucunda
da fonksiyonel ağ kavramı oluşmuştur. Yani FA, YSA’dan türemiş ve sinirsel fonksiyonlar
yerine scaler ağırlıklar alan bir metottur.
Açıkça görülmektedir ki eğri uydurma problemi, en uygun uygunluk fonksiyonu seçilirse daha
verimli olur. Diğer bir deyişle logaritmik bir fonksiyon kullanan elips ile veya sınırlandırılmış
trigonometrik fonksiyonlarla mı çözüleceği karışıktır. En popüler çözüm sınırlandırılmış
trigonometrik fonksiyonlarladır. Bu fonksiyonun özellikleri süreklilik, değişkenlik,
hesaplaması kolay, farklılaştırılabilmesi ve bütünleşmektir.
Buna rağmen yüksek değerlikli polinomlar, küçük değerlikli polinomlara göre daha
dalgalıdır. Ayrıca polinomların katsayıları için de bir geometrik yorum yapılamaktadır. Bu
NURBs eğrisi için büyük bir avantajdır. Çünkü NURBs birçok alanda standart bir “de facto”
oluşturmaktadır. Bu makalede eğri uydurma problemini nurbs eğrilerine uydurarak
gerçekleştirilmektedir. Bu işlem RBS (Rational B-spline) fonksiyonel ağı yardımıyla
yapılmaktadır.
2 Curve fitting problem
Çok boyutlu verilerden oluşan noktalarımız var :
Ve eğri uydurma parametrik eğri vektör değerleri ise : C(t) =
Ci : vektör katsayısı
fi(t) blending fonksiyon
C(t) and t ise parametrik eğrinin parametreleri
Bu makalede vektörler koyu renkle yazılmıştır.
17.05.2014
Sayfa 2
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
Γ Kartezyen komponenti için hatanın (squared errors) minimizasyon fonksiyonu :
Fakat bizim her veri noktası ile ortak bir parametre değerine tj, ihtiyacımız vardır.
Qj, j = 1, . . . , m.
Cγ i , i = 0, . . . , n, katsayı bilgisi veri noktaları tarafından tanımlanmalı
1. İlk olarak, dikkatlice seçilmiş uygun bir uydurma fonksiyonu tespit edilmeli
2. Düzenli bir data noktalarının parametrelendirme olmalı
3. lineer kombinasyon katsayısı alınacak
3 NURBS curves
U = {u0, u1, u2, . . . , ur−1, ur ……………………… knot vektörü
Nurbs formülü
Knot fonksiyonu olmak üzere NURBs eğrisi şu şekilde hesaplanır:
Pi ler kontrol noktaları
Ni,k lar yukarıdaki formülle hesaplanmış temel fonksiyonu
Wi ağırlık değerleri
t [0-1] aralığında bir değer
r = k + n.
Knot vektörü iki şekilde gruplandırılabilir :
17.05.2014
Sayfa 3
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
1. uniform knot vector: her bir knot sadece bir sefer görünür ve birbirini izleyen knotlar
arasındaki uzaklık eşittir.
2. non-uniform knot vectors: içteki knot tek sefer görünmesine rağmen sonuncu knot
defalarca tekrarlanır. Bspline eğrilerinde genellikle kontrol noktaları arasındaki ara
değeri bulunmaz ama non-uniform(periyodik) knot vektörlerde interpolasyon görülür.
Bu makalede non-uniform knot vector leri kullanılmıştır.
4 Functional Networks
Bu bölümde FA dan ve FA ile YSA arasındaki faklardan bahsedilecektir.
4.1 Components of a functional network
Şekil-1 2 gerçel sayı arasındaki FA yı göstermektedir.
F fonksiyonu
Bu formülün genel olarak çözümü :
FA nın bazı katmanları
1. depolama ünitesinin bazı katmanları
a. İlk katman giriş unitesidir. Bu örnekte x1 ve x2 giiriş katmandır.
b. İkincisi depolama ünitesinin ara katmanı. Bunlar nöron değil ara bilgileri
depolayan birimlerdir. Örnekte siyah küçük dairelerle gösterilen iki tane
ara birim var. Bu katman ise sonuç, yani geri dönmüş değerini verir.
Örnekte u = f−1(f(x1) + f(x2)).
2. Bir veya daha fazla katmanlı nöron ve hesaplama uniti
Bir nöron bir katmanda hesapladığı değerin sonuç değerini diğer katmana giriş değeri
olarak verir. Örnekte 3 katmanlı bir nöron var: ilki fonksiyonların çıkışını veriri,
ikincisi girişlerin toplamını verir sonuncusu ise ilk katman sonucunu diğerinin girişine
verirken tersini alır.
3. Yönetim linkleri kümesi: örneğin bu örnekte FA çok katmanlı bir ağdır.
17.05.2014
Sayfa 4
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
4.2 Differences between functional and neural Networks
Bu bölümde FA ile YSA arasındaki farktan bahsedilmektedir. Fa’nın avantajları
anlatılacaktır.
1. YSA da her bir nöron bir çıkış değeri döndürür y =f(_wikxk)
x1, x2, . . . , xn girişler. YSA da tek bir argümanı vardır oysa FA bir çok argümanı olabilir
şekil-2 deki gibi.
2. YSA da tek değişkenlidir ama FA çok değişkenli olabilir. (multivariate.)
3. Verilen bir FA da ağ fonksiyonu farklı olabilir ama YSA da hepsi aynıdır.
4. YSA da ağırlıklar vardır ve bunlar öğrenilmelidir ama FA da ağırlık yoktur.
5. YSA da nöron çıkışları farklıdır, ama FA da ise rastlantısal değerler olabilir.
Bu özellikler göstermektedir ki FA YSA ‘dan daha ilginç olanaklar göstermektedir. Bu
demektir ki bazı problemler FA ile çözümü YSA dan daha verimli olabilir.
5. RBS functional Networks
Bu makalede yeni bir FA metodundan bahsedilmektedir. İş akış şeması şekil-3 de gösterildiği
gibidir. İ ve t parametleri verilmiştir. Temel fonksiyon Nik hesaplanıyor. Ve daha sonra da
wiPiNi,k(t) (i = 0, . . . , n). Hesaplanıyor. Vektörel ve skaler olmak üzere iki tane farklı zaman
operatörü düşünülmüştür. Şekil-3 e bakıldığında diğer bölümlerle ilk 3 katmanının aynı
olduğu görülmektedir. Bu da göstermektedir ki RBS paralelizasyona uygundur.
17.05.2014
Sayfa 5
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
Çalışmamız
Bir Sonraki bölümümüzde NURBS eğrilerinin eğri uydurmaya en iyi aday olduğunu
anlatmaktadır. Daha önceki bölümlerde anlatıldığı gibi FA, fonksiyonel yapı gerektiren
problemlere uygunluğu gösterilmiştir. Buradan yola çıkarak RBS fonksiyonel ağı
oluşturulmuştur. Verilen bir nokta kümesinde NURBS eğrileriyle özdeşleştirilmiş bir RBS FA
sı oluşturulmuştur. n + 1 kontrol noktası, k dizside problemin çözümünü ifade eder. FA da
denetleyerek
(supervised)
öğrenme
ile
eğitilmiştir.
Giriş
çıkış
değerleri
YSA sadece ağırlıklar öğrenilir FA da ise yapısal öğrenme
boyunca öğreniyor ve parametrik öğrenme boyunca da hesaplar. Bu çalışmada RBS FA nın
topolojisi yapısal öğrenmeye karşılık gelmektedir, parametrik öğrenmede nöron
fonksiyonlarına. Yapısal öğrenmeye erişmek için, Knot vektör tanımı ve parametreler
oluşturulmuş olmalı. Parametre optimizsayonu şu şekilde yapılabilir:
centripetal methotu ile
17.05.2014
Sayfa 6
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
Bu aşamada parametre değerleri hesaplanıyor. FA nın ilk katmanının sinirsel fonksiyonunda
knot vektörünün bilinmesi gerekir. Bu da şu ortalama metoduna göre hesaplanır
Bu 3 formülün birlikte kullanımıyla Gaussian elimination yöntemiyle çözülüyor.
Parametrik öğrenme genellikle bu verilen fonksiyon ailelerinin kombinasyonlarıyla
gerçekleştirilmektedir.
Vektör ağırlıkları ile ilgili formüller verilmiş. Ayrıca bu çalışmada meta-heuristic bir
algoritma olan Particle Swarm Optimization (PSO) da kullanılmıştır. PSO kullanılarak kboyutlu bir problemin potansiyel çözümleri tanımlanmış.
17.05.2014
Sayfa 7
Doç.Dr.Erkan ÜLKER, Selçuk Üniversitesi Mühendislik F, Bilgisayar Mühendisliği Bölümü
SONUÇ:
Bu metot farklı verilere uygulanmıştır. Şekil 4 ve 7 de görüldüğü gibi . Veriler siyah, kontrol
noktaları yeşil ve sonuç eğri uydurma değerleri ise kırmızı ile gösterilmiştir. Bu metot şunları
sağlamaktadır.
1. 8 ve 9 a göre noktaların parametre değerlerini
2. 10 ‘u kullanarak knot vektörünü
3. 12 ve 13 deki PSO metodunu kullanarak wi ağırlıklarını PSO metodunu kullanarak wi
ağırlıklarını
4. Kontrol noktalarını
ilk iki örnek 2-boyutlu k = 3 ve 4 kontrol noktalı input dataları 30 noktadan oluşmakta.
Şekil6 ve 7 ise 3-boyutlu, input değerleri 30 ve e200 noktadan oluşulmakta.
Kısaca bu çalışmada veri noktalarına en uyan eğriyi çizdiren bir metot geliştirilmiş.
NURBS eğrilerinin matematiksel karmaşıklığından uzak, B-spline temel fonksiyonu
ağırlıklı, FA tabanlı RBS fonksiyonu anlatılmıştır. Metot minimum giriş değerleriyle
güçlü sonuçlar vermektedir.
17.05.2014
Sayfa 8
Download

2008-Curve Fitting with RBS Functional Networks