Lisans bitirme projesi olarak hazırlamış olduğum projenin sunum dosyasıdır. Projemde kısaca; ileri beslemeli yapay sinir ağı modelini ve öğrenme işlemini gerçekleştirmek için geri besleme algoritmasını Java programlama dilini kullanarak implement ettim. Oluşturduğum yapay sinir ağını bir arayüz ile birleştirerek harf tanıma yapan bir sistem oluşturdum.
1. Bilgisayar Mühendisliği Bölümü
YAPAY SİNİR AĞI İMPLEMENTASYONU VE EL
YAZISI KARAKTERLERİN TANINMASI
BIL 496
Proje Sunumu
Büşra Erkan
Proje Danışmanı: Yrd. Doç. Dr. Burcu Yılmaz
Ocak 2017
2. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi 2
• Projenin Şeması ve Tanımı
• UML Diyagramı
• Yapay Sinir Ağları Nedir?
• Yapay Sinir Ağı Tasarımı
• Ağın Eğitilmesi
• Deneyler
• SVM – YSA Karşılaştırması
• Başarı Kriterleri
• Sonuçlar
• Kaynaklar
İçerik
3. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi 3
Proje Tanımı ve Şeması
• Yapay sinir ağı
implementasyonun
yapılması
• Beyaz bir düzlem üzerine
yazılan karakterin tanınması
4. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi
UML Diyagramı
4
Kullanım Durum Diyagramı
5. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi
Yapay Sinir Ağları
• Beynin bir işlevi yerine getirme yöntemini modellemek
için tasarlanan bir sistem
Genelleme
Uyarlanabilme
Hata toleransı
5
6. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi 6
Yapay Sinir Ağı Tasarımı
• İleri beslemeli sinir ağı
• İleri ve tek yönlü bilgi akışı
• Giriş katmanından gizli katmanlara
• Gizli katmanlardan çıkış katmanına
Girdiler
Çıktılar
Ağırlıklar
Aktivasyon Fonksiyonu
Toplama Fonksiyonu
7. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi 7
Ağın Eğitilmesi
• Geri yayılım algoritması
• Probleme en uygun ağırlık değerlerinin bulunması
• Hesaplanan hatanın giriş nöronlarına dağıtılması ile
ağırlıkların güncellenmesi
• Delta Kuralı; Sistemin hata miktarının belirlenmesi
8. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi
Ağın Eğitilmesi
• Görüntülerin eğitim ve testte kullanılacak
formata dönüştürülmesi
8
Kullanıcıdan alınan giriş Ağa gönderilen giriş
9. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi
Deneyler
9
Başarılı sonuç örnekleri
10. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi
Deneyler
10
Başarısız sonuç örneği
11. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi
SVM – YSA Karşılaştırması
• K katlı çapraz doğrulama yöntemi ile elde
edilen sonuçlara göre başarı oranları:
– HOG tabanlı SVM
%94.77
– Yapay Sinir Ağı
%78.49
11
12. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi 12
Başarı Kriterleri
• Karakterin tanınma süresi 1 saniyeden az
olmalıdır.
• Karakterin tanınma başarısı en az %75
olmalıdır.
• En az 300x300 piksellik bir alan üzerine
yazılmış tüm karakterler için çalışmalıdır.
• Test için uygun arayüz yapılmalıdır.
13. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi
Sonuç
• 1 saniyeden kısa sürede tanıma
• Karakterin tanınmasında %78.49 başarı
oranı
• En az 300x300 piksellik bir alan üzerine
yazılmış tüm karakterler için çalışma
13
14. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi 14
Kaynaklar
[1] Patil, Vijay, and Sanjay Shimpi. "Handwritten English character recognition
using neural network." Elixir Comp. Sci. & Engg 41 (2011): 5587-5591.
[2] Jain, Anil K., Jianchang Mao, and K. Moidin Mohiuddin. "Artificial neural
networks: A tutorial." IEEE computer 29.3 (1996): 31-44.
[3] Pradeep, J., E. Srinivasan, and S. Himavathi. "Diagonal based feature
extraction for handwritten character recognition system using neural network."
Electronics Computer Technology (ICECT), 2011 3rd International Conference
on. Vol. 4. IEEE, 2011.
[4] Chen, Xiangrong, and Alan L. Yuille. "Detecting and reading text in natural
scenes." Computer Vision and Pattern Recognition, 2004. CVPR 2004.
Proceedings of the 2004 IEEE Computer Society Conference on. Vol. 2. IEEE,
2004.
[5] Ergezer, Halit, Mehmet Dikmen, and Erkan Özdemir. "Yapay sinir ağları ve
tanıma sistemleri." PiVOLKA 2.6 (2003): 14-17.
[6] Patil, V. V., Rajharsh Vishnu Sanap, and Rohini Babanrao Kharate. "Optical
character recognition using artificial neural network." Int. J. Eng. Res. General Sci
3.1 (2015).
15. GTÜ - Bilgisayar Mühendisliği Bölümü BİL 495/496 Bitirme Projesi
Kaynaklar
[7] Aydın, Musa, and Enes Çelik. "Yapay Sinir Ağları ile Assamese
Karakter Tanıma." Signal Processing and Communications Applications
Conference, 2013.
[8] ERDEM, O. Ayhan, and U. Z. U. N. Emre. "YAPAY SİNİR AĞLARI İLE
TÜRKÇE TIMES NEW ROMAN, ARIAL VE ELYAZISI KARAKTERLERİ
TANIMA." Gazi Üniversitesi Mühendislik-Mimarlık Fakültesi Dergisi 20.1
(2005).
[9] Sharma, Ankit, and Dipti R. Chaudhary. "Character recognition using
neural network." International Journal of Engineering Trends and
Technology (IJETT)-Volume4 (2013): 662-667.
[10] Arnold, Rókus, and Póth Miklós. "Character recognition using neural
networks." Computational Intelligence and Informatics (CINTI), 2010 11th
International Symposium on. IEEE, 2010.
[11] Prasad, Kauleshwar, and Shubham Agrawal. "CHARACTER
RECOGNITION USING NEURAL NETWORK." Int. J. Adv. Engg. Res.
Studies/IV/II/Jan.-March 90 (2015): 92.
[12] Patil, Vijay, and Sanjay Shimpi. "Handwritten English character
recognition using neural network." Elixir Comp. Sci. & Engg 41 (2011):
5587-5591.
15