PENGENALAN TULISAN TANGAN DENGAN METODE CONVOLUTION NETWORK (CNN)
Oleh I Kadek Supadma
1605552031
PROGRAM STUDI TEKNOLOGI INFORMASI FAKULTAS TEKNIK UNIVERSITAS UDAYANA 2019
BAB I PENDAHULUAN
1.1
Latar Belakang Pengenalan tulisan tangan merupakan salah satu bentuk dari pengenalan pola.
Penelitian dalam bidang pengenalan tulisan tangan telah berkembang dalam kurun waktu yang cukup lama. Penelitian tersebut dilakukan karena semakin banyak dipergunakan model tulisan tangan dalam kehidupan sehari-hari, seperti identifikasi dokumen-dokumen penting, bukti pengesahan dalam dunia perbankan, dan lain sebagainya. Permasalahannya dunia pengenalan tulisan ini meliputi pengenalan karakter (huruf), pengenalan angka, pengenalan gesture, pengenalan tanda tangan, dan lain sebagainya. Dalam pemecahan permasalahan terhadap tulisan tangan tersebut akan sangat terkait dengan pengenalan pola yang bertujuan untuk menghasilkan dan memilih pola-pola yang bisa dimanfaatkan pada saat identifikasi. Pada penelitian-penelitian sebelumnya juga telah menggunakan beberapa metode. Namun pada saat ini perkembangan metode Deep Learning sudah semakin pesat semakin banyak digunakan dalam hal pengenalan terutama untuk pengenalan wajah yang sangat populer. Deep learning juga sudah banyak digunakan dalam hal pengklasifikasian citra. Deep Learning memiliki beberapa metode seperti ANN (Artificial Neural Network), CNN (Convolution Naural Network) dan lainnya. Dalam pembuatan sistem pengenalan tulisan tangan berupa pengenalan huruf dan angka tulisan tangan penelitian ini menggunakan metode Convolution Neural Network (CNN). CNN adalah pengembangan dari Multilayer Perceptron (MLP) yang didesain untuk mengolah data dua dimensi.
1.2
Rumusan Masalah Dalam penelitian pengenalan tulisan tangan yang dilakukan kali ini memiliki
beberapa rumusan masalah berdasarkan atas latar belakang yang telah di kemukakan sebagai berikut: 1. Bagaimana Algoritma CNN (Convolution Neural Network) pada proses Pengenalan Tulisan Tangan. 2. Bagaimana tingkat akurasi dari Pengenalan Tulisan Tangan dengan menggunakan metode Convolution Neural Network (CNN).
1.3
Tujuan Penelitian mengenai pengenalan tulisan tangan yang di lakukan memiliki
beberapa tujuan diantaranya: 1. Untuk menerapkan proses pengenalan tulisan tangan menggunakan metode Convolution Neural Network (CNN). 2. Untuk menganalisa tingkat akurasi pengenalan tulisan tangan dengan menggunakan metode Convolution Neural Network (CNN).
1.4
Manfaat Adapun manfaat yang di harapkan dari penerapan penelitian mengenai
pengenalan tulisan tangan dengan menggunakan metode Convolution Neural Network (CNN) yaitu: a. Bagi peneliti Setelah melakukan penelitian ini, peneliti mendapatkan pengetahuan baru tentang pengenalan tulisan tangan dan dapat memahami algoritma dari Convolution Neural Network (CNN).
b. Bagi pihak lain Hasil penelitian yang di lakukan dapat digunakan sebagai pedoman atau acuan dalam melakukan penelitian selanjutnya dalam hal teknologi pengenalan tulisan tangan.
1.5
Batasan Masalah
Batasan masalah dari penelitian pengenalan tulisan tangan yaitu: 1. Sistem yang dibuat dari penelitian yang dilakukan hanya untuk mengenali huruf yang di tulis tangan. 2. Sampel dari huruf yang di tulis tangan diperoleh dari situs online yang menyediakan dengan dimensi 128x128 berskala abu-abu(grayscale). 3. Dalam penelitian pengenalan tulisan tangan hanya menggunakan metode Convolution Neural Network (CNN).
1.6
Sistematika Penulisan Bagian
Keterangan Bab I merupakan pendahuluan yang berisikan latar belakang, rumusan masalah, tujuan, manfaat,
BAB I Pendahuluan
batasan masalah, dan sistematika penulisan pada penelitian Pengenalan Tulisan Tangan. Bab II merupakan tinjauan pustaka yang berisikan landasan teori secara umum sebagai pendukung
BAB II Tinjauan Pustaka
dari teori-teori dalam penelitian Pengenalan Tulisan Tangan.
Bab III merupakan metodologi penelitian yang BAB III Metodologi
berisikan tentang pokok mengenai tempat dan
Penelitian
waktu penelitian dan sumber data yang digunakan, gambaran umum. Bab IV merupakan pembahasan yang berisikan
BAB IV Pembahasan
tentang hasil dan pembahasan dalam penelitian.
Bab V merupakan penutup yang berisikan kesimpulan dari keseluruhan hasil penelitian yang BAB V Penutup
telah dikerjakan serta kritik dan saran dari temanteman maupun dosen pengampu.
BAB II TINJAUAN PUSTAKA 2.1
State Of The Art Penelitian mengenai pengenalan tulisan tangan (handwritten), metode CNN
sudah beberapa kali dilakukan, berikut ini adalah penelitian yang terkait dengan penelitian ini. 2.1.1
Penelitian Terkait Pengenalan Karakter Tulisan Tangan
-
Sam’ani 1, M. Haris Qamaruzzaman2 meneliti tentang pengenalan huruf dan
angka tulisan tangan. Dalam penelitian ini menggunakan metode CNN. inputan berupa huruf dan angka tunggal sebanyak 184 citra uji diperoleh jawaban benar sebanyak 153 dan jawaban salah sebayak 31 Sedangkan hasil uji coba dengan input berupa kata dan kalimat yang terdiri dari 191 huruf dan angka dengan jumlah jawaban benar sebanyak 158 dan jawaban salah sebanyak 33 huruf yang tidak dapat dikenali dengan benar(1). -
Chandra Kusuma Dewa*1, Amanda Lailatul Fadhilah2, Afiahayati3 meneliti
tentang pengenalan tulisan tangan pada huruf jawa. Dalam penelitian ini menggunakan metode CNN. Pada proses segmentasi gambar menggunakan deteksi kontur dan tepi Canny dengan pustaka OpenCV melalui gambar karakter Jawa yang direkam dengan tangan. CNN akan mengklasifikasikan gambar tersegmentasi ke dalam 20 kelas huruf Jawa Hasil percobaan menunjukkan bahwa akurasi pengujian model CNN mengungguli akurasi MLP meskipun CNN membutuhkan waktu pelatihan lebih banyak daripada MLP(2). -
Haider A. Alwzwazy1, Hayder M. Albehadili2, Younes S. Alwan3, Naz E.
Islam4. Meneliti tentang Pengenalan Digit Tulisan Tangan Bahasa Arab dengan metode CNN. Sampel yang digunakan lebih dari 45.000 sampel. Dan pada penelitian ini hasil klasifikasinya sangat baik(3). -
Prashanth Vijayaraghavan, Misha Sra. Meneliti tentang pengenalan tulisan
tangan huruf Tamil, bahasa di india selatan dengan metode CNN. Hasil percobannya mencapai akurasi 94,4% pada dataset IWFHR-10(4).
2.2
Kajian Pustaka Pada sub bab ini akan di jabarkan teori-teori dan argumentasi ilmiah yang
terkait dengan pengenalan tulisan tangan serta metode yang akan digunakan untuk menyelesaikan masalah dalam penelitian ini. 2.2.1
Convolutional Neural Network Convolutional Neural Network (CNN) adalah pengembangan dari Multilayer
Perceptron (MLP) yang didesain untuk mengolah data dua dimensi. CNN termasuk dalam jenis Deep Neural Network karena kedalaman jaringan yang tinggi dan banyak diaplikasikan pada data citra. Pada kasus klasifikasi citra, MLP kurang sesuai untuk digunakan karena tidak menyimpan informasi spasial dari data citra dan menganggap setiap piksel adalah fitur yang independen sehingga menghasilkan hasil yang kurang baik(5). CNN pertama kali dikembangkan dengan nama NeoCognitron oleh Kunihiko Fukushima, seorang peneliti dari NHK Broadcasting Science Research Laboratories, Kinuta, Setagaya, Tokyo, Jepang. Konsep tersebut kemudian dimatangkan oleh Yann LeChun, seorang peneliti dari AT&T Bell Laboratories di Holmdel, New Jersey, USA. Model CNN dengan nama LeNet berhasil diterapkan oleh LeChun pada penelitiannya mengenai pengenalan angka dan tulisan tangan. Pada tahun 2012, Alex Krizhevsky dengan penerapan CNN miliknya berhasil menjuarai kompetisi ImageNet Large Scale Visual Recognition Challenge 2012. Prestasi tersebut menjadi momen pembuktian bahwa metode Deep Learning, khususnya CNN. Metode CNN terbukti berhasil mengungguli metode Machine Learning lainnya seperti SVM pada kasus klasifikasi objek pada citra 2.2.2
Konsep CNN
Cara kerja CNN setiap neuron dipresentasikan dalam bentuk dua dimensi, tidak seperti MLP yang setiap neuron hanya berukuran satu dimensi(5). Pada CNN, data yang dipropagasikan pada jaringan adalah data dua dimensi, sehingga operasi linear dan parameter bobot pada CNN berbeda. Pada CNN operasi linear menggunakan operasi konvolusi, sedangkan bobot tidak lagi satu dimensi saja, namun berbentuk empat dimensi yang merupakan kumpulan kernel konvolusi seperti pada Gambar.2. Dimensi bobot pada CNN adalah: neuron input x neuron output x tinggi x lebar Karena sifat proses konvolusi, maka CNN hanya dapat digunakan pada data yang memiliki struktur dua dimensi seperti citra dan suara.
2.2.3
Arsiterktur Jaringan CNN Pada CNN terdiri dari beberapa macam layer utama pada sebuah CNN:
Gambar 1 arsitektur CNN
Dari Gambar 1, dapat dilihat bahwa sebelum diproses dalam classifier, input untuk CNN akan diproses dalam dua tahap. Kedua tahap terdiri dari operasi konvolusi dan subsampling. Dapat juga dilihat bahwa operasi konvolusi dan subsampling akan mengurangi dimensi input. Operasi konvolusi akan mengubah matriks input dua dimensi tunggal menjadi beberapa matriks dua dimensi atau peta fitur yang lebih kecil. Pada akhir tahap kedua, fungsi dilakukan untuk meratakan atau mengubah setiap peta fitur dari matriks dua-dimensi menjadi matriks satu-dimensi sehingga peta fitur siap untuk diklasifikasikan(2).
1)
Convolution Layer Convolution Layer melakukan operasi konvolusi pada output dari layer
sebelumnya. Layer tersebut adalah proses utama yang mendasari sebuah CNN. Pada layer ini citra input akan di ekstraksi untuk mengambi fitur dari citra. Konvolusi akan menghasilkan transformasi linear dari data input sesuai informasi spasial pada data. Bobot pada layer tersebut menspesifikasikan kernel konvolusi yang digunakan, sehingga kernel konvolusi dapat dilatih berdasarkan input pada CNN.
Gambar 2 Operasi Konvolusi
2)
Pooling Layer (subsumpling) Pada pooling layer ini, fitur yang di dapat dari proses convolusi akan di kurangi
dimensinya. Dalam sebagian besar CNN, metode subsampling yang digunakan adalah max pooling. Max pooling membagi output dari convolution layer menjadi beberapa grid kecil lalu mengambil nilai maksimal dari setiap grid untuk menyusun matriks citra yang telah direduksi seperti yang ditunjukkan pada Gambar 3.
Gambar 3. Operasi Max Pooling
3)
Fully Connected Layer Layer tersebut adalah layer yang biasanya digunakan dalam penerapan MLP
dan bertujuan untuk melakukan transformasi pada dimensi data agar data dapat diklasifikasikan secara linear.
Gambar 4 Fully Connected Layer
Daftar Pustaka 1.
Sam’ani, Qamaruzzaman MH. Pengenalan Huruf Dan Angka Tulisan Tangan Mengunakan Metode Convolution Neural Network ( CNN ). J Speed – Sentra Penelit Eng dan Edukasi. 2017;9(2):55–64.
2.
Dewa CK, Fadhilah AL. Convolutional Neural Networks for Handwritten Javanese Character Recognition. 2018;12(1):83–94.
3.
Mangale S, Thombre V. A Survey on Efficient Image Retrieval through User Clicks and Query Semantic Signature. Int J Innov Res Comput Commun Eng (An ISO Certif Organ. 2007;3297(5).
4.
Vijayaraghavan P, Sra M. Handwritten Tamil Recognition using a Convolutional Neural Network. Available from: http://web.media.mit.edu/~sra/tamil_cnn.pdf
5.
Putra IWSE. Klasifikasi Citra Menggunakan Convolutional Neural Network (Cnn) Pada Caltech 101. J Tek ITS [Internet]. 2016;5(1):76. Available from: http://repository.its.ac.id/48842/