Pengembangan Model Pengenalan Wajah Manusia dengan Teknik Reduksi Dimensi Bi- 2DPCA dan Support Vector Machine sebagai

## Classifier
Fredicia 1 , Agus Buono 2 , Endang Purnama Giri 2
1 Program Studi Teknik Informatika, Universitas Kristen Krida Wacana, Jakarta 2
Program Studi Ilmu Komputer, Sekolah Pascasarjana IPB, Bogor fredi.cia@ukrida.ac.id 1 Diterima 2 Februari 2016

## Disetujui 6 Juni 2016
Abstract —This paper presents the modeling of face recognition using feature extraction based on Principal Component Analysis (PCA) and Support Vector Machine (SVM)  as  a  classifier.  Three  PCA  techniques  were compared, they are 1DPCA, 2DPCA and Bi-2DPCA. Meanwhile, three type of SVM kernel functions-linear, polynomial, and radial basis function (RBF) were used. The experiment used the ORL Face Database AT&T Laboratory,  which  contain  400  images  with  10  images per each person. The leave one out method is used for validating each pair of extraction and classifier method. The highest accuracy is obtained by a combination of linear kernel and Bi-2DPCA85%, with 94.25%, and also the fastest computation time, is 15.34 seconds.
Index Terms— Face Recognition, Principle Component Analysis, Kernel, Support Vector Machine, Leave-one Out Cross Validation

## I. P endahuluan
Dengan makin tingginya kemudahan yang diinginkan oleh pengguna komputer, dan didukung oleh perkembangan teknologi komputasi yang semakin canggih, maka berbagai bentuk interface antara manusia dengan komputer juga semakin berkembang. Salah satu teknologi yang banyak diminati adalah pengenalan wajah.  Wajah manusia diciptakan dalam bentuk yang unik. Berbeda dengan sidik jari, suara, tanda tangan, dan pola biometrik lainnya. Pengenalan wajah manusia tidak memerlukan sebuah kegiatan seperti mendekatkan mata ke iris scanner , mengucapkan sesuatu kata melalui mikrofon ataupun menempelkan jari ke fingerprint scanner , namun secara otomatis sebuah kamera melakukan tracking adanya wajah dan dilanjutkan dengan proses pengenalan. Riset mengenai pengenalan wajah manusia mulai banyak dilakukan untuk pengaplikasian sistem kontrol akses, sistem otentikasi identitas, sistem pengawasan, sistem keamanan dan sebagainya [1], tetapi pembuatan model komputasinya sangat sulit.
Sebelumnya riset-riset pengenalan wajah telah menggunakan metode-metode seperti metode Eigen Faces  [2][3],  Fisher’s  Linear  Discriminant  [4], Jaringan  Bayesian  [5],  Jaringan  Saraf  Tiruan  [6], Hidden Markov Model [7]. Akan tetapi semua metode yang telah disebutkan memiliki kelemahan, seperti metode Eigen Faces memiliki masalah ukuran dari gambar dan pencahayaan, Jaringan Saraf Tiruan dan Hidden Markov Model memiliki masalah lamanya waktu pembelajaran [8].
Beberapa penelitian pengenalan wajah telah mencoba menggunakan Principal Component Analysis (PCA) sebagai teknik reduksi dimensi data. Tetapi PCA tidak bisa mendapatkan nilai ciri yang baik. Beberapa pendekatan yang telah dilakukan, salah satunya adalah 2DPCA yang dilakukan oleh Yang J et al. [9]. Perbedaan 2DPCA dengan PCA konvensional adalah citra wajah direpresentasikan ke dalam bentuk matriks secara langsung, sedangkan pada PCA biasa, citra direpresentasikan dalam bentuk vektor. Tetapi metode 2DPCA masih memiliki kelemahan pada saat mereduksi basis data yang besar. Ide dari Bi-2DPCA adalah  melakukan 2DPCA terhadap data yang besar sebanyak dua kali dengan cara mereduksi data secara horizontal dan vertikal[10].
Setelah proses ekstraksi ciri citra wajah, tahapan pengenalan wajah selanjutnya adalah mengklasifikasikan  data  tersebut. Support Vector Machine (SVM) merupakan sebuah metode klasifikasi yang dikembangkan oleh Boser, Guyon, Vapnik, dengan memiliki prinsip dasar sebagai linear classifier dan selanjutnya dengan konsep kernel trick diimplementasikan pada masalah non-linear. Konsep SVM dapat dijelaskan secara sederhana sebagai usaha mencari hyperplane terbaik yang berfungsi sebagai pemisah dua buah kelas pada input space [11]. Banyak penelitian mulai menerapkan metode SVM sebagai classifier , salah satunya pengenalan citra wajah.
Pada awalnya SVM digunakan untuk

## ISSN 2085-4552
mengklasifikasikan  dua  kelas.  Kemudian  dicoba diterapkan  untuk  kondisi  klasifikasi  lebih  dari  dua kelas yang disebut Multiclass SVM [12]. Pendekatan yang sering digunakan dalam multiclass problem ada dua teknik, yaitu one against one dan one against all . Pendekatan dengan menggunakan one against one akan melakukan pengklasifikasian kelas sebanyak n(n- 1)/2 kelas. Sedangkan pendekatan menggunakan one against all akan  melakukan  pengklasifikasian  kelas sebanyak (n-1) kelas.
Dalam klasifikasi data, SVM memiliki kemampuan klasifikasi  data  yang  baik  dengan  mengorbankan waktu komputasi. Kelemahan SVM ini akan ditutupi dengan menggunakan metode Bi-2DPCA yang bisa mereduksi dimensi data yang besar. Oleh karena itu, pada penelitian yang melibatkan 400 citra wajah ini dilakukan integrasi antara Bi-2DPCA sebagai ekstraksi ciri dengan SVM sebagai pengenal pola. Dengan integrasi tersebut, diharapkan mendapatkan nilai akurasi yang lebih baik dan waktu komputasi yang lebih cepat.  Sebagai pembanding, maka pada penelitian ini juga dilakukan pemodelan ekstraksi ciri dengan 1DPCA dan 2DPCA.
Selanjutnya paper ini disusun dengan struktur sebagai berikut: bagian kedua berisi tinjauan pustaka, bagian ketiga yang menyajikan data dan metode yang dilakukan, bagian keempat menyajikan hasil dan pembahasan, dan dibagian akhir akan dideskripsikan kesimpulan serta saran untuk penelitian selanjutnya.

## II. T Injauan PusTaka

## A. 1D PCA
Ide utama dari principal component analysis (PCA) adalah mengurangi dimensionalitas dari set data yang mengandung banyak sekali variabel yang berinterelasi, dengan tetap mempertahankan sebanyak mungkin informasi (variansi data). Dalam mereduksi dimensi, PCA akan memaksimumkan variansi data. Data yang digunakan berjumlah N buah sampel {x 1 , x 2 , …, x n } dengan ruang dimensi data, n. Kemudian dicari nilai rata-rata dari data yang ada dan dituliskan dalam Matriks A = dimana dan . Langkah berikutnya adalah mentransformasi secara linear dari ruang dimensi data n menjadi dimensi m dimana m < n yang nantinya akan digunakan untuk membentuk vektor fitur baru , , dimana k = 1,2,…, N dan merupakan matriks dengan kolom orthonormal. Pencarian matriks kovarian dengan
N merupakan jumlah dari data sampel, yang nantinya akan digunakan mencari vektor eigen dan nilai vektor. Dalam reduksi dimensi data, akan digunakan nilai eigen terbesar sebanyak i, sehingga hasil reduksi merupakan hasil paling optimal yang bisa mewakili
data tersebut [13].
B. 2D PCA
Dalam tulisan Yang J et a l.[9],  metode  1D  PCA merubah terlebih dahulu citra wajah menjadi vektor citra 1D. Perubahan ini menyebabkan dimensi ruang vektor citra menjadi sangat besar, sehingga perhitungan matirks kovarian secara akurat serta perhitungan nilai eigen dan vektor eigen dari matriks kovarian menjadi relatif lebih sulit. Metode 2DPCA tetap merepresentasikan citra wajah dengan matriks yang memiliki kelebihan:
1.  Matriks kovarian yang terbentuk jauh lebih kecil, sehinggan evaluasi terhadap matriks kovarian lebih akurat.
2.  Waktu untuk menghitung nilai eigen dan vektor eigen lebih cepat.
C. Bi-2D PCA
Dalam menggunakan metode 2DPCA, korelasi data hanya diperhatikan secara horisontal saja. Hal ini menyebabkan hasil reduksi data masih terlalu besar dibandingkan dengan PCA yang tidak bisa mewakili representasi dari data, sehingga kecepatan dalam klasifikasi  menjadi  lebih  lamban  dan  memerlukan kapasitas penyimpanan lebih  besar  untuk basis data yang besar.
Menurut Yang J et al. [10],  ide  dari  Bi-2DPCA adalah melakukan 2DPCA sebanyak dua tahap, dimana tahap pertama dilakukan reduksi data dilakukan secara horisontal dan tahap kedua dilakukan secara vertikal. Sebagai ilustrasi dari Bi-2DPCA dapat dilihat dari Gambar 1.
Gambar 1.  Tahapan Bi-2DPCA Dalam Bi-2DPCA, data A yang berukuran m x n akan diproses dengan metode 2DPCA untuk mencari matriks fitur B yang berukuran m x q. Hasil 2DPCA pertama, matriks B yang sudah ditranspose dengan ukuran q x m diproses kembali dengan 2DPCA yang akan mendapatkan matriks fitur C yang berukuran q x p.
D. Support Vector Machine Support Vector Machine (SVM) merupakan sebuah  metode  klasifikasi  yang  dikembangkan  oleh Boser, Guyon, Vapnik, dengan memiliki prinsip
dasar sebagai linear classifier dan selanjutnya dengan konsep kernel trick yang diimplementasi pada masalah non-linear. Konsep SVM dapat dijelaskan secara sederhana  sebagai usaha mencari hyperplane terbaik yang berfungsi sebagai pemisah dua buah class pada input space [14].
Gambar 2a memperlihatkan beberapa pattern yang merupakan anggota dari dua buah class : +1 dan -1. Sedangkan saat SVM menemukan hyperplane terbaik untuk kedua buah class ditunjukkan pada Gambar
2b.Semua data latih dengan dimensi M disimbolkan dengan dimana setiap data   berasal dari dari salah satu dari dua kelas yang yang diberi label . Sebuah garis pemisah dari dua kelas dianggap optimal  jika (1)
dimana i = 1,…M.
Gambar 2. SVM dalam menemukan hyperplane
terbaik +1 dan -1
E. Metode Leave One Out Cross Validation
Menurut Borovicka et al. [15], metode leave-one- out cross validation (LOOCV) merupakan metode pengujian yang digunakan untuk membuktikan sebuah batasan kesalahan metode yang diujikan dengan memanfaatkan 1 data uji saja. Misalkan dalam sebuah pengujian memiliki N buah data, maka akan dilakukan N kali eksperimen. Dalam setiap eksperimen akan menggunakan N-1 data latih dan sisanya untuk pengujian. Setelah eksperimen sampai ke–N, akan dihitung nilai error dengan (2). LOOCV memiliki kelebihan dengan variasi pengujian yang banyak sehingga metode yang diuji tidak bias.
(2)
III. d aTa dan m eTode
A. Data Data yang dipergunakan dalam penelitian ini diambil dari ORL Database of Faces , AT&T Laboratory Cambridge, dengan alamat website http://www.cl.cam. ac.uk/research/dtg/attarchive/facedatabase.html. Citra wajah ORL memiliki variasi pencahayaan, ekspresi wajah berbeda dengan kacamata atau tanpa kacamata. Semua citra wajah diambil dengan latar citra yang sama dengan pose wajah yang melihat ke depan.
Citra wajah disimpan dalam format PGM ( Portable Gray Map ). Database tersebut terdiri dari 40 wajah dengan masing-masing 40 citra keabuan berukuran 92x112 piksel,  sehingga seluruhnya ada 400. Gambar 3 menyajikan 10 citra dari salah satu wajah yang ada dalam database .
Gambar 3.  Citra wajah ORL Database of Faces

## B.  Metode
Tahap pertama adalah melakukan pemilihan antara data latih dengan data uji.  Teknik yang dipergunakan adalah melalui Leave-One Out (LOO) cross validation .
Dalam hal ini, satu data citra dari setiap wajah secara berangsur dipisahkan untuk menjadi data uji, dan sisanya (9 citra) sebagai data latih.  Dengan demikian, secara keseluruhan ada 10 kali percobaan. Ilustrasi proses LOO adalah disajikan pada Gambar 4.
Gambar 4.  Gambaran metode Leave-One Out Setelah pembagian data, proses dilanjutkan dengan melakukan analisis transformasi pengubah dengan 1DPCA, 2DPCA, dan Bi-2DPCA yang hasilnya adalah matriks transformasi sesuai dengan jumlah komponen atau kontribusi peubah hasil yang diinginkan. Dalam penelitian ini, nilai kontribusi pengubah hasil yang dicobakan adalah 85%, 90%, dan 95%. Berdasarkan matriks ini, selanjutnya setiap data citra ditransformasikan ke ruang eigen.  Matriks ini nantinya juga dipergunakan untuk mentransformasi data citra uji.
Hasil ekstraksi ciri citra uji di atas dipergunakan untuk membentuk parameter model klasifikasi.  Model yang digunakan adalah Support Vector Machine (SVM) dengan fungsi kernel yang dicoba adalah kernel Linear, Polynomial, dan RBF. Parameter yang digunakan untuk kernel RBF dipilih menggunakan 3- Fold Cross Validation dengan nilai C = {2 -5 ,…,2 14 } dan Sigma = {2 -15 ,…,2 3 } yang digunakan dalam penelitian sebelumnya yang dilakukan oleh Le TH

## ISSN 2085-4552
dan Bui L [16].
Untuk menghemat waktu komputasi pada saat klasifikasi,  digunakan  teknik one against all [17] [18].  Berdasar  model  ini,  selanjutnya  data  uji yang telah ditransformasi ke ruang eigen dengan mengalikannya dengan matriks transformasi diatas akan  diklasifikasikan  menggunakan  model  SVM tersebut. Pengukuran akurasi dari masing-masing model tersebut didapatkan berdasarkan jumlah citra  wajah  yang  terklasifikasi  dengan  baik  dengan menggunakan persamaan:

## (3)
Sedangkan waktu yang diperlukan untuk pengenalan wajah didapatkan dari waktu untuk melakukan  ekstraksi  ciri  dan  waktu  klasifikasi  yang diperlukan dengan menggunakan SVM. Tahapan lengkap dari metode penelitian ini disajikan pada Gambar 5.
Gambar 5.  Tahapan penelitian
IV. h asIl dan Pembahasan
Tabel 1,2 dan 3 menyajikan nilai akurasi dari semua percobaan yang dilakukan.
Tabel 1. Rata-rata akurasi pengenalan wajah untuk nilai konstruksi 95% 1DPCA 95(%) 2DPCA 95(%) BI2DPCA 95(%) Linear 93,00 75,25 69,25 Poly2 73,00 35,25 30,00 Poly3 25,00 Gagal RBF 88,25 Tabel 2. Rata-rata akurasi pengenalan wajah untuk nilai konstruksi 90% 1DPCA 90(%) 2DPCA 90(%) BI2DPCA 90(%) Linear 94,00 89,25 90,25 Poly2 79,00 72,50 75,00 Poly3 56,00 Gagal 59,00 RBF 91,75 68,00 Tabel 3. Rata-rata akurasi pengenalan wajah untuk nilai konstruksi 85% 1DPCA 85(%) 2DPCA 85(%) BI2DPCA 85(%) Linear 94.00 94.00 94.25 Poly2 85.75 84.00 90.00 Poly3 72.00 Gagal 81.00 RBF 93.50 92.00
Dari tabel tersebut terlihat bahwa akurasi tertinggi adalah 94,25% dan terendah adalah 25%. Nilai akurasi yang tertinggi diperoleh dengan kernel linear dan dan ekstraksi ciri Bi-2DPCA85%.  Ada beberapa hal yang bisa disimpulkan dari Tabel 1, yaitu, pola akurasi kernel pada setiap ekstraksi ciri adalah sama.
Hal ini berarti tidak ada hubungan antara ekstraksi ciri yang dipergunakan dengan kernel pada SVM. Kedua adalah, pada penelitian ini terlihat SVM tidak bisa mengklasifikasikan data yang berdimensi besar. Semakin besar reduksi dimensi yang dilakukan, semakin tinggi nilai akurasi yang didapatkan.
Pada ketiga tabel terlihat adanya kegagalan pengklasifikasian  data  yaitu  pada  saat  penggunaan kernel orde 3 dan RBF memisahkan kelas pada saat metode ekstrasi ciri 2DPCA dan Bi-2DPCA. Kegagalan itu terjadi pada saat pencarian pemisahan kelas dengan hyperplane yang terbaik, pada kondisi tersebut kegagalan bisa disebabkan karena ketidakseimbangan di antara jumlah data  positif dengan data negatif [19].
Gambar 6.  Perbandingan Waktu Komputas dari 4 kernel untuk setiap ekstraksi ciri Dari aspek waktu komputasi, terlihat bahwa waktu pemrosesan lebih dipengaruhi oleh persentasi komponen yang dipilih. Makin tinggi komponen yang dipilih, terlihat waktu makin lama.  Hal yang menarik adalah adanya fakta bahwa makin tinggi komponen tidaklah secara otomatis menaikkan akurasi. Dari percobaan justru terlihat dengan komponen sebesar 85% memberikan waktu komputasi terendah sebesar 15,34 detik dan waktu komputasi paling tinggi  sebesar 252,68 detik pada saat komponen sebesar 95%.

## V. s ImPulan
Penelitian Pengenalan Citra Wajah dengan ekstraksi ciri  Bi-2DPCA  dan  SVM  sebagai  klasifikasi  yang melibatkan sebanyak 400 citra wajah mendapatkan bahwa metode ekstraksi ciri Bi-2DPCA dan SVM lebih baik baik dibandingkan 1DPCA dan 2DPCA dengan SVM. Hal ini terlihat pada teknik reduksi dimensi Bi-2DPCA bisa mengurangi waktu yang diperlukan dalam klasifikasi oleh Support Vector Machine sebesar 27% dibandingkan dengan 1DPCA dan 72% dengan 2DPCA. Dari sisi akurasi teknik Bi-2DPCA dengan jumlah ciri 80 buah ciri menghasilkan akurasi tertinggi 94,25% dan waktu komputasi terendah 15,34  detik dibandingkan 1DPCA dengan jumlah ciri 78 buah ciri.
Dalam mendapatkan model pengenalan wajah, penelitian ini mendapatkan beberapa pertimbangan yang lebih baik untuk menjadi bahan penelitian lanjutan yaitu pengujian dengan menggunakan citra yang telah disegmentasi sebelum dilakukan ekstraksi ciri dan perlakuan yang lain terhadap citra wajah.
d afTar P usTaka
[1] A. Jain, D. Maltoni, D. Maio dan J. Wayman, 2005. “Biometric Systems Technology, Design and Performance Evaluation”, Springer, 2005.
[2] M. Turk dan A. Pentland, “Eigenfaces for recognition”. Journal of cognitive neuroscience, vol. 3(1), hal 71-86, 1991.
[3] H. Moon dan P.J. Phillips, “Computational and performance aspects of PCA-based face-recognition algorithms”. Perception, vol.  30(3), hal. .303-321, 2001.
[4] Q. Liu, R. Huang, H. Lu dan S. Ma, “Face recognition using kernel-based fisher discriminant analysis. In Automatic Face
and Gesture Recognition”, 2002. Proceedings. Fifth IEEE
International Conference on (hal. 197-201). IEEE., Mei 2002
[5] B. Moghaddam,  T. Jebara dan A. Pentland,.”Bayesian face recognition”. Pattern Recognition, vol. 33(11), hal.1771-
1782, 2000.
[6] S. Lawrence, C.L. Giles, A.C. Tsoi dan A.D. Back, “Face recognition: A convolutional neural-network approach”. Neural Networks, IEEE Transactions on, vol. 8(1), hal .98- 113, 1997.
[7]  A.V.  Nefian  dan  M.H.  Hayes  III,  “Face  detection  and recognition using hidden Markov models”. In Image Processing, 1998. ICIP 98. Proceedings. 1998 International Conference on (Vol. 1, hal. 141-145). IEEE., Oktober 1998.
[8] S. Chowdhury, J.K. Sing, D.K. Basu dan M.Nasipuri, “Face recognition by generalized two-dimensional FLD method and multi-class support vector machines”. Applied Soft Computing, vol. 11(7), hal. 4282-4292, 2011.
[9] J. Yang, D. Zhang, A.F. Frangi dan J.Y. Yang, “Two- dimensional PCA: a new approach to appearance-based face representation and recognition”. Pattern Analysis and Machine Intelligence, IEEE Transactions on, vol 26(1), hal. 131-137, 2004.
[10] J. Yang, , J.Y. Yang dan Y. Xu, “Bi-2DPCA: a fast face coding method for recognition”. INTECH Open Access Publisher, , 2010.
[11] A.S. Nugroho, A.B. Witarto dan D. Handoko, “Support Vector Machine Teori dan Aplikasinya dalam Bioinformatika”. Ilmu Komputer, , 2003.
[12] S. Abe dan T. Inoue, “Fuzzy support vector machines for multiclass problems”. In ESANN (hal. 113-118) , April 2002.
[13] Nhat, Vo Dinh Minh dan Sungyoung Lee. “Improvement on PCA and 2DPCA algorithms for face recognition.” Image and Video Retrieval. Springer Berlin Heidelberg,. Hal.  568-577, 2005.
[14] Anto, Nugroho Satriyo, Arief Budi Witarto, dan Dwi Handoko. “Support Vector Machine-Teori dan Aplikasinya dalam Bioinformatika.” dari http://ilmukomputer. com (2003).
[15] Tomas Borovicka, Marcel Jirina Jr., Pavel Kordik dan Marcel Jirina, “Selecting Representative Data Sets”, Advances in Data Mining Knowledge Discovery and Applications, Associate Prof. Adem Karahoca (Ed.), InTech, DOI: 10.5772/50787. Available from: http://www.intechopen.com/books/advances- in-data-mining-knowledge-discovery-and-applications/ selecting-representative-data-sets , (2012).
[16] T.H. Le dan L. Bui, “Face recognition based on SVM and 2DPCA”. International Journal of Signal Processing, Image Processing and Pattern Recognition., Vol. 4(3), hal. 85 -93, 2011
[17] J. Milgram, M. Cheriet dan R. Sabourin, , October. “One Against One” or “One Against All”: Which One is Better for Handwriting Recognition with SVMs?. In Tenth International Workshop on Frontiers in Handwriting Recognition. Suvisoft, Oktober 2006.
[18]  G. de Lannoy, D. François dan M. Verleysen, “Class-specific feature selection for one-against-all multiclass svms”. In Proceedings  of  the  19th  European  Symposium  on Artificial Neural Networks, Computational Intelligence and Machine Learning (ESANN 2011).
[19] Akbani, Rehan, Stephen Kwek, dan Nathalie Japkowicz. “Applying support vector machines to imbalanced datasets.” Machine  learning:  ECML . Springer Berlin Heidelberg, 2004. 39-50, 2004.