Sistem Absensi Menggunakan Wajah Pada Jaringan Syaraf Tiruan Dengan Algoritma Learning Vector Quantization (LVQ)

BAB 2
TINJAUAN PUSTAKA

Bab 2 ini berisi tentang pembahasan teori-teori tentang jaringan syaraf tiruan, Algoritma
Learning Vector Quantization (LVQ).

2.1. Algoritma
Algoritma

adalah urutan langkah-langkah logis

dalam memecahkan suatu

masalah yang disusun secara sistematis dan logis. Langkah-langkah didalam algoritma
harus logis dan dapat ditentukan dengan nilai keluaran benar atau salah. Dalam
beberapa konteks, algoritma adalah urutan langkah-langkah dalam pengerjaan suatu
pekerjaan.
2.2. Biometrik
Biometrik adalah sistem pengenalan / identifkasi pribadi dengan menetukan keaslian
dari suatu karakteristik fisiologis, ataupun perilaku tertentu yang dimiliki oleh si
pengguna. Biometrik berasal dari kata yunani “bios” yang berarti hidup dan “metron”

yang berarti untuk mengukur.
Teknologi biometrik demikian didefinisikan sebagai metode otomatis untuk
mengidentifikasi dan otentikasi identitas seseorang berdasarkan karakteristik fisiologis
maupun perilaku si pengguna. Dunia medis mengatakan bahwa ada beberapa bagian
tubuh kita yang sangat unik. Artinya, tidak memiliki oleh lebih dari satu individu.
Contohnya saja wajah, sidik jari atau retina mata. Meskipun bentuk atau warna bisa saja
sama, namun retina belum tentu sama. Begitu juga dengan suara dan struktur wajah.
Bagian - bagian unik inilah yang kemudian dikembangkan sebagai atribut keamanan.
Kebanyakan sistem biometrik menggunakan dua model operasi. Yang pertama adalah
modus pendaftaran untuk menambahkan template ke dalam database, dan yang kedua
adalah identifikasi, dimana sebuah template dibuat untuk perbandingan individu dan
kemudian di cari dalam database (Munir, 2004).

Universitas Sumatera Utara

7

Karakteristik biometrik dibagi menjadi dua, yaitu biometrik physiological dan
biometrik behavorial (Gonzales et al. 2003) .


1. Physiological
Dihubungkan dengan bentuk tubuh atau badan, misalnya: fingerprints, face
recognition, hand geometry, dan iris recognition.
2. Behavioral
Dihubungkan dengan tingkah laku seseorang, misalnya: keystroke, signature,
voice.

Penggunaan biometrik untuk sistem pengenalan memiliki beberapa keunggulan
dibanding sistem konvensional (penggunaan password, PIN, kartu, dan kunci), di
antaranya (Putra, 2010) :
1. Non-repudation : suatu sistem yang menggunakan teknologi biometrik untuk
melakukan suatu akses, penggunaanya tidak akan menyangkal bahwa bukan dia
yang melakukan akses atau transaksi. Hal ini berbeda dengan penggunaan
password atau PIN. Pengguna masih dapat menyangkal atas transaksi yang
dilakukanya, karena PIN atau password bias dipakai bersama-sama.
2.

Keamanan (security) : sistem berbasis password dapat diserang menggunakan
metode atau algoritma brute force, sedangkan sistem biometrik tidak dapat
diserang dengan cara ini, karena sistem bimetrika membutuhkan kehadiran

pengguna secara langsung pada proses pengenalan.

3. Penyaringan (screening) : proses penyaringan untuk mengatasi seseorang yang
menggunakan banyak identitas, seperti teroris yang dapat menggunakan lebih dari
satu paspor untuk memasuki satu negara. Sebelum menambahkan identitas
seseorang ke sistem, perlu dipastikan terlebih dahulu bahwa identitas orang
tersebut belum terdaftar sebelumnya. Untuk mengatasi masalah tersebut maka
diperlukan proses penyaringan identitas yang mana sistem konvensional tidak
dapat melakukanya. Biometrik mampu menghasilkan atau menyaring beberapa
informasi sidik jari atau wajah yang mirip dengan sidik jari atau wajah yang dicari.

Faktor perbandingan penggunaan biometrik (Daugman, 2007):
a.

Keumuman: tingkat keumuman biometrik bisa ditemui di setiap individu.

Universitas Sumatera Utara

8


b.

Keunikan: tingkat keunikan biometrik pada setiap individu.

c.

Ketahanan: tingkat ketahanan terhadap penuaan.

d.

Pengumpulan: tingkat kemudahan pengumpulan data untuk biometrik.

e.

Performa: tingkat akurasi dan kecapatan alat pengumpul data.

f.

Penerimaan: tingkat penerimaan publik dalam penggunaan sehari-hari.


g.

Keamanan: tingkat keamanan sistem terhadap pemalsuan.

Secara umum terdapat dua model sistem biometrik, yaitu sistem verifikasi
(verification sistem) dan sistem identifikasi (identification sistem). Sistem verifikasi
bertujuan untuk menerima atau menolak identitas yang diklaim oleh seseorang.
Pengguna membuat klaim “positif” terhadap suatu identitas. Diperlukan pencocokan
“satu ke satu” dari sample yang diberikan terhadap acuan (template) yang terdaftar atas
identitas yang diklaim tersebut. Sistem identifikasi bertujuan untuk memecahkan
identitas seseorang. Pengguna dapat tidak memberi klaim atau memberi klaim implicit
negative untuk identitas terdaftar. Diperlukan pencocokan “satu ke banyak”, yaitu
pencarian ke seluruh database identitas terdaftar.

2.3. Pengenalan Pola
Pengenalan pola adalah suatu ilmu untuk mengklasifikasikan atau menggambarkan
sesuatu berdasarkan pengukuran kuantitatif fitur (ciri) atau sifat utama dari suatu obyek.
Pola sendiri adalah suatu entitas yang terdefinisi dan dapat diidentifikasikan serta diberi
nama. Pola bisa merupakan kumpulan hasil atau pemantauan dan bias dinyatakan dalam
notasi vektor atau matriks (Putra, 2010). Pengenalan pola mengelompokkan data

numerik dan simbolik (termasuk citra) secara otomatis oleh komputer. Tujuan
pengelompokan ini adalah untuk mengenali suatu objek dalam citra. Manusia bisa
mengenali objek yang dilihatnya karena otak manusia telah belajar mengklasifikasikan
objek-objek di alam sehingga mampu membedakan suatu objek dengan objek lainya.
Kemampuan visual manusia inilah yang dicoba ditiru oleh mesin atau dalam hal ini
adalah komputer. Komputer menerima input berupa citra objek yang akan di lakukan
proses preprocessing berupa grayscale, thresholding kemudian binerisasi. Setelah itu
akan diidentifikasi, memproses citra tersebut dan memberikan output berupa deskripsi
objek di dalam citra. Gambar 2.1 menunjukkan diagram kotak sederhana dari proses
pengenalan pola.

Universitas Sumatera Utara

9

CITRA

Wajah

Alat Input :

Kamera, scanner

Proses Preprocessing:
Grayscale dan
thresholding

Simpan Gambar
threshold

POLA
Deskripsi
Gambar

Pengenalan
Pola

Proses Preprocessing lanjutan:
Binerisasi

Gambar 2.1 Diagram Sederhana Proses Pengenalan Pola


Sebuah citra objek yang akan dikenali oleh jaringan syaraf tiruan tidak begitu saja
dimasukkan menjadi input sebuah jaringan syaraf tiruan, karena masih berupa data
mentah dan belum sesuai dengan kriteria masukan untuk jaringan syaraf tiruan. Citra
objek tersebut harus diproses terlebih dahulu, tujuannya untuk membantu kemampuan
jaringan dalam mengkomputasikan informasi dari citra objek tersebut (Siregar, 2013).

2.4. Wajah
Wajah atau muka adalah bagian depan dari kepala manusia meliputi wilayah dari dahi
hingga dagu, termasuk alis, mata, hidung, pipi, mulut, bibir, gigi, kulit, dan dagu. Wajah
terutama digunakan untuk ekspresi wajah, penampilan, serta identitas. Tidak ada satu
wajah pun yang serupa mutlak, bahkan pada manusia kembar identik sekalipun. Oleh
sebab itu dengan melihat wajah, kita dapat mengenali atau mengidentifikasi seseorang
dengan lebih mudah.

Universitas Sumatera Utara

10

2.5. Citra

Citra adalah suatu representasi (gambaran), kemiripan, atau imitasi dan suatu obyek
(Sutoyo, dkk. 2009). Citra sebagai keluaran suatu sistem perekaman data dapat bersifat
optik berupa foto, bersifat analog berupa sinyal-sinyal video seperti gambar pada
monitor televisi, atau bersifat digital yang dapat langsung disimpan pada suatu media
penyimpanan. Dalam dunia sehari-hari dapat banyak dijumpai berbagai macam bentuk
citra, baik itu citra analog ataupun citra digital. Citra analog yaitu seperti foto yang
tercetak di kertas foto, gambar sebuah lukisan di kanvas atau ketas, dan lain sebagainya.
Citra analog adalah citra yang bersifat kontinu, seperti gambar pada monitor televisi,
foto sinar-X, foto yang tercetak di kertas foto, lukisan, pemnadangan alam, hasil CT
scan, gambar-gambar yang terekam pada pita kaset, dan lain sebagainya. Citra analog
tidak dapat direpresentasikan dalam komputer sehingga tidak bisa diproses di komputer
secara langsung. Sedangkan Citra Digital adalah citra yang dapat diolah oleh komputer
yang memiliki jenis dan ukuran file dari citra tersebut. Citra digital merupakan citra
yang tersusun dalam bentuk raster (grid / kisi). Setiap kotak (tile) yang terbentuk
disebut piksel dan memiliki koordinat (x,y). Sumbu x (horizontal) : kolom (column),
sumbu y (vertikal) : baris (row,line). Setiap piksel memiliki nilai (value atau number)
yang menunjukkan intensitas keabuan pada piksel tersebut. Derajat keabuan
merepresentasikan gray level atau kode warna (Ainun, 2014).

2.5.1. Citra Grayscale

Grayscale adalah derajat keabu-abuan suatu pixel pada suatu citra yang hanya berisikan
informasi intensitas warna putih dan hitam. Suatu citra dikatakan sebagai Grayslace
apabila sebuah citra tidak memiliki warna RGB atau dapat dikatakan sebuah citra yang
memiliki nilai dari putih yang memiliki intensitas paling besar sampai hitam yang
memiliki intensitas rendah seperti yang dapat dilihat pada gambar 2.2. Citra grayscale
terdiri dari x dan y dalam spasial koordinat dan memiliki nilai intensitasnya masingmasing. Pada citra grayscale setiap gambar memiliki intensitas antara 0 (hitam) hingga
255 (putih) dalam citra 8 bit-nya.

Universitas Sumatera Utara

11

Gambar 2.2 Intensitas grayscale

Gambar 2.3 Citra Grayscale
Dengan algoritma perhitungan tingkat keabuan, piksel dari suatu citra yang
mengandung warna-warna RGB (Red, Green, Blue) diubah menjadi warna dalam
berbagai tingkat keabuan (I) dengan menjumlahkan semua nilai warna kemudian dibagi
tiga sehingga didapat nilai rata-rata.


2.5.2. Thresholding
Threshold adalah suatu cara mempertegas citra dengan mengubah citra menjadi hitam
dan putih (2 bit). Dalam threshold ini, harus ditetapkan suatu variable yang berfungsi
sebagai batas untuk mengkonversi elemen matriks citra menjadi hitam atau putih. Jika
nilai elemen matriks dibawah nilai ini, dikonversi menjadi nilai 0 (hitam), jika diatas
nilai ini, elemen dikonversi menjadi 1. Untuk citra RGB, terlebih dahulu diubah
menjadi grayscale.

Universitas Sumatera Utara

12

Gambar 2.4 Citra Threshold

2.5.3. Tahap Preprocessing Citra
Pada tahap ini image akan diubah dari citra yang memiliki 3 layer RGB menjadi 8
bit derajat keabuan dan akhirnya diubah kembali menjadi citra 2 bit yaitu hitam
dan putih. Proses thresholding ini pada dasarnya adalah proses pengubahan
kuantisasi pada citra, sehingga untuk melakukan thresholding dengan derajat
keabuan .

Citra Asli

RGB Color

Grayscale

Thresholding

Citra Thresholding

Gambar 2.5 Alur Tahap Preprocessing Citra menjadi Threshold

Universitas Sumatera Utara

13

2.6. Jaringan Syaraf Tiruan
Jaringan syaraf tiruan (JST) atau umumnya hanya disebut neural network (NN),
adalah jaringan dari

sekelompok

unit

pemroses

kecil

yang

dimodelkan

berdasarkan sistem syaraf manusia. JST merupakan sistem adaptif yang dapat
mengubah strukturnya untuk memecahkan masalah berdasarkan informasi eksternal
maupun internal yang mengalir melalui jaringan tersebut. Oleh karena sifatnya yang
adaptif, JST juga sering disebut dengan jaringan adaptif.
Secara sederhana, JST adalah sebuah alat pemodelan data statistik non-linier. JST dapat
digunakan untuk memodelkan hubungan yang kompleks antara input dan output untuk
menemukan pola-pola pada data.
Saat ini bidang kecerdasan buatan dalam usahanya menirukan intelegensi manusia,
belum mengadakan pendekatan dalam bentuk fisiknya melainkan dari sisi yang lain.
Pertama-tama diadakan studi mengenai teori dasar mekanisme proses terjadinya
intelegensi. Bidang ini disebut Cognitive Science. Dari teori dasar ini dibuatlah suatu
model untuk disimulasikan pada komputer, dan dalam perkembangannya yang lebih
lanjut dikenal berbagai sistem kecerdasan buatan yang salah satunya adalah jaringan
syaraf tiruan. Dibandingkan dengan bidang ilmu yang lain, jaringan syaraf tiruan relatif
masih baru. Sejumlah literatur menganggap bahwa konsep jaringan syaraf tiruan
bermula pada makalah Waffen McCulloch dan Walter Pitts pada tahun 1943. Dalam
makalah tersebut mereka mencoba untuk memformulasikan model matematis selsel otak. Metode yang dikembangkan berdasarkan sistem syaraf biologi ini, merupakan
suatu langkah maju dalam industri komputer.
Model pada JST pada dasarnya merupakan fungsi model matematika yang
mendefinisikan fungsi f : X ->Y. Istilah "jaringan" pada JST merujuk pada interkoneksi
dari beberapa neuron yang diletakkan pada lapisan yang berbeda. Secara umum, lapisan
pada JST dibagi menjadi tiga bagian:


Lapis masukan (input layer) terdiri dari neuron yang menerima data masukan dari
variabel X. Semua neuron pada lapis ini dapat terhubung ke neuron pada lapisan
tersembunyi atau langsung ke lapisan luaran jika jaringan tidak menggunakan
lapisan tersembunyi.

Universitas Sumatera Utara

14



Lapisan tersembunyi (hidden layer) terdiri dari neuron yang menerima data dari
lapisan masukan.



Lapisan luaran (output layer) terdiri dari neuron yang menerima data dari lapisan
tersembunyi atau langsung dari lapisan masukan yang nilai luarannya
melambangkan hasil kalkulasi dari X menjadi nilai Y.

Gambar 2.6 Model Sederhana Neuron
Secara matematis, neuron merupakan sebuah fungsi yang menerima masukan dari
lapisan sebelumnya

(lapisan ke-i ). Fungsi ini pada umumnya mengolah sebuah

vektor untuk kemudian diubah ke nilai skalar melalui komposisi nonlinear weighted
sum, dimana

, K merupakan fungsi

khusus yang sering disebut dengan fungsi aktivasi dan w merupakan beban atau weight.

Gambar 2.7 Skema Proses Jaringan Syaraf Tiruan melalui jaringan dari unit
pemroses kecil yang saling terhubung (Kumar, Gaurav dkk., 2016)

Universitas Sumatera Utara

15

2.6.1. Learning Vector Quantization (LVQ)
LVQ merupakan suatu metode untuk melakukan pelatihan terhadap lapisan-lapisan
kompetitif yang terawasi. Lapisan kompetitif akan belajar secara otomatis untuk
melakukan klasifikasi terhadap vektor input yang diberikan. Apabila beberapa vektor
input memiliki jarak yang sangat berdekatan, maka vektor-vektor input tersebut akan
dikelompokkan dalam kelas yang sama.
Algoritma:
1. Tetapkan: Bobot Awal (W), Maksimum Epoch (MaxEpoch), dan Learning
rate (α).
2. Masukkan :
a. Input : x(m,n); m adalah jumlah input, n adalah jumlah data.
b. Target : T(1,n)
3. Tetapkan kondisi awal:
a. Epoch=0;
4. Kerjakan jika : (epoch < MaxEpoch)
a. Epoch = epoch + 1
b. Kerjakan untuk i=1 sampai n
- Tentukan J sedemikian hingga || X – Wj || minimum (sebut sebagai
Cj (jarak Euclidian) ) .
- Perbaiki Wj dengan ketentuan:
i. Jika T = Cj maka : Wj(baru) = Wj(lama) + α (X - Wj(lama))
ii. Jika T ≠ Cj maka : Wj(baru) = Wj(lama)- α (X - Wj(lama))
c. Kurangi nilai α
5. Selesai. (Antoni Siahaan, 2011)
Gambar 2.10 menjelaskan arsitektur jaringan LVQ. Dimana X1, Xi,...¸ Xn
adalah input, W11, Wij,..., Wrm adalah bobot dan Y1, Yj,..., Ym adalah output.

Universitas Sumatera Utara

16

Gambar 2.8 Arsitektur Learning Vector Quantization (Risky Meliawati, 2016)
Proses perhitungan LVQ :
Misalnya diketahui 4 input vektor dalam 2 kelas sbb:
No

Data set Vektor

Kelas (T)

1

(1110)

1

2

(1011)

2

No

Input Vektor

Kelas (T)

1

(0110)

1

2

(0011)

2

3

(1111)

1

4

(1001)

2

Dua input pertama dijadikan sebagai inisialisasi bobot:
No

Bobot

Kelas

1

(1110)

1

2

(1011)

2

Data yang lain sebagai data yang akan dilatih
C α=0,05, dan maksimum epoch=10, penurunan α=0,1 . α(lama)

Universitas Sumatera Utara

17

Epoh ke-1 Data ke-1 : (0110)
Bobot ke-1 = √(0 - 1)2 + (1 - 1)2 + (1 - 1)2 + (0 - 0)2 = 1
Bobot ke-2 = √(0 - 1)2 + (1 - 0)2 + (1 - 1)2 + (0 - 1)2 = 1,73
Jarak terkecil pada bobot ke-1 Target data ke-1=1
Bobot ke-1 baru:
W11(baru) = w11(lama)+ α*x11-w11(lama)] = 1+0,05*(0-1) = 0,95
W12(baru) = w12(lama)+ α*x12-w12(lama)] = 1+0,05*(1-1) = 1
W13(baru) = w13(lama)+ α*x13-w13(lama)] = 1+0,05*(1-1) = 1
W14(baru) = w14(lama)+ α*x14-w14(lama)] = 0+0,05*(0-0) = 0
Sehingga w1 = (0,95 1 1 0)
W2 = (1011)

Data ke-2 : (0011)
- Bobot ke-1 = √(0 - 0,95)2 + (0 - 1)2 + (1 - 1)2 + (1 - 0)2 = 1,7
- Bobot ke-2 = √(0 - 1)2 + (0 - 0)2 + (1 - 1)2 + (1 - 1)2 = 1
Jarak terkecil pada bobot ke-2
Target data ke-2 = 2
Bobot ke-2 baru:
W21(baru) = w21(lama)+ α*x21-w21(lama)] = 1+0,05*(0-1) = 0,95
W22(baru) = w22(lama)+ α*x22-w22(lama)] = 0+0,05*(0-0) = 0
W23(baru) = w23(lama)+ α*x23-w23(lama)] = 1+0,05*(1-1) = 1
W24(baru) = w24(lama)+ α*x24-w24(lama)] = 1+0,05*(1-1) = 1
Sehingga w2 = (0,95 0 1 1)
w1 = (0,95 1 1 0)

Data ke-3 : (1111)
- Bobot ke-1 = √(1 - 0,95)2 + (1 - 1)2 + (1 - 1)2 + (1 - 0)2 = 1,0023
- Bobot ke-2 = √(1 - 0,95)2 + (1 - 0)2 + (1 - 1)2 + (1 - 1)2 = 1,0023
Jarak terkecil pada bobot ke-1
Target data ke-3 = 1
Bobot ke-1 baru:
W11(baru) = w11(lama)+ α*x11- w31(lama)] = 0,95+0,05*(1-0,95) = 0,953
W12(baru) = w12(lama)+ α*x12-w32(lama)] = 1+0,05*(1-1) = 1

Universitas Sumatera Utara

18

W13(baru) = w13(lama)+ α*x13-w33(lama)] = 1+0,05*(1-1) = 1
W14(baru) = w14(lama)+ α*x14-w34(lama)] = 0+0,05*(1-0) = 0,05
Sehingga w1 = (0,95 1 1 0,05)
w2 = (0,95 0 1 1)
Data ke-4 : (1001)
- Bobot ke-1 =√ (1 - 0,95)2 + (0 - 1)2 + (0 - 1)2 + (1 - 0,05)2 = 1,704
- Bobot ke-2 = √(1 - 0,95)2 + (0 - 0)2 + (0 - 1)2 + (1 - 1)2 = 1,00125
Jarak terkecil pada bobot ke-2
Target data ke-4 = 2
Bobot ke-1 baru:
W11(baru) = w11(lama)+ α*x11-w31(lama)] = 0,95+0,05*(1-0,95) = 0,953
W12(baru) = w12(lama)+ α*x12-w32(lama)] = 0+0,05*(0-0) = 0
W13(baru) = w13(lama)+ α*x13-w33(lama)] = 1+0,05*(0-1) = 0,95
W14(baru) = w14(lama)+ α*x14-w34(lama)] = 1+0,05*(1-1) = 1
Sehingga w2 = (0,953 0 0,95 1)
w1 = (0,95 1 1 0,05)
sebelum masuk ke Epoh ke-2 α diperbarui
α = 0,1 . α(lama) = 0,1.0,05 = 0,005
..
Sampai dengan epoh maximum = 10
Misalnya setelah epoh ke-10 di dapat bobot-bobot:
w2 = (0,953 0 0,95 1)
w1 = (0,95 1 1 0,05)
Misalnya akan menguji vektor (1011), masuk kelas yang mana?
Maka dilakukan perhitungan untuk mencari jarak
terdekat:
- Bobot ke-2 = (1 - 0,953)2 + (0 - 0)2 + (1 - 0,95)2 + (1 - 1)2 = 0,0686
- Bobot ke-1 = (1 - 0,95)2 + (0 - 1)2 + (1 - 1)2 + (1 - 0,05)2 = 1,38
Minimum pada ke-2 maka masuk kelas ke-2

Universitas Sumatera Utara