ANNDES: BĠR YAPAY SĠNĠR AĞI TASARIM VE EĞĠTĠM YAZILIMI ANNDES: AN ARTIFICIAL NEURAL NETWORK DESIGN AND EDUCATION SOFTWARE

Benzer belgeler
YAPAY SİNİR AĞLARI. Araş. Gör. Nesibe YALÇIN BİLECİK ÜNİVERSİTESİ

YAPAY SİNİR AĞI İLE HAVA SICAKLIĞI TAHMİNİ APPROXIMATION AIR TEMPERATURE WITH ARTIFICIAL NEURAL NETWORK

BAŞKENT ÜNİVERSİTESİ FEN BİLİMLERİ ENSTİTÜSÜ BENZER SÜREÇLERDE ÜRETİLEN ÜRÜNLER İÇİN YAPAY ZEKA İLE ZAMAN TAHMİNİ SONER ŞÜKRÜ ALTIN

Seri No Takibi İÇERİK

ÖĞRENME FAALĠYETĠ 3 ÖĞRENME FAALĠYETĠ 3

YAPAY SİNİR AĞLARI YÖNTEMİ İLE PAFTALARININ SAYISALLAŞTIRILMASI ARTIFICIAL NEURAL NETWORKS METHOD FOR MAP DIGITIZATION

T.C. KIRIKKALE ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ YAPAY SİNİR AĞLARI. Doç.Dr. Necaattin BARIŞÇI FİNAL PROJESİ

Okul Temsilcisi. (Müd.-Mdr.Yrd.-Öğretmen- Müd.Yet.Öğrt.vb.)

IPACK LADDER. Arayüz Dökümantasyonu

SIMMAG Kullanım Kılavuzu. Adem Ayhan Karmış. Ana Ekran

Toplu DeğiĢiklik ĠÇERĠK

Yapay Sinir Ağları. (Artificial Neural Networks) DOÇ. DR. ERSAN KABALCI

BÖLÜM 8 B- SUNU PROGRAMI 1. MICROSOFT POWERPOINT NEDİR? 2. POWERPOINT PROGRAMININ BAŞLATILMASI

Banka Hesap Tanımı ĠÇERĠK

MENÜ AYARLAMA 1. MENÜ AYARLAMA. [X] [X] Standard. [X] [X] Yeni Fonksiyon

Mühendislikte Veri Tabanları Dersi Uygulamaları (ArcGIS-SQL)

Seri Takibi Yenilikleri

İÇERİK YÖNETİM SİSTEMİ KULLANMA KILAVUZU

3. Aşağıdakilerden hangisi B5 hücresinin değerini getirir (Kopyalar)? a-) =B5 b-) B5 c-) =B(5) d-) =5B

Temel Bilgi Teknolojisi Kullanımı

Ekle Menüsü İşlevleri ÜNİTE 10. Bu üniteyi çalıştıktan sonra; Ekle Menüsü Tablolar Resimler ve Çizimler Bağlantılar Metin ve Simgeler Media Flash

YAPAY SĠNĠR AĞLARININ EKONOMĠK TAHMĠNLERDE KULLANILMASI

Bu ekrana Kullanıcı adı ve şifre ile giriş yapıldığında ekranda giriş yapabilmeniz için yetki almanız

T.C. SAKARYA ÜNİVERSİTESİ ADAPAZARI MESLEK YÜKSEKOKULU WEB TABANLI VERİ TABANI UYGULAMASI YÖNLENDİRİLMİŞ ÇALIŞMA. Enes Al 1027.

EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI

Başlarken. AutoCAD Arayüzü. AutoCAD Arabirimleri. AutoCAD Arabirimleri. Şablon (Template) Seçimi. Yeni çizim dosyası açmak. Ekran Formatı B Ö L Ü M 1

BÖLÜM 1 GİRİŞ 1.1 GİRİŞ

Zeki Optimizasyon Teknikleri

BOLOGNA SÜRECİ PROGRAM TANITIM İŞLEMLERİ FAKÜLTE/BÖLÜM/PROGRAM TANITIM

BÖLÜM KATMAN OLUŞTURMA (LAYER) Command line: Layer (veya transparent komutu için 'Layer kullanın)

BİLGİSAYAR PROGRAMLAMA. Yrd. Doç. Dr. Beytullah EREN

Animasyon Teknikleri, Ses ve Video İşlemleri 1 / 18

ÖĞRENME FAALĠYETĠ 5 ÖĞRENME FAALĠYETĠ 5 5. GÖSTERĠ AYARLARI

LOJĠK KAPILAR ĠÇĠN BĠR EĞĠTĠM ARACI AN EDUCATIONAL TOOL FOR LOGIC GATES

Photoshop ta Web Sayfaları Oluşturma

ÖĞRENME FAALİYETİ 1 ÖĞRENME FAALİYETİ 1

Pratik Maliyet ve Karlılık

MODÜL 3 KELİME İŞLEM UYGULAMALARI 1

ELEKTRONİK BELGE YÖNETİM SİSTEMİ (EBYS)

Programın Tanıtımı

TABLO ve HÜCRE SEÇİMİ

Grafik Hazırlama Aracı

KULLANIM KILAVUZU. Reserve Online Reservation Systems

MT4 Platformu u Kullanıcı Kılavuzu ARALIK 2011

ÖĞRENME FAALĠYETĠ 1 ÖĞRENME FAALĠYETĠ 1 AMAÇ

ĠÇERĠK GENEL BĠLGĠ. Doküman Yönetimi

MT4 Platformu Kullanıcı Kılavuzu

13 Aralık Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Raporlar. Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz

ÖĞRENME FAALĠYETĠ 4 ÖĞRENME FAALĠYETĠ 4 4. SAYFA YAPISI

EXCEL 2007 DERS NOTLARI. Office düğmesi Hızlı EriĢim Çubuğu BaĢlık Çubuğu Formül Çubuğu

2. Sisteme ilk kez giriģ yapacak olan öğrenciler Öğrenci ġifre OluĢturma bölümünden Ģifrelerini oluģturup sisteme giriģ yapabileceklerdir.

Otomatik Lotlama ve Ticari İzlenebilirlik

ideal Portföy Modülü Kullanımı

1) HĐZMET TAKĐP EŞLEŞTĐRME

PERSONEL BANKA IBAN BİLGİSİ DEĞİŞİKLİĞİ UYGULAMA KILAVUZU

Electronic Letters on Science & Engineering 1(1) 2005 Available online at

Yapay Sinir Ağları (Artificial Neural Networks)

İNSAN KAYNAKLARI YAZILIMI PERSONEL BAŞLANGIÇ İŞLEMLERİ KULLANIM KILAVUZU

T.C. istanbul ÜNiVERSiTESi ÖĞRENCi BiLGi SiSTEMi. ÖĞRETiM ELEMANI KULLANIM KILAVUZU

BİLTEK AKADEMİ EXCELL DERS NOTLARI. GRAFĠK OLUġTURMA

Dış Veri Alma ÜNİTE 6. Bu üniteyi çalıştıktan sonra; Veri Menüsü Dış Veri Al Bağlantılar Sırala ve Filtre Uygula Veri Araçları Anahat

ipromelodi Okul Melodi Kontrol Sistemi İstanbul Yazılım ve Elektronik Teknolojileri

MARKALI İHRACAT VE LÜKS OTOMOBİL İTHALATI DÜZENLEMELERİ YÜKÜMLÜ KILAVUZU

SAĞLIK KURULU ENGELLİ SAĞLIK KURULU RAPORU

POWERPOINT KULLANIMI

ITEC186. Bilgi Teknolojilerine Giriş AUTODESK AUTOCAD 2014-I

Dinamik Kodlama. [X] [X] Yeni Fonksiyon

Resim 7.20: Yeni bir ileti oluşturma

Demirbaş Tanımı İÇERİK

EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI

5. HAFTA MS OFFICE EXCEL 2016 ÇUKUROVA ÜNİVERSİTESİ BİLGİSAYARDA VERİ ANALİZİ VE RAPORLAMA

NB Macro Kullanımı Hakkında Genel Bilgiler

Ġşlem tablosu kavramını tanımlamak ve işlem tablolarının işlevlerini öğrenmek. Ġşlem tablolarının temel kavramlarını tanımlamak.

Temel Bilgi Teknolojisi Kullanımı

BİLGİSAYAR UYGULAMALARI BÖLÜM 4

Örgün Öğrenci Sistemi Anadolu Üniversitesinde öğretim elemanlarının verdikleri

Proje Takip Platformu Kullanım Kılavuzu

MİCRODESTEK E-SMM UYGULAMASI TANITIM DOKÜMANI

Sistem Konfigrasyonu ;

MONTAJ ( ASSEMBLIES )

TEMEL BİLGİSAYAR. Ders Notları. Yrd. Doç. Dr. Seyit Okan KARA

İşe Giriş/Çıkış Bildirgesi ve E-bildige nin Sgk Web Sitesine Aktarımında Yenilik. 1.1 Sgk Kullanıcı Adı ve Şifresinin Programda Tanımlanması

Kullanıcı Kılavuzu. Ġġ YATIRIM MENKUL DEĞERLER A.ġ. TradeMasterFX Meta. Ürün : Değişiklik tarihi: Versiyon: 1,0 Özet: TradeMasterFX Meta

ISSN : Isparta-Turkey YAPAY SĠNĠR AĞLARI (YSA) YÖNTEMĠ ĠLE GLOBAL RADYASYON TAHMĠNĠ

ÖZEL ANKARA ETKİN Y.DİL, MATEMATİK ve BİLGİSAYAR KURSU

MapCodeX MapLand Kullanım Kılavuzu

Dizaynda Word Desteği

Ekran Arayüzü ve Obje Seçimi (V )

TEMEL SUNUM İŞLEMLERİ SUNUMA SES, VIDEO EKLEME SUNUM TASARIMI ANİMASYONLAR SLAYT GEÇİŞİ KÖPRÜ KAYDETME SUNUM TASARIM TEKNİKLERİ ETKİNLİKLER

ÖĞRENME FAALİYETİ 1 ÖĞRENME FAALİYETİ 1 1. FORMLAR

ENROUTEPLUS TA YAPILMASI GEREKENLER

ÖĞRENME FAALĠYETĠ 3 ÖĞRENME FAALĠYETĠ 3

Ekle sekmesindeki Tablolar grubundaki Tablo seçeneği ile tablo oluşturulur.

BİRİM KURULU ve BİRİM YÖNETİM KURULU EVRAKI

BÖLÜM 5 5. TABLO OLUŞTURMAK

LOGO PARTNER MEETING

ÇATI DÖŞEMESİNDE MEYDANA GELEN YOĞUŞMA VE BUHARLAŞMA KÜTLELERİNİN YAPAY SİNİR AĞLARI İLE TAHMİN EDİLMESİ

Temel Bilgi Teknolojileri - II Ayrıntılı Ders İçerikleri

Netsis 3 SMS Uygulaması

LAYOUT ORTAMINDA ÇALIŞMA:

Transkript:

ANNDES: BĠR YAPAY SĠNĠR AĞI TASARIM VE EĞĠTĠM YAZILIMI ANNDES: AN ARTIFICIAL NEURAL NETWORK DESIGN AND EDUCATION SOFTWARE Yrd.Doç.Dr. Ġbrahim ġahġn D.Ü. Teknik Eğitim Fakültesi, Elektronik ve Bilgisayar Eğitimi Bölümü, 81620, Düzce ibrahimsahin@duzce.edu.tr Adem AKKAYA D.Ü. Teknik Eğitim Fakültesi, Elektronik ve Bilgisayar Eğitimi Bölümü, 81620, Düzce adem@ademakkaya.com ÖZET: Yapay Sinir Ağları (YSA Artificial Neural Network (ANN)) son yıllarda geleceği öngörme, örüntü tanıma, verilerin yorumlanması, optimizasyon iģlemleri gibi bir çok alanda yaygın olarak kullanılmaya baģlanmıģtır. Özellikle mühendislik alanında kolaylıkla uygulanabilmeleri nedeniyle YSA lara ilgi her geçen gün artmaktadır. Yapay sinir ağları hakkında lisans ve yüksek lisans seviyesinde çeģitli dersler verilmektedir. Bu çalıģmada YSA ların öğrenciler tarafından daha kolay anlaģılmasına yardımcı olmak amacıyla bir görsel YSA tasarım ve test aracı olan ANNDES gelirtirilmiģtir. Bu araç sayesinde öğrenciler otomatik olarak yada çizim alanını ve araçlarını kullanarak diledikleri ağı oluģturabilmektedirler. Araç kullanıcıya oluģturduğu ağın her bir katmanına istediği kadar sinir hücresi yerleģtirebilme, bu sinir hücrelerini istediği gibi birbirine bağlayabilme ve her bir sinir hücresi için farklı aktivasyon fonksiyonu seçebilme imkanı sunmaktadır. Araç sayesinde oluģturulan ağ istenirse uygun bir Ģekilde formatlanmıģ örnek eğitim verisi ile istenilen iterasyonda yada istenen hata oranı yakalanana kadar eğitilebilmektedir. Eğitim sonunda ağın eğitim eğrisi grafiksel olarak gözlemlenebilmektedir. Aracın bir diğer önemli özelliği ise oluģturulan yapay sinir ağını tanımlayan metin tabanlı bir NetList (ağ tanımlama dosyası) oluģturmasıdır. Anahtar Kelimeler: Yapay Sinir Ağları, Görsel Tasarım Aracı, YSA Eğitimi. ABSTRACT: Lately, Artificial Neural Networks (ANN) have been widely used in several areas such as prediction, pattern recognition, data analysis, optimization, etc. Attention to the ANN grows rapidly due to their easy application in several engineering fields. Several courses about ANN are being taught in universities at graduate and undergraduate levels. In this study, an Artificial Neural Network Design and Education software (ANNDES) was developed to help students better understand the ANNs. Students can form their desired ANNs using either the drawing area or the automatic ANN generator option of the software. The software lets the users place any number of neurons in each layer, select the desired transfer function for the neurons, and connect the neurons in a way they wish. The users can also train their ANN designs up to a number of iterations or up to a desired error rate is obtained using suitably formatted sample test data. At the end of the training process, change in the error rate of the designed ANN can be graphically observed. Another important feature of the tool is that it can form a NetList (a text based ANN definition file) for a designed ANN. Keywords: Artifical Neural Network, Visual Design Tool, ANN Learning. 1. GĠRĠġ Yapay sinir ağları (YSA), insanın biyolojik sinir hücrelerinin oluģturduğu ağlarının modellenmesi ile ortaya çıkan bir bilgi iģlem teknolojisidir. Günümüzde YSA lar birçok alanda kullanılmaktadır. Örneğin, finans uygulamaları, askeri ve savunma sanayi uygulamaları, tıp uygulamaları, mühendislik uygulamaları, görüntü iģleme uygulamaları gibi alanlarda sıkça kullanılan bir yöntemdir (Kakıcı (2011-1,-2,-3)). Özellikle mühendislik alanında kolaylıkla uygulanabilmeleri nedeniyle YSA lara ilgi her geçen gün artmaktadır. YSA lara artan ilgiyi karģılamak amacıyla lisans ve yüksek lisans seviyesinde çeģitli dersler verilmektedir. Bu derslerde YSA lar genellikle teorik olarak anlatılmakta, uygulama kısmı ise eksik kalmaktadır. Bu çalıģmada YSA ların öğrenciler tarafından daha kolay anlaģılmasına yardımcı olmak amacıyla bir görsel YSA tasarım ve test aracı olan Artificial Neural Network Design tool (ANNDES) gelirtirilmiģtir. Bu araç sayesinde öğrenciler isterlerse otomatik olarak isterlerse de çizim alanını ve

araçlarını kullanarak diledikleri ağı oluģturabilmektedirler. OluĢturulan ağ en fazla dört katman içerebilmektedir ve ağa istenildiği kadar giriģ ve çıkıģ tanımlanabilmektedir. Araç kullanıcıya oluģturduğu ağın her bir katmanına istediği kadar sinir hücresi yerleģtirebilme, bu sinir hücrelerini istediği gibi birbirine bağlama ve herbir sinir hücresi için farklı aktivasyon fonksiyonu seçebilme imkanı sunmaktadır. Araç sayesinde oluģturulan ağ istenirse uygun bir Ģekilde formatlanmıģ örnek eğitim verisi ile istenilen iterasyonda ya da istenen hata oranı yakalanana kadar eğitilebilmektedir. Eğitim sonunda ağın eğitim eğrisi grafiksel olarak gözlemlenebilmektedir. Aracın bir diğer önemli özelliği ise oluģturulan yapay sinir ağını tanımlayan metin tabanlı bir NetList (ağ tanımlama dosyası) oluģturmasıdır. Eğer NetList ağın eğitiminden sonra oluģturulursa ağdaki eğitimden sonra oluģan ağırlık değerleride NetList e dahil edilmektedir. OluĢturulan bu NetList ağın donanımsal olarak gerçeklenmesinde kullanılmaktadır. Makalenin devamı Ģu Ģekilde organize edilmiģtir. Ġkinci bölüme kısaca yapay sinir hücreleri ve YSA lar hakkında bilgi verilmiģtir. Üçüncü bölümde bu çalıģmada geliģtirilen görsel tasarım aracı anlatılmıģtır. Aracın kullanımı hakında bilgiler dördüncü ve beģinci bölümlerde verilmiģtir. Makale sonuç bölümü ile bitirilmiģtir. 2. ÖN BĠLGĠ 2.1. Biyolojik ve Yapay Sinir Hücreleri Biyolojik sinir ağları beynimizde bulunan milyonlarca sinir hücresinin bir araya gelmesiyle oluģan yapıdır. Sinir hücreleri birbirleri ile bağlanarak fonksiyonlarını yerine getirmektedir. Duyu organlarından gelen bilgiler sinir sistemi sayesinde beyine taģınır ve beyin gelen bilgiyi çok hızlı bir Ģekilde paralel olarak iģleyerek tekrar sinir sitemi sayesinde bilgiyi gönderen organa eylem olarak gönderir (Wiki (2011-1,-2)). Biyolojik sinir hücresi dentritler, soma, akson ve snapslardan meydana gelmektedir. Snapslar sinir hücreleri arasındaki bağlantılardır. Bunlar fiziksel bağlantılar değildir ama bir hücreden baģka bir hücreye sinyallerin geçmesini sağlayan boģluklardır. Bu sinyaller somaya giderler, burada sinir hücresi tarafından iģlenirler ve sinir hücresinin kendi çıkıģ sinyali olarak akson aracılığıyla dentritlere gönderilirler (Bilx (2011)). Yapay sinir ağları biyolojik sinir hücrelerinin bu özelliklerinden esinlenerek geliģtirilmiģtir. Yapay sinir ağlarının da biyolojik sinir hücreleri gibi yapay sinir hücreleri vardır. Yapay hücreler proses elemanları olarak da adlandırılmaktadır (Yapay-Zeka (2011)). ġekil 1 de de görüldüğü gibi her yapay sinir hücresi 5 temel elemandan oluģur. Bunlar; Girdiler, Ağırlıklar, Toplama Fonksiyonu, Aktivasyon Fonksiyonu ve Hücrenin Çıktısı'dır ġekil 1. Yapay sinir hücresinin yapısı. Girdiler YSA hücresine dıģarıdan verilen bilgilerdir. Hücreler dıģarıdan veri aldığı gibi baģka hücrelerden veya kendisinden de veri alabilir. Ağırlıklar bir yapay sinir ağı hücresine gelen verinin önemini ve hücreye etkisini gösteren bilgilerdir. Ağırlık değerlerinin artı veya eksi olması ağ üzerindeki etkisinin pozitif veya negatif olduğunu gösterir (Öztemel (2003)). Ağırlıklar değiģken olduğu gibi sabit değerlerde de olabilir. Toplama Fonksiyonu bir hücreye gelen net girdiyi hesaplar. En yaygın kullanılan toplama fonksiyonu ağırlıklı toplama fonksiyonudur. Burada her bir giriģten gelen bilgi kendi ağırlığı ile çarpılarak toplanır. Bu sayede ağa gelen net girdi hesaplanmıģ olur. Ağırlıklı toplama formülü aģağıdaki gibidir (ġeker (2011)). n NET G i A (1) i i

Bu formülde G girdileri, A ağırlıkları, n ise bir hücreye gelen toplam girdi sayısını göstermektedir. Aktivasyon Fonksiyonu, hücreye gelen net girdiyi iģleyerek hücrenin bu girdiye karģılık vereceği çıktıyı hesaplar (Elmas (2007)). Literatürde tanımlanmıģ ve kullanılan 10 un üzerinde değiģik aktivasyon fonksiyonu bulunmaktadır (Beale ve Diğ. (2010)). Bir YSA da bütün hücreler aynı aktivasyon fonksiyonuna sahip olacağı gibi katmanlarda ya da her bir hücrede farklı aktivasyon fonksiyonu kullanılabilir. Bir hücrenin çıktısı o hücrenin aktivasyon fonksiyonunun ürettiği sonuçtur. Üretilen bu sonuç dıģarıya, baģka bir hücreye veya tekrar kendisine girdi olarak gönderilebilir. 3. YAPAY SĠNĠR AĞLARI GÖRSEL TASARIM ARACI Yapay sinir ağları (YSA) lisans ve yüksek lisans seviyesinde değiģik derslerde anlatılmaktadır. Verilen bu derslerde YSA ların teorik olarak anlatımı yapılmakta olup uygulama kısmı eksik kalmaktadır. Bu çalıģmada teorik YSA uygulamalarını pratik olarak uygulayabilmek için bir görsel tasarım aracı olan ANNDES geliģtirilmiģtir. ANNDES sayesinde önce değiģik özellikte YSA tanımlanabilmekte, ardından da test verileri ile tasarlanan YSA eğitilebilmektedir. Kullanıcı görsel arayüzler sayesinde tasarladığı ağı ve ağın eğitimini gözlemleyebilmektedir. ANNDES in görünümü ġekil 2 de görülmektedir. ġekil 2. ANNDES ana formu. ANNDES ana formu 5 bölümden oluģmaktadır. Bu bölümler menü çubuğu, araç çubuğu, katman bilgi alanı (layerlar), çizim alanı, gösterim alanıdır. Ayrıca tasarlanan ağın eğitimi ve öğrenme grafiği için iki farklı form tasarlanmıģtır. Menüler ANNDES i fonksiyonel olarak kullanabilmek için oluģturulmuģtur. Menülerden program için gerekli bütün özelliklere eriģilebildiği gibi özelliklerin kısa yol tuģlarını da burada görmek mümkündür. Dosya menüsünde Kapat sekmesi bulunmaktadır ve programdan çıkıģı sağlamaktadır. Düzen menüsünde fare iģaretçisini seçmek için İşaretçi sekmesi, katmanlardaki giriģ, çıkıģ ve sinir hüçreleri arasındaki bağlantıları çizmek için Çizgi Çiz, bağlantı ve hücreleri silmek ve taģımak için Nesne Sil, ve Nesne Taşı, bağlantıların tümünü silmek için Tümünü Sil ve ekrandaki tasarımın tamamını silmek için Ekranı Temizle sekmeleri bulunmaktadır. Ayrıca çizim alanındaki gridleri açıp kapatmak için Grid Aç/Kapat sekmesi bulunmaktadır. Diğer menüsünde çizilen sinir ağıyla ilgili katmanların metin tabanlı tanımlamasını (NetList) oluģturmak için Netlist ve otomatik ağ oluģturmak için Otomatik Oluştur sekmeleri bulunmaktadır. Layers menüsü altında ise oluģturulan YSA ya giriģ katmanı eklemek için Input Layer, çıkıģ katmanı eklemek için Output Layer ve transfer fonksiyonları eklemek için Hlayer sekmeleri bulunmaktadır. ANNDES in araç çubuğunda İşaretçi, Çizgi Çiz, Nesne Sil, Nesne Taşı, Tümünü Sil, Ekranı Temizle, Netlist, Otomatik Oluştur, Grid Aç/Kapat ve Layers menüsündeki giriģ, çıkıģ ve transfer fonksiyonlarının kısa yolları bulunmaktadır. Bu kısa yollar, tasarlanmak istenen YSA yı tanımlamada alternatif bir seçenek olarak kullanıcıya sunulmuģtur.

Layerlar Paneli katmanlara eklenen giriģ, çıkıģ ve transfer fonksiyonlarının hangi katmanlarda olduğunu ve isimlerini gösteren bölümdür. Bu bölümde katmanlara yeni eklenen elemanlar ve katmanlardan silinen elemanlar güncellenerek gösterilmektedir. Çizim alanı, oluģturulacak yapay sinir ağının giriģ, çıkıģ ve transfer fonksiyon katmanlarının çizildiği ve düzenlendiği alandır. Bütün ağ tasarımı bu bölümde gerçekleģmektedir. Gösterim Alanın bir konsol gibi çalıģmakta ve ANNDES burada kullanıcıya yapılan bütün iģlemlerle ilgili uyarıcı mesajlar vermektedir. Ayrıca tasarlanan ağın NetList i yine burada görüntülenebilmektedir. 3.1. Eğitim Sayfası ve Eğitim Grafiği ANDESS ile tasarlanan yapay sinir ağları istenirse uygun formatta formatlanmıģ test verileri kullanılarak eğitilebilmektedir. Bu amaçla ayrı bir eğitim formu oluģturulmuģtur. Bu formdan ağın kaç iterasyonda, hangi momentum ve öğrenme katsayısında eğitilebileceği seçilebilmektedir. Grafik sayfasında, tasarlanan YSA nın eğitimi sırasında oluģan hata grafiği görüntülenebilmektedir. Görüntülenen bu hata değerleri tanımlanan ağın ürettiği sonuçlar ile olması gereken sonuçlar arasındaki fark değerleridir. Grafik sayfasının görünümü ġekil 3'te görülmektedir. ġekil 3.Grafik sayfası. 4. ANNDES ĠLE YSA TASARIMI YSA tasarımları araç çubuğundaki nesneler kullanılarak oluģturulabileceği gibi otomatik olarak katmanlar ve transfer fonksiyonları seçilerek de oluģturulabilmektedir. 4.1. Manüel Yapay Sinir Ağı Tasarımı Manüel ağ tasarımı 4 aģama gerçekleģtirilir. Bu aģamalar giriģ katmanı elemanlarının, ara katman elemanlarının, çıkıģ katmanı elemanlarının ve katmanlar arasındaki bağlantıların eklenmesidir. GiriĢ katmanı elemanları YSA ya uygulanan giriģ değerlerini belirlemek için kullanılır. Çizim alanında giriģ katmanına yeni bir eleman eklemek için ya Layers > Input Layer menüsü, ya araç çubuğundan giriģ sembolü ya da kısa yol tuģu Ctrl+I kulanılabilir. Ara katmanlarda yapay sinir ağının transfer fonksiyonları bulunmaktadır. Bu fonksiyonlar verilen giriģ değerlerine göre istenilen çıkıģ değerlerine yakın değerleri oluģturmaya yardımcı olan elemanlardır. Ağa birden fazla ara katman ve her bir katmana birden fazla sinir hücresi eklenebilir. Ara katman sinir hücreleri Layers menüsünden Hlayer sekmeleri seçilerek, araç çubuğundaki fonksiyon sembollerine tıklanarak veya kısa yol tuģları Ctrl+F1 Ctrl+F8 kullanılarak eklenebilir. Tasarlanan ağa çıkıģ katmanı elemanlarıda benzer Ģekilde menüden Layers > Output Layer sekmesi seçilerek, araç çubuğundan çıkıģ sembolüne tıklanarak veya Ctrl+O kısa yol tuģları kullanılarak eklenebilir. Bağlantılar ağ üzerinde verinin giriģten çıkıģa giderken hangi yolu takip ederek gideceğini belirler. Katmanlaradaki elemanlar arasındaki bağlantılar menüden Düzen > Çizgi Çiz sekmesi kullanılarak, araç çubuğundaki çizgi simgesine tıklanarak veya kısa yol tuģu Ctrl+W kullanılarak eklenebilir. 4.2. Otomatik Yapay Sinir Ağı Tasarımı Otomatik olarak yapay sinir ağı oluģturma iģlemi Diğer > Otomatik Oluştur menüsünden, araç çubuğundaki Otomatik Oluştur simgesinden veya kısa yol tuģu Ctrl+F ile baģlatılmaktadır. Otomatik ağ

oluģturma bölümünde ağ tasarlamak için, giriģ katman sayısı, ara katmanlardaki hücre sayıları, hücrelerin aktivasyon türler ve bu hücrelerin bias giriģlerinin olup olmadığının belirtilmesi gerekmektedir. Ayrıca bağlantıların otomatik olarak yapılıp yapılmayacağının seçilmesi de gerekmektedir. ġekil 4-a da görülen örnekte, giriģ katmanında 4 eleman, ilk ara katmanında 4 adet Log Sigmoid transfer fonksiyonlu biassız hücre, ikinci ara katmanda 2 adet Linear transfer fonksiyonlu biassız hücre ve iki adet çıkıģı bulunan bir YSA oluģturmak için gerekli parametreler girilmiģ olarak otomatik ağ oluģturma formu görülmektedir. Formda oluģturulacak ağın bütün bağlantılarınında otomatik olarak yapılacağını belirten Full Connective seçeneği seçilmiģ durumdadır. Bu parametreler girildikten sonra Oluştur butonuna basıldığında çizim alanında istenen ağ otomatik olarak oluģturulur. ġekil 4-b de oluģturulan ağ görülmektedir. ġekil 4.Otomatik yapay sinir ağı oluģturma. a) Otomatik ağ oluģturma b) Otomatik oluģturulmuģ yapay sinir ağı 5. ANNDES ĠLE AĞ EĞĠTĠMĠ ANNDES ile oluģturulan YSA lar danıģmalı öğrenme yöntemi ile eğitilebilmektedir. Temelde eğitim iģlemi oluģturulan ağda bağlantıların ağırlık değerlerinin ayarlanması iģlemidir. Bu ayarlama iģleminde amaç ağın verilen girdiye karģın istenen çıktıyı üretmesidir. Bu iģlem iteratif bir iģlemdir ve belirtilen hata oranı yakalanana kadar ya da belirtilen adet kadar tekrarlanır. Her tekrar iģleminde örnek test verisi ağa uygulanır, ağın o anki durumuna göre çıktılar hesaplanır ve çıktılara göre ağırlık değerleri güncellenir. Bu çalıģmada geliģtirilen yazılım verilen test verisine göre tanımlanan ağın eğitimini otomatik olarak yapmaktadır. 5.1. Test Verisi ile Yapay Sinir Ağı Eğitimi ANNDES in ana sayfasında bulunan Eğitim Sayfasını Aç butonu ile eğitim sayfası çalıģtırılmaktadır. Tasarlanan ağı eğitmek için öncelikle eğitim test verisinin ağa uygun formatta hazırlanması gerekir. Test verisinin formatı çok basittir. Bir text tabanlı dosyada veriler sütunlar halinde yerleģtirilir. Ağın her bir giriģi ve çıkıģı için bir sütun bulunmalı ve öncelik giriģ sütunlarında olmalıdır. ġekil 5'te ağ eğitimi için oluģturulan eğitim formu görülmektedir. ġekil 5. Eğitim formu.

Formda iterasyon sayısı, momentum ve öğrenme katsayısı seçildikten sonra tasarlanan YSA için daha önceden hazırlanmıģ bir eğitim veri seti dosyası seçilerek bu dosyanın okunması ile eğitim iģlemi yapılabilmektedir. Bütün parametreler girildikten ve eğitim test veri dosyası seçildikten sonra eğitim iģlemini baģlatmak için Eğitime Başla butonuna tıklamak gerekmektedir. Eğitime baģlarken yapay sinir ağının ilk ağırlıkları rasgele belirlenmektedir. Eğitimin her iterasyonunda eğitim setindeki giriģ değerleri ağırlıklar ile çarpılarak transfer fonksiyonları ile iģlendikten sonra diğer katmana aktarılmaktadır. Her katmanda bu iģlemler gerçekleģtirildikten sonra son katmanda transfer fonksiyonundan çıkan değerler çıkıģ katmanına gönderilmektedir. ÇıkıĢ katmanına gelen değerler istenilen çıkıģ değerleri ile karģılaģtırılarak hata oranı tespit edilmektedir. Tespit edilen hata oranına göre ağırlıklar geri yayılım yöntemi ile tekrar hesaplanır. Bu iģlem belirtilen iterasyon adedi kadar tekrarlanır. Eğitimin ilerleme durumu ve eğitim sonucundaki çıkıģ değerleri bu sayfadan görülebilmektedir. Eğitim bittikten sonra ağın eğitim süresince ürettiği çıkıģ hata değerlerinin grafiksel olarak gösterimi için Grafik Oluştur butonu yer almaktadır. ġekil 3 te olduğu gibi eğitim iģlemi bittikten sonra istenirse eğitim hata grafiği görüntülenebilir. Eğitim iģlemi bittikten sonra elde edilen ağırlık değerleri NetList oluģturmada kullanılmak üzere kaydedilir. 5.2. Netlist OluĢturma Bu çalıģmada YSA ları bütün özellikleriyle metin tabanlı olarak tanımlayabilmek için özel bir NetList (metin tabanlı ağ tanımlama dosyası) formatı gelitirilmiģtir. Tasarlanan YSA eğitilerek ağ için en uygun ağırlıklar belirlendikten sonra araç çubuğundaki NetList butonu yardımıyla NetList oluģturulabilmektedir. NetList oluģturmadaki amaç hem oluģturulan ağı ve ağın ağırlık değerlerini uygun bir formatta saklayabilmek hem de ilerleyen çalıģmalarda bu tanımlamayı kullanarak tasarlanan ağın donanımsal olarak gerçeklenmesine yardımcı olmaktır. 6. SONUÇ Bu çalıģmada lisans ve yüksek lisans seviyesindeki yapay sinir ağları derslerinin iģlenmesinde yardımcı olmak amacıyla bir görsel tasarım aracı olan ANNDES geliģtirilmiģtir. Yapay sinir ağları ile ilgili derslerde konular teorik olarak rahatlıkla iģlenirken pratik aģamasında yardımcı araçlara ihtiyaç duyulmaktadır. Bu eksikliği gidermek için geliģtirilen ANNDES ile YSA lar kolaylıkla tasarlanabilmekte ve eğitimleri yapılabilmektedir. ANNDES i kullanarak öğrenciler YSA ların çalıģmasını daha rahat bir Ģekilde öğrenebilmektedirler. Hali hazırda ANNDES YSA eğitiminde sadece geri beslemeli eğitim metodunu kullanabilmektedir. Ġlerleyen çalıģmalarda değiģik YSA eğitim metodları ANNDES'e eklenebilir. KAYNAKÇA Bilx (2011), Yapay Sinir Ağları, 12 Mayıs 2011, http://www.bilx.net/form/bilgisayar-dersleri-ve-notlarihersey/1-yapay-sinir-aglari/ Elmas, Çetin (2007), Yapay Zeka Uygulamaları, Seçkin Yayınevi, 2007 Kakıcı, Ahmet (2011-1), Yapay Sinir Ağlarına GiriĢ, 18 Nisan, 2011, http://www.ahmetkakici.com/yazilim/yapay-sinir-aglarina-giris/ Kakıcı, Ahmet (2011-2), Yapay Sinir Ağlarının Katmanları, 18 Nisan 2011, http://www.ahmetkakici.com/yapay-sinir-aglari/yapay-sinir-aglarinin-katmanlari/ Kakıcı, Ahmet (2011-3), Yapay Sinir Ağlarının Mimarisi ve Yapı Elemanları, 18 Nisan 2011, http://www.ahmetkakici.com/yapay-sinir-aglari/yapay-sinir-aglarinin-mimarisi-ve-yapi-elemanlari/ Beale, M.H., Hagan, M. T., Demuth, H. B. (2010), Neural Network Toolbox 7 User s Guide, 2010 Öztemel, Ercan (2003), Yapay Sinir Ağları, Papatya Yayıncılık, 2003 ġeker, ġadi Evren (2011), Yapay Sinir Ağlarının Eğitimi, 4 Mayıs 2011, http://www.bilgisayarkavramlari.com/2008/10/02/yapay-sinir-aglarinin-egitimi- training-neuralnetworks/ Wiki (2011-1), Yapay Sinir Ağları, 26 Mart 2011, http://tr.wikipedia.org/wiki/yapay_sinir_ağları Wiki (2011-2), Artificial neural network, 18 Nisan 2011, http://en.wikipedia.org/wiki/artificial_neural_network Yapay-Zeka (2011), Yapay Sinir Ağları, 28 Nisan 2011, http://www.yapay-zeka.org/modules/ wiwimod/index.php?page=ann