PENGENALAN EKSPRESI WAJAH PADA VIDEO BERBASIS DEEP LEARNING MENGGUNAKAN MOBILENET V2 TUGAS AKHIR Disusun Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Teknik Pada Jurusan Teknik Informatika Oleh M RAFI DARWIS NIM. 11451101784 FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SULTAN SYARIF KASIM RIAU PEKANBARU 2022
LEMBAR HAK ATAS KEKAYAAN INTELEKTUAL Tugas Akhir yang tidak diterbitkan ini terdaftar dan tersedia di Perpustakaan Universitas Islam Negeri Sultan Syarif Kasim Riau adalah terbuka untuk umum dengan ketentuan bahwa hak cipta pada penulis. Referensi kepustakaan diperkenankan dicatat, tetapi pengutipan atau ringkasan hanya dapat dilakukan seizin penulis dan harus disertai dengan kebiasaan ilmiah untuk menyebutkan sumbernya. Penggandaan atau penerbitan sebagian atau seluruh Tugas Akhir ini harus memperoleh izin dari Dekan Fakultas Sains dan Teknologi Universitas Islam Negeri Sultan Syarif Kasim Riau. Perpustakaan yang meminjamkan Tugas Akhir ini untuk anggotanya diharapkan untuk mengisi nama, tanda peminjaman dan tanggal pinjam. iv
LEMBAR PERNYATAAN Dengan ini saya menyatakan bahwa dalam Tugas Akhir ini tidak terdapat karya yang pernah diajukan untuk memperoleh gelar kesarjanaan di suatu Perguruan Tinggi, dan sepanjang pengetahuan saya juga tidak terdapat karya atau pendapat yang pernah ditulis atau diterbitkan oleh orang lain kecuali yang secara tertulis diacu dalam naskah ini dan disebutkan didalam daftar pustaka. Pekanbaru, Yang membuat pernyataan, M RAFI DARWIS NIM. 11451101784 v
LEMBAR PERSEMBAHAN Alhamdulillahi Rabbil'alamiin... Rasa syukur kuhaturkan kepada-Mu, Yaa Allah yang Maha Ber-Ilmu, hanya karena karunia-Mu lah hamba-Mu akhirnya dapat menyelesaikan Tugas Akhir ini ***** Allah Azza Wa Jalla Sholawat serta salam untuk Rasulullah Muhammad Shallallahu 'Alaihi Wasalllam ***** Kupersembahkan karya sederhana ini, Tugas Akhir ini, untuk Ayah dan Ibu. Tentulah tidak akan tergantikan semua jasa, pengorbanan, tetes keringat, dan rasa letih itu, hanya dengan karya kecil dariku ini... Namun semoga dengan ini, aku dapat mengukir sebaris senyum bahagia di hati Ayah dan Ibu. Jika boleh kujabarkan cinta,, tentulah tidak pernah dapat seindah rasa syukurku menjadi anakmu... Terimakasih untuk semua rangkaian do'a, kasih sayang serta ilmu yang berharga... Dan tidak lupa kupersembahkan untuk semua adik-adikku tersayang, terimakasih untuk semua do'a dan dukungan yang telah diberikan selama ini... Juga, kupersembahkan untuk semua keluargaku dan kerabat... Semua kesulitan seolah lenyap saat mengingat bahwa aku memiliki dukungan dan do'a darimu semua. Aku tahu, engkau semua berjuang jauh lebih keras dariku, namun selalu memiliki energi yang hebat untuk menyemangatiku... Alhamdulillah, Allah menganugerahiku keluarga, kerabat, dan kehidupan yang indah. vi
ABSTRAK Ekspresi wajah merupakan cara komunikasi non-verbal yang sering digunakan manusia, mudah dimengerti dan memberikan informasi terbesar yaitu 55% informasi dalam berinteraksi. Pengenalan ekspresi wajah secara otomatis menjadi penelitian yang aktif beberapa tahun terakhir dibidang computer vision. Beberapa peneliti menghadapi tantangan atau kendala penelitian seperti dataset yang terbatas, biaya proses komputasi tinggi dan implementasi pengenalan ekspresi yang efektif dan efesien. Penelitian ini melakukan pengenalan ekspresi wajah pada video dengan berbasis deep learning menggunakan arsitektur MobileNetV2. Beberapa tahapan penelitian seperti pengolahan data dilakukan seperti preprocessing dan augmentasi data. Tahapan pemodelan menggunakan tiga jenis dataset yaitu bing, imed dan gabungan keduanya. Pembagian data training dan testing dilakukan dengan split dataset dengan ratio data 80%:20% dengan hasil rata-rata akurasi bing 71%, imed 95% dan bingimed 73%. Skenario selanjutnya yaitu melakukan penerapan augmentasi pada dataset bingimed dan mendapatkan akurasi 63% dengan teknik real-time augmentasi. Implementasi pengenalan ekspresi pada video dilakukan dengan menkonversi model kedalam tensorflowjs dan melakukan prediksi secara real-time dengan website dan webcam. Kata kunci: Deep Leaning, Ekspresi Wajah, MobileNetV2, Prediksi Ekspresi, Video vii
ABSTRACT Facial expressions are a non-verbal way of communication frequently used by humans, easy to understand, and provide valuable information with 55% of the information in communication. Facial expression recognition has become active research in recent years in the study of computer vision. Some researchers have challenges or constraints like limited datasets, costs of computation, and effective implementation of facial expression recognition with video. The research does facial expression recognition of deep learning-based using MobileNetV2 architecture. Phases of experimental research done at data are preprocessing and augmentation data. Modeling against dataset and architecture step using 3 types of dataset named bing, imed, and mixed bingimed. Separated data for training data and testing data performed with split dataset ratio 80%:20% of the dataset with accuracy achieved for bing 71%, imed 95%, and bingimed 73%. Scenario of augmentation data to bingimed datasets and get 63% accuracy with real-time augmentation techniques. Application of facial expression recognition (FER) with video data work on model conversion to TensorFlowJS and doing prediction implementation in real-time with website and camera. Keywords: deep learning, expression prediction, facial recognition, mobilenetv2, video viii
KATA PENGANTAR Assalammu'alaikum Warahmatullahi Wabarakatuh. Alhamdulillahi rabbil 'alamin, segala puji dan syukur penulis ucapkan kehadirat Allah Subhanahu wa ta'ala, yang telah mencurahkan rahmat dan hidayah-Nya kepada penulis. Shalawat dan salam buat baginda Rasulullah Shalaallahu 'alaihi wassalam, sebagai seorang sosok pemimpin dan suri tauladan bagi seluruh umat di dunia yang patut dicontoh dan diteladani bagi kita semua. Atas ridho Allah Subhanahu wa ta'ala penulis dapat menyelesaikan Tugas Akhir ini dengan judul "PENGENALAN EKSPRESI WAJAH PADA VIDEO BERBASIS DEEP LEARNING MENGGUNAKAN MOBILENET V2". Selama pelaksanaan Tugas Akhir ini, penulis mendapat banyak pengetahuan, bimbingan, serta dukungan dan masukan yang positif dari berbagai pihak yang telah membantu dari awal hingga penulis dapat menyelesaikan laporan ini. Oleh karena itu, penulis mengucapkan terimakasih kepada: 1. Bapak Prof. Dr. Khairunnas, M.Ag selaku Rektor Universitas Islam Negeri Sultan Syarif Kasim Riau. 2. Bapak Dr. Hartono, M.Pd selaku Dekan Fakultas Sains dan Teknologi Universitas Islam Negeri Sultan Syarif Kasim Riau. 3. Bapak Iwan Iskandar, M.T selaku Ketua Prodi Teknik Informatika Universitas Islam Negeri Sultan Syarif Kasim Riau. 4. Ibu Novi Yanti, S.T., M.Kom, selaku Pembimbing Akademik Penulis di Fakultas Sains dan Teknologi di Universitas Islam Negeri Sultan Syarif Kasim Riau. 5. Ibu Fadhilah Syafria, ST, M.Kom selaku Koordinator Tugas Akhir. 6. Bapak Benny Sukma Negara, MT selaku Pembimbing I Tugas Akhir. 7. Bapak Suwanto Sanjaya, ST, M.Kom selaku Pembimbing II Tugas Akhir. ix
8. Bapak Febi Yanto, S.Kom, M.Kom selaku Penguji I Tugas Akhir. 9. Bapak Dr. Rahmad Kurniawan selaku Penguji II Tugas Akhir. 10. Kedua orang tua, Ibu Supiah dan Bapak Ahmad M yang telah sabar dan selalu memberikan dukungan serta doa tiada henti-hentinya 11. Seluruh keluarga penulis, Bang Nawan, Kakak Latifah, Bpk M Nasir, Ibu Juriana serta sdri Aznia Fatma yang terus memberikan dukungan. 12. Teman-teman seperjuangan Tugas Akhir yang telah memberikan sumbangan ide dan semangat kepada penulis. Semoga bantuan yang telah diberikan baik moril maupun materil mendapat balasan pahala dari Allah Subhanahu wa ta'ala, dan sebuah harapan dari penulis semoga Laporan Penilitian Tugas Akhir ini dapat bermanfaat bagi penulis dan para pembaca semua pada umumnya. Semua kekurangan hanya datang dari penulis dan kesempurnaan hanya milik Allah Subhanahu wa ta'ala, hal ini membuat penulis menyadari bahwa dalam pembuatan Laporan Tugas Akhir ini masih jauh dari kesempurnaan karena keterbatasan kemampuan, pengalaman, dan pengetahuan penulis. Untuk itu penulis mengharap kritik dan saran dari semua pihak yang bersifat positif dan membangun demi kesempurnaan Laporan Tugas Akhir ini. Wassalamualaikum wa rahmatullahi wa 'barakaatuh. Pekanbaru, 12 Januari 2022 Penulis, M Rafi Darwis x
DAFTAR ISI LEMBAR PERSETUJUAN... ii LEMBAR PENGESAHAN ... iii LEMBAR HAK ATAS KEKAYAAN INTELEKTUAL ... iv LEMBAR PERNYATAAN ... v LEMBAR PERSEMBAHAN ... vi ABSTRAK ... vii ABSTRACT ... viii KATA PENGANTAR ... ix DAFTAR ISI ... xi DAFTAR GAMBAR ... xiv DAFTAR TABEL ... xvi DAFTAR RUMUS ... xvii BAB 1 PENDAHULUAN ... 1 1.1 Latar Belakang ... 1 1.2 Rumusan Masalah ... 4 1.3 Batasan Masalah ... 4 1.4 Tujuan Penelitian ... 4 1.5 Manfaat Penelitian ... 5 BAB 2 KAJIAN PUSTAKA ... 6 2.1 Ekspresi Wajah ... 6 2.2 Face Recognition ... 8 2.3 Image Classification ... 8 2.4 Deep Learning ... 8 xi
2.5 Convolutional Neural Network ... 9 2.5.1 Convolutional Layer ... 10 2.5.2 Pooling Layer ... 12 2.5.3 Flatten ... 14 2.5.4 Activation Layer ... 14 2.5.5 Dropout Regularization ... 19 2.5.6 Fully Connected Layer ... 20 2.5.7 Softmax ... 20 2.6 MobileNet ... 21 2.7 Penelitian Terkait ... 23 BAB 3 METODOLOGI PENELITIAN... 31 3.1 Pengumpulan Data ... 31 3.2 Preprocessing ... 32 3.3 Pemodelan MobileNetV2 ... 33 3.4 Analisis dan Evaluasi ... 34 3.5 Prediksi Ekspresi Video ... 35 3.6 Kesimpulan ... 36 BAB 4 PEMBAHASAN ... 37 4.1 Analisa dan Perancangan ... 37 4.1.1 Pengumpulan Data ... 37 4.1.2 Persiapan Data ... 39 4.1.3 Skenario Eksperimen ... 40 4.2 Implementasi ... 41 4.2.1 Pemodelan (Modelling) ... 41 4.2.2 Analisis dan Evaluasi ... 45 xii
4.2.3 Prediksi Ekspresi Video ... 56 BAB 5 PENUTUP ... 62 5.1 Kesimpulan ... 62 5.2 Saran ... 62 DAFTAR PUSTAKA ... 63 LAMPIRAN ... 70 xiii
DAFTAR GAMBAR Gambar 1 Proses Convolutional Neural Network ... 10 Gambar 2 Convolutional Layer ... 12 Gambar 3 Average Pooling ... 13 Gambar 4 Flatten ... 14 Gambar 5 Binary Step Function ... 15 Gambar 6 Fungsi Linear... 16 Gambar 7 Fungsi Sigmoid ... 17 Gambar 8 Fungsi Tanh ... 18 Gambar 9 Fungsi Aktivasi ReLU ... 18 Gambar 10 Dropout Regularization ... 19 Gambar 11 Fully Connected Layer ... 20 Gambar 12 MobileNet Block ... 22 Gambar 13 Metodologi Penelitian ... 31 Gambar 14 Arsitektur Model MobileNetV2 ... 33 Gambar 15 Confusion Matrix ... 34 Gambar 16 Teknik Prediksi Video ... 35 Gambar 17 Indonesia Mixed Emotion Dataset (IMED) ... 38 Gambar 18 Bing Images ... 38 Gambar 19 Tahap Preprocessing (Crop) ... 39 Gambar 20 Load Library Keras Python ... 42 Gambar 21 Inisialisasi Data ... 42 Gambar 22 Contoh Data Gambar pada Dataset ... 43 Gambar 23 Visualisasi Pelabelan Data ... 44 Gambar 24 Visualisasi Jumlah Data ... 44 Gambar 25 Split Dataset ... 45 Gambar 26 Load Library MobileNetV2 ... 45 Gambar 27 Hasil Akurasi Pengujian Dataset BING ... 46 Gambar 28 Hasil Confusion Matrix Penujina Dataset BING ... 47 xiv
Gambar 29 Hasil Perhitungan dari Confusion Matrix... 48 Gambar 30 Grafik Akurasi Dataset IMED... 49 Gambar 31 Hasil Confusion Matrix Dataset IMED ... 49 Gambar 32 Hasil Perhitungan akurasi, presisi, recall dan f1-score ... 50 Gambar 33 Grafik Akurasi Pengujian Dataset BINGIMED ... 51 Gambar 34 Hasil Confusin Matrix Dataset BINGIMED ... 51 Gambar 35 Hasil Akurasi, Presisi, Recall dan f1-score ... 52 Gambar 36 Grafik Akurasi Non Augmentasi... 53 Gambar 37 Hasil Confusion Matrix Non Augmentasi ... 53 Gambar 38 Hasil Akurasi, Presisi, Recall dan F1-Score Non Augmentasi ... 54 Gambar 39 Grafik Akurasi Real-Time Augmentasi ... 55 Gambar 40 Hasil Confusion Matrix Real-Time Augmentasi ... 55 Gambar 41 Hasil Akurasi, Presisi, Recall, F1-Score Real-Time Augmentasi ... 56 Gambar 42 Alur Proses Prediksi Ekspresi pada Video ... 56 Gambar 43 Struktur Halaman Website ... 58 Gambar 44 Gambar Prediksi Wajah Angry (Marah)... 59 Gambar 45 Gambar Prediksi Wajah Disgust (Jijik) ... 59 Gambar 46 Gambar Prediksi Wajah Fear (Takut) ... 60 Gambar 47 Gambar Prediksi Wajah Happy (Senang) ... 60 Gambar 48 Gambar Prediksi Wajah Surprise (Terkejut) ... 61 Gambar 49 Gambar Prediksi Wajah Sad (Sedih) ... 61 xv
DAFTAR TABEL Tabel 1 Klasifikasi Ekspresi dari Bentuk Wajah ... 6 Tabel 2 Struktur Input dan Output MobileNetV2 ... 23 Tabel 3 Penelitian Terkait ... 23 Tabel 4 Jumlah Dataset ... 32 Tabel 5 Tabel Skenario Eksperimen Berdasarkan Dataset ... 40 Tabel 6 Tabel Skenario Eksperimen Berdasarkan Teknik Augmentasi... 40 Tabel 7 Tabel Hyperparameter ... 41 Tabel 8 Perhitungan Manual Confusion Matrix... 47 Tabel 9 Dataset BingImed ... 50 xvi
DAFTAR RUMUS (1) Operasi Konvolusi ... 10 (2) Operasi Konvolusi Multidimensi ... 11 (3) Operasi Konvolusi Multidimensi ... 11 (4) Persamaan Hyperparameter Neuron Aktif ... 11 (5) Binary Step Function ... 15 (6) Linear Function ... 15 (7) Signoid Function ... 16 (8) Signoid Function ... 16 (9) Tanh Function ... 17 (10) ReLU Function ... 18 (11) Softmax Function ... 21 (12) Accuracy Function... 34 (13) Precision Function ... 35 (14) Recall Function ... 35 (15) F1-Score Function ... 35 xvii
BAB 1 PENDAHULUAN 1.1 Latar Belakang Ekspresi wajah merupakan salah satu cara komunikasi non-verbal yang sering digunakan manusia [1]. Penelitian yang dilakukan Ekman dan W.V. Friesen [2] menyebutkan tujuh ekspresi yaitu terkejut, takut, marah, bahagia, jijik, sedih dan netral sebagai ekspresi utama yang umum terdapat pada manusia. Komunikasi yang dilakukan menggunakan ekspresi wajah menyampaikan 55% informasi dalam berinteraksi dibanding dengan komunikasi vocal atau suara 38% dan komunikasi secara verbal secara lisan atau tertulis 7% [2]. Maka dari itu, penelitian mengenai ekspresi wajah menjadi topik penelitian yang populer dan aktif didalam computer vision, artificial intelligence dan pattern recognition [3]. Analisis ekspresi wajah telah digunakan dalam berbagai aspek untuk memfasilitasi interaksi manusia- komputer, seperti pemantauan cerdas, interogasi kriminal, kesehatan, deteksi kelelahan mengemudi, dan sebagai alat untuk menilai kepuasan pelanggan pada sebuah produk [4]. Meskipun pengenalan ekspresi wajah relatif mudah dilakukan oleh seseorang, untuk sebuah mesin otomatis ini menjadi sebuah tantangan [5]. Walaupun pengenalan ekspresi wajah secara otomatis menjadi bidang penelitian sejak lama [6] tantangan yang dihadapi peneliti tetap masih ada seperti terbatasnya dataset yang tersedia [7]. Ming Li dkk juga mengutarakan penelitian mengenai pengenalan ekspresi wajah memiliki beberapa kendala ketika ekspresi wajah antara kelas yang satu dan lainnya memiliki ciri keunikan yang tidak jauh berbeda sehingga berpengaruh dalam proses klasifikasi dan prediksi [8]. Selain dari itu Howard [9] juga menyebutkan proses komputasi juga menjadi kendala penting untuk menekan biaya efesiensi waktu, ukuran dan kecepatan. 1
Seiring dengan kemajuan teknologi, beberapa sistem pengenalan ekspresi wajah diterapkan diberbagai media seperti permainan interaktif, pendidikan dan hiburan [10]. Hal ini mendorong penelitian berikutnya seperti penelitian Penentuan Emosi pada Video dengan Convolutional Neural Network menggunakan dataset FER2013 dengan jumlah 35.887 data citra grayscale yang terdiri dari 7 ekspresi wajah. Evaluasi yang dilakukan menggunakan confusion matrix menghasilkan akurasi 74.17% [11]. Dataset FER2013 juga digunakan untuk penelitian Fast Emotion Recognition Neural Network for IoT Devices dengan 4 ekspresi wajah dan akurasi untuk model klasifikasi adalah 0,83% dengan menggunakan Raspberry Pi dan web camera untuk sebagai alat prediksi [12]. Penelitian menggunakan dataset FER2013 juga dilakukan Adrian Vulpe Grigorasi1 & Ovidiu Grigore dengan judul paper hyperparamter optimization pada CNN mendapatkan hasil akurasi 72,16% [5]. Guetari dkk juga melakukan penelitian terkait pengenalan ekspresi wajah Real time emotion recognition in video stream, using B-CNN and F-CNN penelitian dilakukan melakukan beberapa komparasi dataset JAFFE, CK+, Private Dataset, dengan arsitektur seperti ResNet50, B- ResNet50, F-ResNet50, VGG16, B-VGG16, VGG19, B-VGG19. Eksperimen tersebut menunjukkan B-VGG19 pada dataset CK+ mendapatkan akurasi tertinggi yaitu 89.73% [13]. Penelitian Facial Expression Recognition secara real-time juga dilakukan oleh Dr Ansamma John dkk [14] terhadap dataset JAFFE dan FER2013 dengan rasio data latih dan data uji 80:20 mendapatkan akurasi 91,2% dan 74,4% diperoleh masing-masing pada database JAFFE dan FER2013 dengan menggunakan modul capture real-time video melalui webcam sebagai sistem deteksi. Penggunaan deep learning telah digunakan untuk menangani permasalahan object detection sejak AlexNet mempopulerkan arsistektur CNN dengan memenangkan ImageNet Challenge ILSVRC 2012 termasuk penanganan masalah pengenalan ekspresi wajah secara otomatis. Sepeti Gowri [15] melakukan detection real-time facial emotions dengan CNN, penelitian lanjutan seperti [16][17] dan A survey on: Facial Emotion Recognition and Classification [18] dengan dataset FER2013, 2
JAFFE, CK+. Namun dari beberapa penelitian tersebut memiliki kendala pada data yang digunakan untuk melakukan proses pemodelan atau pelatihan data sehingga pembaruan atau penggunaan dataset yang berbeda dengan berbagai varian wajah perlu dilakukan [15][19][20]. Selain dataset, metode deep learning yang digunakan juga menjadi penting karena mempengaruhi waktu pelatihan atau proses komputasi, sehingga perlu adanya penelitian lanjutan dengan menggunakan arsitektur deep learning lainnya seperti ResNet atau MobileNet [18][21]. Untuk memaksimalkan keakuratan secara efektif terhadap proses komputasi Andrew G. Howard [22] mengenalkan arsitektur MobileNet. Arsitektur MobileNetV1 yang pertama diterapkan pada perangkat seluler ini memiliki beberapa perbedaan dengan arsitektur CNN pada umumnya seperti penggunaan lapisan atau convolution layers dengan ketebalan filter yang sesuai dengan ketebalan dari input image. MobileNetV1 membagi konvolusi menjadi depthwise convolution dan pointwise convolution [22]. Kemudian dikembangkan versi kedua yaitu MobileNetV2 dengan menambahkan dua fitur baru yaitu linear bottleneck dan shortcut connections antar bottlenecks memungkinkan training atau testing yang lebih cepat dan akurasi yang lebih baik [23]. Penelitian dengan arsitektur MobileNetV2 pernah dilakukan oleh [24] dengan judul Face Attribute Detection with MobileNetV2 and NasNet-Mobile menggunakan dataset CelebA [25] menghasilkan rata-rata akurasi 91.5%. Berdasarkan latar belakang masalah atau kendala penelitian sebelumnya dan saran penelitian yang telah dilakukan dengan beberapa kemajuan arsitektur Deep Learning untuk memaksimalkan efisiensi dari proses komputasi dan optimasi, maka penelitian ini akan melakukan pengenalan ekspresi wajah pada video berbasis deep learning dengan arsitektur MobileNetV2. Klasifikasi dilakukan dengan membagi 7 kelas ekspresi wajah yang dapat dikenali yaitu marah, jijik, takut, senang, sedih, terkejut dan netral. Dataset yang digunakan adalah data ekspresi wajah Indonesian Mixed Emotion Dataset (IMED) [26] dan data ekspresi wajah yang dikumpulkan dari mesin pencari dengan menggunakan beberapa kata kunci yang sesuai dengan kategori ekspresi wajah. 3
1.2 Rumusan Masalah Adapun rumusan masalah yang didapatkan berdasarkan latar belakang penelitian terkait pengenalan ekspresi wajah pada video berbasis deep learning menggunakan arsitektur MobileNetV2 yaitu : 1. Bagaimana menerapkan metode berbasis deep learning menggunakan arsitektur MobileNetV2 untuk pengenalan ekspresi wajah. 2. Bagaimana membuat dan menentukan dataset yang sesuai untuk penelitian. 3. Bagaimana mengimplementasi pengenalan ekspresi atau prediksi pada data video. 1.3 Batasan Masalah Batasan masalah pada penelitian ini ditentukan agar cakupan tidak meluas atau menyimpang dari yang telah direncanakan. Adapun batasan masalah pada penelitian ini antara lain: 1. Dataset yang akan digunakan adalah Indonesian Mixed Emotion Dataset dan publik dataset yang dikumpulkan dari mesin pencari dengan kata kunci yang sesuai dengan ekspresi wajah. 2. Jumlah kelas pada dataset sebanyak 7 kelas yaitu marah, jijik, takut, senang, sedih, terkejut dan netral. 3. Arsitektur MobileNet yang digunakan adalah MobileNetV2. 1.4 Tujuan Penelitian Tujuan penelitian yang ingin dicapai dari penelitian ini apabila penelitian ini berjalan dengan baik yaitu : 1. Melakukan klasifikasi ekspresi wajah dengan metode berbasis deep learning menggunakan arsitektur MobileNetV2. 2. Membangun dataset dengan mengumpulkan dari mesin pencari yaitu dan Indonesian Mixed Emotion Dataset (IMED). 3. Mengimplentasikan pengenalan atau prediksi ekspresi wajah pada video. 4
1.5 Manfaat Penelitian Manfaat penelitian berdasarkan tujuan penelitian yang dilakukan adalah mengetahui apakah pengenalan ekspresi wajah manusia dengan metode berbasis deep learning dengan arsitektur MobileNetV2 memberikan hasil yang signifikan. Dan mengimplementasi klasifikasi atau prediksi ekspresi wajah pada data video secara real-time dengan efektif dan proses komputasi yang mudah. Selain penelitian pengenalan ekspresi wajah menjadi topik yang populer dan aktif, penelitian ini juga bermanfaat untuk eksperimen selanjutnya seperti membangun model yang lebih optimal untuk proses klasifikasi ekpresi yang lebih akurat dan juga menambah kategori ekspresi lainnya. 5
BAB 2 KAJIAN PUSTAKA 2.1 Ekspresi Wajah Wajah merupakan identitas unik individu sebagai data biologis yang dapat membedakan antara individu satu dengan individu lainnya. Wajah juga dapat memberikan informasi seperti umur, karakter, ekspresi dan juga jenis kelamin [27]. Ekspresi wajah merupakan salah satu karakteristik prilaku dan bentuk komunikasi non-verbal yang terdiri dari berbagai macam gerakan atau posisi otot pada wajah yang dapat memberikan informasi terhadap seseorang yang sedang berkomunikasi atau mengamatinya [28]. Penelitian yang dilakukan [2] mengatakan bahwa ada 7 ekspresi utama yang ada pada manusia seperti senang, sedih, takut, terkejut, jijik, terkejut dan netral. Ekspresi pada wajah dapat terlihat dari pola wajah melalui gerakan-gerakan otot di dahi, sekitar mata, hidung dan mulut. Penelitian yang dilakukan oleh [29] dalam buku Communication Without Words menyebutkan komunikasi yang dilakukan menggunakan ekspresi wajah menyampaikan 55% informasi dalam berinteraksi. Menurut Oktaria dkk [30] ekspresi wajah dapat muncul dalam dua cara yaitu secara buatan dan alamiah. Ekspresi wajah secara buatan terjadi dengan sengaja seperti seseorang sedang bermain peran, sedangkan ekspresi wajah alamiah muncul dari refleksi dari emosi seseorang. Untuk klasifikasi ekspresi dari bentuk wajah dijabarkan dalam tabel berikut : Tabel 1 Klasifikasi Ekspresi dari Bentuk Wajah No Gambar Ekspresi Keterangan Alis yang turun dan menyatu, garis 1 Marah (Angry) vertikal muncul antara alis, kelopak mata bagian bawah menegang, mata menatap dengan tajam, bibir 6
2 3 4 5 6 Jijik (Disgust) Takut (Fear) Senang (Happy) Netral (Neutral) Sedih (Sad) 7 mengatup rapat dengan ujung bibir ke bawah, lubang hidung membesar, dan rahang bawah menjorok keluar. Kelopak mata atas naik, bibir bagian bawah naik, hidung berkerut, pipi naik, dan bagian bawah kelopak mata membentuk garis. Alis yang naik, dahi berkerut horizontal, mata membuka lebar, mulut terbuka horizontal. Ujung bibir yang naik, gigi terlihat, kerutan ada antara bagian luar hidung dan mulut, kelopak mata bawah mungkin berkerut atau tegang, dan ada guratan di ujung luar mata. Wajah dalam keadaan normal tanpa ekspresi. Alis mengerucut ke atas, kulit di bawah alis membentuk segitiga dan bagian ujung dalamnya naik, rahang naik ke atas, dan bibir bagian bawah mencuat ke depan.
Alis yang naik dan melengkung, ada Terkejut kerutan horizontal di dahi, kelopak 7 (Surprise) mata terbuka sangat lebar dan rahang bawah terbuka. 2.2 Face Recognition Face Recognition didalam ilmu interaksi manusia dan komputer adalah proses pengenalan wajah untuk mengidentifikasi dan memverifikasi orang dengan fitur wajah pada manusia. Penerapan aplikasi untuk pengenalan wajah memainkan perang penting dibanyak bidang seperti keamanan, kamera pengawas, verifikasi indentitas di perangkat elektronik modern, investigasi kriminal, smart card dan lain-lain [31]. Proses pengenalan wajah diperlukan berbagai metode seperti untuk melakukan deteksi dan klasifikasi. Konsep sederhana proses pengenalan wajah adalah dengan membandingkan satu citra wajah masukan dengan database wajah, kemudian menghasilkan pendekatan dan kecocokan data dengan citra wajah yang ada [32]. 2.3 Image Classification Image Classification atau klasifikasi gambar adalah mengkategorikan gambar ke dalam kategori tertentu yang diproses secara kompleks dan dipengaruhi oleh banyak faktor. Citra pada gambar merupakan salah satu cara untuk mengambil data yang dibutuhkan untuk proses klasifikasi. Klasifikasi citra dapat dapat dikelompokkan sebagai supervised dan unsupervised pada machine learning, hard dan soft pada klasifikasi fuzzy, menggunakan pixel atau subpixel. Langkah-langkah utama klasifikasi citra dapat mencakup penentuan sistem klasifikasi yang sesuai, pemilihan sampel pelatihan, preprocessing, ekstraksi fitur, pemilihan pendekatan klasifikasi yang sesuai, pemrosesan pasca-klasifikasi, dan penilaian akurasi. [33]. 2.4 Deep Learning Deep Learning merupakan cabang dari machine learning yang terinspirasi dari korteks otak manusia dengan menerapkan jaringan syaraf buatan yang memiliki 8
banyak hidden layer [32]. Deep Learning adalah bidang keilmuan yang relatif baru dalam pemrograman jaringan saraf dan mewakili cara untuk melatih jaringan saraf secara mendalam. Kemampuan untuk membuat jaringan saraf tiruan secara mendalam telah ada sejak Pitts (1943) memperkenalkan perceptron multilayer. Namun, penelitian ini belum dapat dapat melatih jaringan saraf secara efektif sampai Hinton (1984) menjadi peneliti pertama yang berhasil melatih jaringan saraf secara kompleks [34]. Menurut [35] Deep learning adalah teknik jaringan syaraf yang mengatur neuron dalam banyak lapisan (layer). Pembelajaran deep learning memiliki kelebihan dapat menemukan relasi tersembunyi antara input dan output, hal ini dapat mengatasi permasalahan non-linearly separable menjadi bentuk linearly separable dengan mentransformasi data disetiap hidden layer [36]. Konsep pembelajaran deep learning yang kompleks diterapkan dan digunakan untuk berbagai tugas komputasi seperti memprediksi peluang atau peristiwa, mengidentifikasi objek, dan mendiagnosis penyakit. Salah satu kegunaan deep learning untuk membantu manusia secara efektif mengidentifikasi atau mengklasifikasikan objek dalam bidang pengolahan citra atau pengolahan citra digital adalah cepat, akurat, dan dapat mengolah data dalam jumlah besar sekaligus [37]. 2.5 Convolutional Neural Network Convolutional Neural Network (CNN) adalah metode machine learning yang merupakan pengembangan dari Multilayer Perceptron (MLP) yang dirancang untuk memproses atau membuat data dua dimensi [38]. CNN juga merupakan metode dalam deep neural network, karena memiliki lapisan jaringan dan memiliki banyak aplikasi dalam gambar. Metode CNN terdiri dari dua metode yaitu klasifikasi menggunakan feedforward dan tahap pembelajaran menggunakan backpropagation. Prinsip kerja metode ini hampir sama dengan metode MLP namun pada metode CNN setiap neuron disajikan dalam bentuk dua dimensi yang berbeda dengan metode MLP dimana setiap neuron hanya memiliki satu dimensi. [39]. 9
Convolutional Neural Network merupakan salah satu jenis jaringan syaraf tiruan yang biasa digunakan untuk pengolahan data citra. Konvolusi atau biasa disebut dengan konvolusi adalah matriks yang memiliki fungsi untuk menfilter citra. CNN memiliki beberapa lapisan untuk melakukan filter pada setiap prosesnya [32]. Gambar 1 Proses Convolutional Neural Network Sumber: 2.5.1 Convolutional Layer Convolutional layer adalah bagian dari tahapan dalam arsitektur CNN. Pada tahap ini dilakukan konvolusi pada output dari layer sebelumnya. Lapisan ini merupakan proses utama yang menjadi dasar dari arsitektur jaringan CNN. Dalam proses analisis citra gambar, konvolusi menggunakan operasi dua fungsi, satu fungsi terdiri dari nilai input seperti nilai piksel yang ada dalam gambar sedangkan fungsi kedua adalah filter atau kernel yang masing-masing direpresentasikan sebagai array angka. Operasi ini menerapkan fungsi output sebagai Feature Map dari input citra. Input dan output ini dapat dilihat sebagai dua argumen bernilai riil [40]. Operasi dari proses konvolusi dapat dituliskan sebagai berikut: 𝑠(𝑡) = (𝑥 ∗ 𝑡)(𝑡) = ∑ ∞ 𝑎=−∞ 𝑥(𝑎) ∗ 𝑤(𝑡 − 𝑎) Keterangan : S(t) = Fungsi hasil operasi konvolusi 10 (1)
X = Input W = bobot (kernel) Fungsi s(t) memberikan satu keluaran berupa feature Map. Parameter pertama adalah input x, dan parameter kedua adalah w sebagai kernel atau filter. Jika kita memperlakukan input sebagai gambar dua dimensi, kita dapat mengatakan bahwa t adalah piksel dan menggantinya dengan i dan j. Operasi konvolusi pada input multidimensi dapat dituliskan sebagai berikut: 𝑠(𝑖, 𝑗) = (𝐾 ∗ 𝐼)(𝑖, 𝑗) = ∑ ∑ 𝐼(𝑖 − 𝑚, 𝑗 − 𝑛)𝐾(𝑚, 𝑛) ∞∞ 𝑠(𝑖, 𝑗) = (𝐾 ∗ 𝐼)(𝑖, 𝑗) = ∑ ∑ 𝐼(𝑖 + 𝑚, 𝑗 + 𝑛)𝐾(𝑚, 𝑛) ∞∞ Berdasarkan kedua persamaan diatas, merupakan dasar perhitungan dalam operasi konvolusi, dimana i dan j adalah piksel dari citra. Perhitungannya bersifat komulatif yang muncul ketika K adalah kernel, kemudian I adalah input dan reversibel relatif terhadap input. Sebagai alternatif, operasi konvolusi dapat dilihat sebagai perkalian matriks antara gambar input dan kernel, di mana output dihitung menggunakan dot product. Selain itu, volume output juga dapat ditentukan dengan hyperparameters dari setiap layer. Hyperparameter yang digunakan dalam persamaan di bawah ini digunakan untuk menghitung jumlah neuron yang diaktifkan dalam sebuah output. Perhatikan persamaan berikut: (𝑊 − 𝐹 + 2𝑃)/(𝑆 + 1) W = Ukuran volume gambar F = Ukuran Filter P = Nilai Padding yang digunakan S = Ukuran Pergeseran (Stride) Berdasarkan persamaan di atas, dapat dihitung ukuran ruang dari volume 11 (2) (3) (4)
keluaran, dimana hyperparameter yang digunakan adalah ukuran volume (W), filter (F), stride yang diterapkan (S), dan jumlah padding nol digunakan (P). Stride adalah nilai yang digunakan untuk memindahkan filter pada input gambar, Zero padding adalah nilai untuk mendapatkan nol di sekitar border gambar. Lapisan konvolusi terdiri dari neuron diatur dalam filter dengan panjang dan tinggi (piksel). Misalnya lapisan ukuran 5x5x3. Panjang 5 piksel, tinggi 5 piksel, dan ketebalannya 3 blok/total sesuai channel RGB dari gambar tersebut. Ketiga filter ini akan dipindahkan ke seluruh bagian gambar. Setiap shift akan melakukan operasi "dot" antara input dan nilai filter untuk menghasilkan output atau biasa disebut dengan activation map atau feature map. Perhatikan gambar di bawah ini: Gambar 2 Convolutional Layer Sumber : [41] 2.5.2 Pooling Layer Pooling layer adalah untuk mengurangi ukuran matriks yang biasanya dilakukan setelah lapisan conv. Pada dasarnya, pooling layer terdiri dari filter dengan ukuran 12
dan stride tertentu, yang akan berpindah secara bergantian di seluruh area feature map. Pooling layer mengikuti lapisan konvolusi untuk menurunkan sampel feature mamp dari lapisan konvolusi sebelumnya. Secara khusus, setiap feature map dalam pooling layer ditautkan dengan feature map di lapisan konvolusi, dan setiap unit dalam feature map dari pooling layer dihitung berdasarkan subset unit di bidang reseptifnya. Fungsi penting lain dari pooling layer adalah untuk menterjemahkan invariansi pada pergeseran spatial kecil pada input. [42]. Memasukkan pooling layer antara convolutional layer terus menerus dalam arsitektur model CNN dapat secara bertahap mengurangi ukuran volume output pada Feature Map, sehingga mengurangi parameter dan perhitungan dalam jaringan sehingga bisa mengontrol overfitting. Pooling layer bekerja pada setiap tumpukan feature map dan mengurangi ukurannya. Bentuk umum dari pooling layer adalah menggunakan filter 2x2, yang diterapkan dalam dua langkah dan beroperasi pada setiap irisan input [32]. Contoh gambar pada proses max-pooling sebagai berikut: Gambar 3 Average Pooling Gambar diatas merupakan tampilan dari proses average-pooling. Keluaran dari proses pooling adalah matriks dengan dimensi yang lebih kecil dari citra awal. Lapisan pooling di atas akan beroperasi pada setiap irisan kedalaman volume input secara bergantian. Seperti pada gambar di atas, operasi pooling maksimum menggunakan ukuran filter 2x2. Ukuran input dari proses ini adalah 4x4, ambil nilai 13
maksimum dari masing-masing 4 angka dalam operasi input, dan kemudian lanjutkan untuk membuat ukuran output baru 2x2. 2.5.3 Flatten Output dari proses konvolusi setelah dilakukan operasi average pooling masih berupa array multidimensi dan tidak dapat digunakan sebagai masukan neural network. Inputan dari neural network harus berupa vektor satu dimensi. Flatten adalah fungsi yang mengubah array multidimensi menjadi vektor tunggal atau array satu dimensi. Output dari fungsi flatten akan menghasilkan array satu dimensi, yang akan digunakan sebagai input fully connected layer. Gambar 4 Flatten 2.5.4 Activation Layer Activation layer atau fungsi aktivasi secara khusus digunakan untuk mengubah sinyal input menjadi sinyal output yang setelah diproses hasilnya akan diumpankan ke lapisan berikutnya dalam tumpukan layer. Fungsi aktivasi dibutuhkan untuk melakukan pengenalan pemetaan kompleks dari jumlah data yang memiliki beberapa lapisan seperti input layer, hidden layer dan output layer. Secara umum fungsi aktivasi yang digunakan adalah linear dan non-linear [43]. Ada beberapa fungsi aktivasi yang sering digunakan dalam neural netwok, yaitu sebagai berikut: 1. Binary Step Function Binary Step Function adalah fungsi aktivasi paling sederhana yang ada dan dapat diimplementasikan dengan pernyataan if-else sederhana dengan 14
library seperti Python. Saat membuat pengklasifikasi biner, binary step function biasanya digunakan. Namun, binary step function tidak dapat digunakan dalam kasus klasifikasi multikelas. Gradien dari binary step function adalah nol yang dapat menyebabkan hambatan pada langkah backpropagation, yaitu jika kita menghitung turunan dari f (x) terhadap x, itu sama dengan nol. Secara matematis fungsi langkah biner dapat didefinisikan sebagai: 𝑓(𝑥) = 1, 𝑥 ≥ 0 𝑓(𝑥) = 0, 𝑥 < 0 Gambar 5 Binary Step Function 2. Linear Fungsi aktivasi linier berbanding lurus dengan input. Kelemahan utama dari binary step function adalah memiliki gradien nol karena tidak ada komponen x dalam fungsi langkah biner. Untuk menghilangkannya, fungsi linier dapat digunakan. Rumus persamaan dapat didefinisikan sebagai berikut: 𝐹(𝑥) = 𝑎𝑥 15 (5) (6)
Gambar 6 Fungsi Linear Nilai variabel a dapat berupa nilai konstan. Di sini turunan dari fungsi f (x) bukan nol tetapi sama dengan nilai konstanta yang digunakan. Gradien bukan nol, tetapi nilai konstan yang tidak bergantung pada nilai input x yang menyiratkan bahwa bobot dan bias akan diperbarui selama langkah propagasi mundur meskipun faktor pembaruan akan sama. 3. Signoid Signoid merupakan fungsi aktivasi yang paling banyak digunakan karena merupakan fungsi non-linier. Fungsi sigmoid mengubah nilai dalam rentang 0 sampai 1. Dapat didefinisikan sebagai berikut: 𝑓(𝑥) = 1/𝑒−𝑥 Fungsi sigmoid dapat terus menerus terdiferensiasi. Turunan dari fungsinya adalah: 𝑓(𝑥) = 1 − 𝑠𝑖𝑔𝑚𝑜𝑖𝑑(𝑥) 16 (7) (8)
Selain itu, fungsi sigmoid tidak simetris mendekati nol yang berarti bahwa tanda dari semua nilai keluaran neuron akan sama. Masalah ini dapat diperbaiki dengan menskalakan fungsi sigmoid. Gambar 7 Fungsi Sigmoid 4. Fungsi Tanh Fungsi tanh merupakan fungsi Garis Singgung Hiperbolik. Fungsi tanh mirip dengan fungsi sigmoid tetapi simetris disekitar asalnya. Ini menghasilkan tanda keluaran yang berbeda dari lapisan sebelumnya yang akan diumpankan sebagai masukan ke lapisan berikutnya. Dapat didefinisikan sebagai berikut: 𝑓(𝑥) = 2𝑠𝑖𝑔𝑚𝑜𝑖𝑑(2𝑥) − 1 (9) Fungsi tanh kontinu dan terdiferensiasi, nilainya terletak pada kisaran -1 hingga 1. Dibandingkan dengan fungsi sigmoid gradien fungsi tanh lebih curam. Tanh lebih disukai daripada fungsi sigmoid karena memiliki gradien yang tidak dibatasi untuk bervariasi dalam arah tertentu dan berpusat nol. 17
Gambar 8 Fungsi Tanh 5. Fungsi ReLU Fungsi ReLU merupakan singkatan dari rectified liner unit dan merupakan fungsi aktivasi non-linier yang banyak digunakan di jaringan saraf tiruan. Keunggulan penggunaan fungsi ReLU adalah bahwa semua neuron tidak diaktifkan pada saat yang bersamaan. Neuron akan dinonaktifkan hanya jika keluaran dari transformasi linier adalah nol. Ini dapat didefinisikan secara matematis sebagai berikut: 𝑓(𝑥) = 𝑚𝑎𝑥(0, 𝑥) (10) Gambar 9 Fungsi Aktivasi ReLU 18
ReLU lebih efisien daripada fungsi lain karena semua neuron tidak diaktifkan pada waktu yang sama, melainkan sejumlah neuron tertentu diaktifkan pada suatu waktu. Dalam beberapa kasus, nilai gradien adalah nol, karena itu bobot dan bias tidak diperbarui selama langkah backpropagation dalam proses pelatihan jaringan saraf tiruan [43]. 2.5.5 Dropout Regularization Dropout merupakan sebuah teknik regulasi jaringan syaraf dengan tujuan memilih beberapa neuron secara acak dan tidak akan dipakai selama proses pelatihan, dengan kata lain neuron-neuron tersebut dibuang secara acak. Hal ini berarti bahwa kontribusi neuron yang dibuang akan diberhentikan sementara jaringan dan bobot baru juga tidak diterapkan pada neuron pada saat melakukan backpropagation. Dropout juga merupakan proses mencegah terjadinya overfitting dan juga mempercepat proses learning [44]. Gambar 10 Dropout Regularization Sumber : [45] Menurut gambar di atas, bagian a adalah jaringan saraf biasa dengan dua lapisan tersembunyi. Dan bagian (b) adalah neural network yang menggunakan dropout. Seperti yang dapat dilihat dari gambar, ada beberapa neuron aktif yang tidak lagi digunakan. Penggunaan teknik ini sangat mudah diimplementasikan pada model CNN, dan akan mempengaruhi kinerja model dalam pelatihan dan mengurangi overfitting [46]. 19
2.5.6 Fully Connected Layer Fully Conected Layer adalah lapisan di mana semua neuron yang diaktifkan di lapisan sebelumnya terhubung ke semua neuron di lapisan berikutnya, seperti jaringan saraf normal. Pada dasarnya, lapisan ini biasanya digunakan untuk MLP (Multilayer Perceptron), yang tujuannya untuk mengubah dimensi data sehingga data dapat diklasifikasikan secara linear, Fully connected layer memiliki beberapa hidden layer, action function, output layer dan loss function [32]. Gambar 11 Fully Connected Layer Perbedaan antara fully-connected dan convolutional layer biasa adalah neuron pada convolutional layer hanya terhubung ke area input tertentu, sedangkan neuron pada fully connected layer terhubung sepenuhnya. Namun, kedua lapisan tersebut tetap menggunakan "produk dot", sehingga fungsinya tidak jauh berbeda [47]. 2.5.7 Softmax Softmax merupakan fungsi yang mengubah nilai bobot keluaran dari semua proses di fully connected layer menjadi rentang nilai 0 dan 1. Output dari softmax yang bernilai 1 akan dijadikan sebagai kelas keluaran dari proses klasifikasi. Fungsi softmax digunakan dalam layer yang terdapat pada neural network dan biasanya terdapat pada layer terakhir untuk mendapatkan keluaran. Secara sepsifiknya fungsi 20
ini biasa digunakan pada metode klasifikasi multinomial logistic regression dan multiclass linear discriminant analysis. Berikut adalah fungsi dari softmax : 𝑓𝑗(𝑧) = 𝑒 𝑧𝑗 ∑ 𝑒𝑧𝑘 𝑘 (11) Notasi fj adalah hasil fungsi untuk setiap elemen ke-j pada vektor keluaran kelas. Argumen z adalah hipotesis yang diberikan oleh model pelatihan agar dapat diklasifikasi oleh fungsi Softmax. Softmax menghitung probabilitas untuk semua label. Label akan diubah menjadi vektor dengan nilai riil dan merubahnya menjadi vektor dengan nilai antara nol dan satu yang bila semua dijumlah akan bernilai satu. 2.6 MobileNet MobileNet merupakan arsitektur CNN yang dapat digunakan untuk menyelesaikan kebutuhan sumber daya komputasi yang berlebih sehingga dapat digunakan pada perangkat dengan sumber daya yang terbatas seperti perangkat mobile. MobileNetV1 yang merupakan versi pertama salah satu arsitektur dari convolutional neural network (CNN) yang diperkenalkan oleh peneliti google [9] yang dilanjutkan versi kedua oleh [23] dengan paper berjudul MobileNetV2: Inverted Residuals and Linear Bottlenecks. Perbedaan mendasar dari MobileNet dengan arsitektur CNN lainnya adalah pada penggunaan layer konvolusi dengan ketebalan filter yang sesuai dengan input seperti gambar [48]. MobileNetV1 memasukkan konvolusi yang dapat dipisahkan secara mendalam yang memisahkan operasi konvolusi ke dalam dan melakukan penyaringan dalam dimensi spasial (dengan ukuran filter DK × DK) diikuti oleh konvolusi searah 1×1 untuk menggabungkan input yang difilter dan menghasilkan nilau N. Saluran output konvolusi yang dapat dipisahkan secara mendalam mengurangi perhitungan dengan 2 ) dibandingkan dengan konvolusi penuh dengan menggunakan faktor (1 / N + 1 / 𝐷𝑘 ukuran filter yang sama dan jumlah dari nilai output. Lebar dari multiplier parameter α juga diatur untuk menetukan skala jumlah nilai input dan output yang digunakan dalam model. Dengan mengatur nilai α (di mana biasanya α <1.0), jumlah nilai input diskalakan ke αM dan jumlah nilai output ke αN sehingga menskalakan jumlah parameter dengan α2 [49]. 21
MobileNetV2 menggunakan arsitektur yang sangat mirip dengan MobileNetV1 tetapi memperkenalkan inverted residual blocks dan linear bottlenecks [23]. Inverted Block memperluas jumlah feature maps nilai input dari dimensi M ke Mexp di mana Mexp> M dan biasanya Mexp= 6 × M. Jumlah filter kemudian disingkat menjadi Mcrt<Mexp untuk membentuk sebuah bottleneck. Seperti konvolusi 1×1 yang digunakan dalam pengembangan dan konvolusi depthwise mengikuti operasi RELU, namun, konvolusi 1×1 yang digunakan dalam bottleneck memiliki nilai linier output [49]. Gambar 12 MobileNet Block Jenis blok lain yang digunakan pada MobileNetV2 adalah Residual Inverted Block (ResBlock) dimana jaringan dapat mengakses aktivasi yang sebelumnya tidak dimodifikasi melalui penambahan input sebelum operasi penyaringan ke output yang difilter. Namun, ini hanya dapat dilakukan jika kontraksi menghasilkan M saluran sama dengan input seperti yang ditunjukkan pada Gambar diatas dan tidak ada downsampling dari feature maps [49]. 22
Tabel 2 Struktur Input dan Output MobileNetV2 Input Operator t c n s 224 × 224 × 3 conv2d
32 1 2 112 × 112 × 32 bottleneck 1 16 1 1 112 × 112 × 16 bottleneck 6 24 2 2 56 × 56 × 24 bottleneck 6 32 3 2 28 × 28 × 32 bottleneck 6 64 4 2 14 × 14 × 64 bottleneck 6 96 3 1 14 × 14 × 96 bottleneck 6 160 3 2 7 × 7 × 160 bottleneck 6 320 1 1 7 × 7 × 320 conv2d 1 × 1
1280 1 1 7 × 7 × 1280 avgpool 7 × 7
1 × 1 × 1280 conv2d 1 × 1
Tabel 2.1 diatas menjelaskan urutan setiap baris atau disebut modulo stride diulang sebanyak n kali. Semua lapisan yang berada dalam urutan yang sama memiliki jumlah keluaran c yang sama. Lapisan pertama dari setiap urutan memiliki stride s dan yang lainnya menggunakan stride 1. Semua konvolusi spasial menggunakan kernel 3 × 3 dan faktor ekspansi t selalu diterapkan ke ukuran masukan [23]. 2.7 Penelitian Terkait Penelitian terkait mengenai topik facial expression recognition atau pengenalan ekspresi wajah dilakukan oleh beberapa peneliti sebelumnya seperti : Tabel 3 Penelitian Terkait No Tahun Judul Peniliti Metode Kesimpulan 2021 Facial Emotion Shrey Modi, Convolutional Penelitian Recognition Mohammed Neural menggunakan using Husain Network FER2013 sebagai Convolution Bohara dataset. penelitian Neural Network membandingkan 23
2021 Fast Emotion Recognition Neural Network for IoT Devices 2021 Detection of real-time Facial Emotions via Deep S.Mikhaylev skiy, V.Chernyavs kiy, V.Pavlishen, I.Romanova, R.Solovyev S. Mohana Gowr, Aysha 24 Convolutional Neural Network Convolutional Neural Network model CNN dengan transfer learning model. Dan mendapatkan bahwa Model CNN lebih mendapatkan hasil terbaik dari tranfer learning model. Penelitian mengusulkan pengenalan emosi dengan akurasi tinggi, dengan menggunakan Raspberry Pi sebagai alat untuk melakukan pengenalan secara real-time pada 4 ekspresi wajah : neutral, angry, surprise dan happy. Sistem dijalankan pada komputer lokal yang hemat biaya, ringan dan cepat. Penelitian menggunakan Feature Extraction mernggunakan dlib
Convolution Neural Network 2021 Real-Time Facial Expression Recognition Based on Edge Computing 2021 Facial emotion recognition using convolutional neural network Rafeeq, Devipriya S Jiannan Yang, Tiantian Qian, Fan Zhang, Samee U. Khan Arjun Singh, Arun Pratap Srivastav, Pushpa Choudhary, Sandeep Raj 25 CNN, ResNet50 facial landmark dan arsitektur CNN dengan 4 layer konvolusi mencapai akurasi 73% untuk 7 kategori ekspresi. Penelitian ini mengusulkan pengenalan ekspresi secara real-time dengan menggunakan edge computing yang ringan dan Raspberry Pi sebagai objek deteksi. Penelitian ini menyebutkan memberikan model pengenalan wajah yang fleksibel. Peneliti mengembangkan model ensemble untuk mengabungkan output dan neural network dan mendapatkan akurais 67,2% pada dataset
2020 Real time emotion recognition in video stream, using B-CNN and F-CNN 2020 Real-Time Facial Emotion Recognition System With Improved Preprocessing and Feature Extraction Ramzi Guetari, Aladine Chetouani, Hedi Tabia Dr Ansamma John, Abhishek MC, Ananthu S Ajayan, Sanoop S, Vishnu R Kumar 26 kaggle dan akurasi 78,3% di dataset KDEF. VGG, ResNet Penelitian yang menbandingkan penggunaan 3 dataset yaitu JAFEE, CK+, Dataset pribadi menggunakan berbagai macam tipe dari metode VGG dan ResNet. B- VGG19 pada dataset CK+ mendapatkan hasil akurasi terbaik yaitu 89.73%. CNN Penelitian ini mengusulkan sistem pengenalan emosi secara real-time. Dengan 2 tipe dataset yaitu JAFEE & FER2013 dan rasio pembagian data latih&uji 80-20, memperoleh masing- masing akurasi 91.2% (JAFEE) dan 74.4% (FER2013).
2020 Penentuan Emosi pada Video dengan Convolutional Neural Network 2020 Automatic Facial Expression Recognition Based On Mobilenetv2 In Real- Time 2019 Klasifikasi Emosi Menggunakan Convolutional Neural Networks 2019 Klasifikasi Emosi Berdasarkan Ciri Wajah Menggunakan Convolutional Neural Network Daru Prasetyawan, Shofwatul Uyun Lida Hu, Qi Ge Ripan Septian, Dede Irawan Saputra, Susanto Sambasri Achmad Yusuf, Randy Cahya Wihandika, Candra Dewi 27 Convolutional Neural Network CNN dengan arsitektur MobileNetV2 Convolutional Neural Networks Convolutional Neural Network Penelitian terhadap 7 ekspresi diperoleh akurasi 74,17%, rata-rata presisi 74,07%, dan rata- rata recall 74,08% Penelitian yang mengkomparasi 3 dataset yaitu FER2013, CK+ dan JAFFE. Akurasi terbaik sebesar 97.98% dengan MobileNetV2 Penelitian dengan 7 kelas ekspresi dasar data latih sebanyak 35.888 data 4grayscale dan dengan data uji 3589 data mendapatkan akurasi 67%, presisi 67% dan recall 66% Penelitian yang menggunakan dataset Extended Cohn-Kanade Dataset (CK+) sebanyak 210 subyek dari 327
2019 Pengenalan Ekspresi Wajah Menggunakan Convolutional Neural Network 2019 A Real Time Face Emotion Classification And Recognition Using Deep Learning Model 2019 Robust real-time emotion detection system using CNN architecture 2019 Real-Time Facial Feature Extraction Scheme Using Cascaded Networks Joceline S Wirtjes Dr. Shaik Asif Hussain, Ahlam Salim Abdallah Al Balushi Department Shruti Jaiswal, G. C. Nandi Hyeonwoo Kim, Hyungjoon Kim, Eenjun Hwang 28 Convolutional Neural Network CNN dengan Arsitektur VGG16 Convolutional Neural Network Convolution Neural Networks gambar dengan rata- tara akurasi 80.7% Rata-rata hasil tingkat akurasi sebesar 80% dari 100 data gambar Penelitian yang menggunakan KDEF dataset sebanyak 2901 data dengan pembagian data latih 70% data uji 30% mendapatkan hasil akurasi 88% Deteksi emosi menggunakan 8 dataset yang. Dari metode yang digunakan mendapatkan rata- rata akurasi 74% Penelitian ini mengusulkan metode baru untuk mengekstrak 68 titik landmark pada wajah. Kemudian membandingkan dengan Dlib asli
2018 Real Time Facial Expression Recognition in Video Using Nearest Neighbor Classifier 2017 FaceNet2ExpNet : Regularizing a Deep Face Recognition Net for Expression Recognition 2017 Convolution Neural Network for Automatic Facial Ramachandr an Vedantham, Lavanya Settipalli, E.Sreenivasa Reddy Hui Ding, Shaohua Kevin Zhou, Rama Chellappa Xiaoguang Chen, Xuan Yang, Maosen Wang, 29 Nearest Neighbor Classifier FaceNet2Exp Net Modifikasi CNN Convolution Neural Network dengan kecepatan waktu pemrosesan yang lebih tinggi. Penelitian yang menggunakan HAAR untuk mendeteksi wajah GABOR untuk feature extraction dan Nearest Neighbor Classifier untuk klasifikasi dengan akurasi rata- rata 92.56% Penelitian ini menggunakan motode CNN modifikasi. Rata-rata akurasi di hitung dari beberapa dataset yaitu CK+ (98.6%), OULU-CAS (87.71%), TFD (88.9%), SFEW (55%) Penelitian dengan Cohn-Kanaded (CK+) dataset 327 video sequence oleh 118 orang. Akurasi
Expression Recognition Jiancheng Zou 30 data testing dan training yang sama CK+ menghasilkan 99% akurasi, dengan menggunakan data testing JAFFE menghasilkan akurasi 83%.
BAB 3 METODOLOGI PENELITIAN Metodologi dalam penelitian merupakan tahapan penyusunan penelitian yang sistematis untuk memenuhi tujuan yang diharapkan. Tahapan metodologi penelitian ini ditampilkan pada gambar 12 dibawah ini: PENGUMPULAN DATA SPLIT DATASET PREDIKSI VIDEOMODEL ANALISIS & EVALUASI MODELLINGMOBILENETV2 MULAI SELESAI PREPROCESSING Gambar 13 Metodologi Penelitian 3.1 Pengumpulan Data Pengumpulan data dilakukan dengan mengajukan permohonan dataset ke Indenesia Mixed Emotion Dataset (IMED) Universitas Indonesia. Dataset terdiri dari 19 kelas emosi yang terbagi 6 emosi dasar, 12 emosi campuran dan ekspresi netral dalam bentuk data video dan gambar. Dalam penelitian ini digunakan 7 kelas emosi atau ekspresi wajah yaitu senang, sedih, terkejut, marah, jijik, takut dan netral. Jumlah data yang digunakan berjumlah 9.183 data gambar yang terbagi dalam 7 kelas dengan pembagian marah 1.623 data, jijik 1.413 data, takut 1.466 data, senang 1.319 data, netral 518 data, sedih 1.793 data dan terkejut atau surprise 1.051 data 31
gambar. Data yang didapatkan kemudian dilanjutkan ketahap preprocessing untuk dijadikan data masukan pada arsitektur MobileNetV2 yang menjadi metode penerapan untuk melakukan pengenalan ekspresi wajah pada video. Selain Indonesian Mixed Emotion Dataset (IMED) penelitian ini juga menggunakan dataset tambahan yaitu data ekspresi wajah yang dikumpulkan dari mesin pencari dengan menggunakan beberapa kata kunci yang sesuai dengan kategori dari masing-masing ekspresi. Untuk memastikan dataset sesuai dengan 7 kategori ekspresi yaitu sedih, senang, takut, jijik, marah, terkejut, dan netral dilakukan pengecekan gambar satu persatu. Gambar dengan ekspresi wajah kurang sesuai dengan kategori ekspresi maka data gambar akan dipindahkan ke kategori ekspresi yang sesuai. Bila ekspresi wajahnya ambigu, gambar akan dihapus. Pada tahap ini dibutuhkan persepsi manusia dalam mengklasifikasikan ekspresi wajah. Tabel 4 Jumlah Dataset Dataset Kelas Total Angry Disgust Fear Happy Neutral Sad Surprise BING 207 201 205 208 202 200 296 1519 IMED 206 202 183 199 233 203 206 1432 3.2 Preprocessing Preprocessing adalah tahapan yang bertujuan untuk menormalisasi dataset agar bisa menjadi data masukan yang sesuai dengan arsitektur yang telah ditentukan. Tahap preprocessing data pada penelitian pengenalan ekspresi wajah pada video berbasis deep learning menggunakan arsitektur MobileNetV2 ini adalah melakukan deteksi wajah menggunakan metode dlib face recognition yaitu sebuah library python yang dikembangkan oleh King [50]. Metode dlib memiliki fitur untuk mengidentifikasi 64 point of faces atau 64 titik wajah seperti mata, mulu, hidung dan lain-lain. Kemudian setelah melakukan proses deteksi wajah, proses preprocessing selanjutnya yaitu melakukan crop atau pemotongan pada data 32
gambar yang telah diidentifikasi sebagai data ekspresi agar menjadi data yang siap menjadi data masukan yang kemudian dilanjutkan dengan proses pemodelan atau modelling dengan metode untuk melakukan pengenalan ekspresi. 3.3 Pemodelan MobileNetV2 Tahap pemodelan (modelling) atau bisa disebut juga proses pelatihan data dan validasi data pada penelitian pengenalan ekspresi wajah pada data video berbasis deep learning menggunakan arsitektur MobileNetV2 ini adalah pembuatan model pada dataset ekspresi wajah yang dilakukan setelah tahap preprocessing data selesai. Pemodelan dibuat dengan transfer learning arsitektur MobileNetV2 yang akan diterapkan pada penelitian ini memiliki tahapan-tahapan yang berdasarkan network structure dari MobileNetv2. Kelebihan dari MobileNetV2 dibandingkan dengan MobileNetV1 adalah yaitu penerepan linear bottleneck and inverted residual block pada jaringan [51]. Bottleneck residual block 1 Output Klasifikasi Ekspresi Bottleneck residual block - 7 × 7 × 1280 Conv 1x1, ReLU6 .. AvgPool Dwise Conv 3x3, ReLU6 56 × 56 × 24 224 × 224 x 3 1 x 1 x3Bottleneck residual block 112 × 112 × 32 7 × 7 × 160 7 × 7 × 320 1 × 1 × 1280 Add Conv 1x1 Conv Conv Bottleneck residual block 2 112 × 112 × 16 Fully Connected Layer Gambar 14 Arsitektur Model MobileNetV2 Pada gambar 14 merupakan arsitektur model MobileNetV2 yang merupakan tahapan-tahapan pembelajaran pada data yang dilakukan dalam proses pelatihan dan pengujian data. Hasil atau output yang didapatkan dari proses pemodelan adalah nilai akurasi yang dihasilkan selama proses pembelajaran dan model yang 33
siap digunakan untuk proses klasifikasi. Setelah mendapatkan nilai akurasi dan validasi kemudian dilanjutkan proses analisis dan proses evaluasi untuk menentukan kesimpulan penelitian. 3.4 Analisis dan Evaluasi Tahap evaluasi dilakukan untuk melakukan pemeriksaan nilai akurasi dari proses pemodalan atau hasil dari proses training data dan validasi data untuk menentukan kesimpulan penelitian. Pada tahapan analisis dan evaluasi menggunakan confusion matrix untuk mengukur kinerja suatu algoritma. Berikut ini komponen dalam confusion matrix sebagai berikut: Gambar 15 Confusion Matrix Sumber : Dengan confusion matrix kita bisa menghitung nilai akurasi, presisi, recall dan f1- score. Akurasi merupakan merupakan rasio prediksi benar (positif dan negatif) dengan keseluruhan data. Presisi yaitu rasio prediksi benar positif dibandingkan dengan keseluruhan hasil yang diprediksi positif. Recall (Sensitifitas) merupakan rasio prediksi benar positif dibandingkan dengan keseluruhan data yang benar positif, sedangkan F1-Score merupakan perbandingan rata-rata presisi dan recall Akurasi = 𝑇𝑃 + 𝑇𝑁 𝑇𝑃 + 𝐹𝑁 + 𝐹𝑃 + 𝑇𝑁 𝑥 100% 34 (12)
Precision = 𝑇𝑃 𝑇𝑃 + 𝐹𝑃 𝑥 100% Recall = 𝑇𝑃 𝑇𝑃 + 𝐹𝑁 𝑥 100% F1-Score = 2 𝑥 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑥 𝑅𝑒𝑐𝑎𝑙𝑙 𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 + 𝑅𝑒𝑐𝑎𝑙𝑙 𝑥 100% Keterangan: TP (True Positive) = Jumlah data positif yang terklasifikasi benar TN (True Negative) = Jumlah data negatif yang terklasifikasi benar FP (False Positive) = Jumlah data positif yang terklasifikasi salah FN (False Negative) = Jumlah data negatif yang terklasifikasi salah 3.5 Prediksi Ekspresi Video Tahap prediksi ekspresi pada data video menggunakakan browser sebagai alat untuk mendukung peneletian. Proses deteksi ekspresi dilakukan secara real-time dengan bantuan webcam sebagai alat untuk mendeteksi wajah dan untuk proses face-detection menggunakan tensorflowjs. Setelah proses deteksi wajah selesai maka hasil data dari deteksi wajah akan dilanjutkan proses klasifikasi dengan model arsitektur MobileNetV2. Model yang dihasilkan dari proses pemodelan(modelling) dalam format json akan dimuat (load) lagi dengan tensorflowjs untuk proses klasifikasi. Kemudian hasil klasifikasi ekspresi akan ditampilkan pada wajah secara real-time pada bagian atas wajah. Gambar 16 Teknik Prediksi Video 35 (13) (14) (15)
3.6 Kesimpulan Kesimpulan merupakan tahapan terakhir dalam penelitian ini berisikan beberapa rangkuman hasil analisis dan evaluasi dari semua skenario yang dilakukan pada penelitian pengenalan ekspresi wajah pada video berbasis deep learning menggunakan arsitektur MobileNetV2. 36
BAB 5 PENUTUP 5.1 Kesimpulan Berdasarkan hasil pemodelan atau pelatihan dan validasi data kemudian setelah tahapan proses analisis dan evaluasi dalam penelitian pengenalan ekspresi wajah pada data video berbasis deep learning menggunakan arsitektur MobileNetV2 dilakukan maka didapatkan kesimpulan sebagai berkut : 1. Penerapan model MobileNetV2 dalam pelatihan pengenalan ekspresi wajah menghasilkan kinerja yang baik terhadap semua dataset. 2. Hasil skenario berdasarkan dataset IMED mendapatkan nilai akurasi tertinggi yaitu rata-rata 95%, sedangkan BING 71% dan BINGIMED 73% akurasi. 3. Skenario juga dilakukan berdasarkan teknik augmentasi dengan membandingkan data yang menggunakan Real-Time augmentasi dengan data yang tidak diaugmentasi pada dataset BINGIMED. Real-Time augmentasi mendapatkan akurasi 63%. 4. Model yang dihasilkan dari pelatihan dapat diimplementasikan kedalam pengenalan ekspresi wajah dengan data video. 5.2 Saran Berdasarkan penelitian yang telah dilakukan, penulis mengusulkan beberapa saran yang bisa dilakukan untuk pengembangan penelitian ketahap selanjutnya. Adapun beberapa saran adalah sebagai berikut: 1. Melakukan fine-tuning atau melakukan eksperimen dengan memodifikasi hyperparameter terhadap arsitektur yang digunakan 62
DAFTAR PUSTAKA [1] C. Primasiwi, H. Tjandrasa, and D. A. Navastara, "Deteksi Ekspresi Wajah Menggunakan Fitur Gabor dan Haar Wavelet," J. Tek. ITS, vol. 7, no. 1, 2018. [2] P.Ekman and W.V. Friesen, "Constants across cultures in the face and emotion..pdf." p. 124,129, 1971. [3] S. Zhang, X. Pan, Y. Cui, X. Zhao, and L. Liu, "Learning Affective Video Features for Facial Expression Recognition via Hybrid Deep Learning," IEEE Access, vol. 7, pp. 32297-32304, 2019. [4] J. Yang, T. Qian, F. Zhang, and S. U. Khan, "Real-Time Facial Expression Recognition Based on Edge Computing," IEEE Access, vol. 9, pp. 76178- 76190, 2021. [5] A. Vulpe-Grigorasi and O. Grigore, "Convolutional Neural Network Hyperparameters optimization for Facial Emotion Recognition," 12th Int. Symp. Adv. Top. Electr. Eng. ATEE 2021, pp. 5-9, 2021. [6] K. Kulkarni et al., "Automatic Recognition of Facial Displays of Unfelt Emotions," IEEE Trans. Affect. Comput., vol. 12, no. 2, pp. 377-390, Apr. 2021. [7] N. Jain, S. Kumar, A. Kumar, P. Shamsolmoali, and M. Zareapoor, "Hybrid deep neural networks for face emotion recognition," Pattern Recognit. Lett., vol. 115, pp. 101-106, 2018. [8] M. Li, H. Xu, X. Huang, Z. Song, X. Liu, and X. Li, "Facial Expression Recognition with Identity and Emotion Joint Learning," IEEE Trans. Affect. Comput., vol. 12, no. 2, pp. 544-550, 2021. [9] S. S. E. and M. Z. Andrew G. Howard, "MobileNets: Open-Source Models for Efficient On-Device Vision," Google AI blog, 2017.
[10] L. Hu and Q. Ge, "Automatic facial expression recognition based on MobileNetV2 in Real-time," J. Phys. Conf. Ser., vol. 1549, no. 2, 2020. [11] D. Prasetyawan and S. Uyun, "Penentuan Emosi pada Video dengan Convolutional Neural Network," JISKA (Jurnal Inform. Sunan Kalijaga), vol. 5, no. 1, pp. 23-35, 2020. [12] S. Mikhaylevskiy, V. Chernyavskiy, V. Pavlishen, I. Romanova, and R. Solovyev, "Fast Emotion Recognition Neural Network for IoT Devices," Int. Semin. Electron Devices Des. Prod. SED 2021 - Proc., 2021. [13] R. Guetari, A. Chetouani, H. Tabia, and N. Khlifa, "Real time emotion recognition in video stream, using B-CNN and F-CNN," 2020 Int. Conf. Adv. Technol. Signal Image Process. ATSIP 2020, pp. 5-10, 2020. [14] A. John, M. C. Abhishek, A. S. Ajayan, S. Sanoop, and V. R. Kumar, "Real- time facial emotion recognition system with improved preprocessing and feature extraction," Proc. 3rd Int. Conf. Smart Syst. Inven. Technol. ICSSIT 2020, no. Icssit, pp. 1328-1333, 2020. [15] S. M. Gowri, A. Rafeeq, and S. Devipriya, "Detection of real-time facial emotions via deep convolution neural network," Proc. - 5th Int. Conf. Intell. Comput. Control Syst. ICICCS 2021, no. Iciccs, pp. 1033-1037, 2021. [16] S. E. Kahou, V. Michalski, K. Konda, R. Memisevic, and C. Pal, "Recurrent neural networks for emotion recognition in video," ICMI 2015 - Proc. 2015 ACM Int. Conf. Multimodal Interact., pp. 467-474, 2015. [17] M. S. Hossain and G. Muhammad, "Emotion recognition using deep learning approach from audio-visual emotional big data," Inf. Fusion, vol. 49, pp. 69- 78, 2019. [18] M. Moolchandani, S. Dwivedi, S. Nigam, and K. Gupta, "A survey on: Facial Emotion Recognition and Classification," Proc. - 5th Int. Conf. Comput. Methodol. Commun. ICCMC 2021, no. Iccmc, pp. 1677-1686, 2021.
[19] N. Mishra and A. Bhatt, "Feature extraction techniques in facial expression recognition," Proc. - 5th Int. Conf. Intell. Comput. Control Syst. ICICCS 2021, no. Iciccs, pp. 1247-1251, 2021. [20] A. F. Nafis, D. A. Navastara, and A. Yuniarti, "Facial Expression Recognition on Video Data with Various Face Poses Using Deep Learning," ICITEE 2020 - Proc. 12th Int. Conf. Inf. Technol. Electr. Eng., pp. 362-367, 2020. [21] S. Modi and M. H. Bohara, "Facial emotion recognition using convolution neural network," Proc. - 5th Int. Conf. Intell. Comput. Control Syst. ICICCS 2021, no. Iciccs, pp. 1339-1344, 2021. [22] A. G. Howard et al., "MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications," 2017. [23] M. Sandler, A. Howard, M. Zhu, A. Zhmoginov, and L. C. Chen, "MobileNetV2: Inverted Residuals and Linear Bottlenecks," Proc. IEEE Comput. Soc. Conf. Comput. Vis. Pattern Recognit., pp. 4510-4520, 2018. [24] F. Saxen, P. Werner, S. Handrich, E. Othman, L. Dinges, and A. Al-Hamadi, "Face attribute detection with mobilenetv2 and nasnet-mobile," Int. Symp. Image Signal Process. Anal. ISPA, vol. 2019-Septe, pp. 176-180, 2019. [25] Z. Liu, P. Luo, X. Wang, and X. Tang, "Deep learning face attributes in the wild," Proc. IEEE Int. Conf. Comput. Vis., vol. 2015 Inter, pp. 3730-3738, 2015. [26] D. Y. Liliana, T. Basaruddin, and I. I. D. Oriza, "The Indonesian Mixed Emotion Dataset (IMED): A facial expression dataset for mixed emotion recognition," in ACM International Conference Proceeding Series, 2018, pp. 56-60. [27] R. A. Asmara, B. S. Andjani, U. D. Rosiani, and P. Choirina, "Klasifikasi Jenis Kelamin Pada Citra Wajah Menggunakan Metode Naive Bayes," J. Inform. Polinema, vol. 4, no. 3, p. 212, 2018.
[28] D. L. Z. Astuti and Samsuryadi, "Kajian Pengenalan Ekspresi Wajah menggunakan Metode PCA dan CNN," Annu. Res. Semin. Fak. Ilmu Komput., vol. 4, no. 1, pp. 293-297, 2018. [29] A. Mehrabian, "Communication Without Words," in communication theory, Vol. 2., Routledge, 1968, pp. 53-56. [30] O. Prasetyowati and A. Linardi, "Perencanaan Aplikasi Peninjau Ekspresi Wajah Tokoh James Sullivan dalam Film Monster Inc," vol. 12, no. 1, 2017. [31] S. A. Hussain and A. Salim Abdallah Al Balushi, "A real time face emotion classification and recognition using deep learning model," J. Phys. Conf. Ser., vol. 1432, no. 1, 2020. [32] A. Santoso and G. Ariyanto, "Implementasi Deep Learning Berbasis Keras Untuk Pengenalan Wajah," Emit. J. Tek. Elektro, vol. 18, no. 01, pp. 15-21, 2018. [33] D. Lu and Q. Weng, "A survey of image classification methods and techniques for improving classification performance," Int. J. Remote Sens., vol. 28, no. 5, pp. 823-870, 2007. [34] J. Heaton, AIFH, Volume 3: Deep Learning and Neural Networks. 2015. [35] M. Kubat, An Introduction to Machine Learning. 2017. [36] J. W. G. Putra, "Pengenalan Konsep Pembelajaran Mesin dan Deep Learning," vol. 4, pp. 1-235, 2019. [37] F. F. Maulana and N. Rochmawati, "Klasifikasi Citra Buah Menggunakan Convolutional Neural Network," J. Informatics Comput. Sci., vol. 01, pp. 104-108, 2019. [38] V. Maha, P. Salawazo, D. Putra, J. Gea, F. Teknologi, and U. P. Indonesia, "Implementasi Metode Convolutional Neural Network ( CNN ) Pada Peneganalan Objek Video Cctv," J. Mantik Penusa, vol. 3, no. 1, pp. 74-79, 2019.
[39] S. Ren, K. He, R. Girshick, X. Zhang, and J. Sun, "Object detection networks on convolutional feature maps," IEEE Trans. Pattern Anal. Mach. Intell., vol. 39, no. 7, pp. 1476-1481, 2017. [40] K. Justin, L. Wang, J. Rao, and T. Lim, "Deep Learning Applications in Medical Image Analysis," IEEE Access, vol. 1213, pp. 3-21, 2018. [41] S. Sena, "Pengenalan Deep Learning Part 7 Convolutional Neural Network CNN," 2017. [Online]. Available: [Accessed: 26-Nov- 2020]. [42] M. Rezaei, H. Yang, and C. Meinel, Deep Learning for Medical Image Analysis. 2017. [43] S. Sharma, S. Sharma, and A. Athaiya, "Activation Functions in Neural Networks," Int. J. Eng. Appl. Sci. Technol., vol. 04, no. 12, pp. 310-316, 2020. [44] H. Abhirawan, Jondri, and A. Arifianto, "Pengenalan Wajah Menggunakan Convolutional Neural Networks (CNN)," e-Proceeding Eng., vol. 4, no. 3, pp. 4907-4916, 2017. [45] H. Abhirawan, Jondri, and A. Arifianto, "Pengenalan Wajah Menggunakan Convolutional Neural Networks (CNN)," Univ. Telkom, 2017. [46] Nitish,Srivastava, G. Hinton, Alex,Krizhevsky, Ilya,Sutskever, and Ruslan,Salakhutdinov, "Dropout: A Simple Way to Prevent Neural Networks from Overfitting," J. Mach. Learn. Res., Jan. 2014. [47] T. Nurhikmat, "Implementasi Deep Learning Untuk Image Classification Menggunakan Algoritma Convolutional Neural Network Pada Citra Wayang Golek," 2018. [48] I. N. Purnama and S. Primakara, "HERBAL PLANT DETECTION BASED
ON LEAVES IMAGE USING CONVOLUTIONAL NEURAL NETWORK WITH MOBILE NET ARCHITECTURE," vol. 6, no. 1, pp. 27-32, 2020. [49] S. F. Cotter, "MobiExpressNet: A deep learning network for face expression recognition on smart phones," Dig. Tech. Pap. - IEEE Int. Conf. Consum. Electron., vol. 2020-Janua, pp. 1-4, 2020. [50] D. King, "High Quality Face Recognition with Deep Metric Learning," 2015. [Online]. Available: recognition-with-deep.html. [51] Q. Xiang, G. Zhang, X. Wang, J. Lai, R. Li, and Q. Hu, "Fruit image classification based on Mobilenetv2 with transfer learning technique," ACM Int. Conf. Proceeding Ser., 2019. [52] S. A. Alasadi and W. S. Bhaya, "Review of Data Preprocessing Techniques.pdf," Journal of Engineering and Applie Sciences, vol. 12, no. 16. pp. 4102-4107, 2017. [53] Z. Wang, P. Wang, P. C. Louis, L. E. Wheless, and Y. Huo, "WearMask: Fast In-browser Face Mask Detection with Serverless Edge Computing for COVID-19," no. December, pp. 1-8, 2021. [54] D. Smilkov et al., "TensorFlow.js: Machine Learning for the Web and Beyond," 2019. [55] Tensorflow Library, "TensorFlow.js models." [Online]. Available: [Accessed: 04-Dec-2021]. [56] Mozilla Developer Network, "MediaDevices.getUserMedia() - Web APIs | MDN," 2015. [Online]. Available: [Accessed: 04-Dec-2021]. [57] V. Bazarevsky, Y. Kartynnik, A. Vakunov, K. Raveendran, and M. Grundmann, "BlazeFace: Sub-millisecond Neural Face Detection on Mobile
GPUs," pp. 3-6, 2019. [58] Tensorflow Library, "Tensorflow.js API," 2019. [Online]. Available: [Accessed: 04-Dec-2021].
LAMPIRAN DATA GAMBAR EKSPRESI WAJAH DARI IMED Berikut adalah data gambar ekspresi wajah dari Indonesian Mixed Emotion Dataset (IMED) yang digunakan pada penelitian ini, data terdiri dari 1519 data yang terbagi menjadi 7 kategori ekspresi yaitu angry (marah), disgust (jijik), fear ( takut), happy (senang), neutral (netral), sad (sedih) dan surprise (terkejut). Angry (Marah)
Disgust (Jijik)
Fear ( Takut)
Happy (Senang)
Neutral (Netral)
Sad (Sedih)
Surprise (Terkejut)
DATA GAMBAR EKSPRESI WAJAH DARI BING IMAGES Berikut ini data gambar ekspresi yang dikumpulkan dari mesin pencarian bing images yang dikumpulkan berdasarkan beberapa kata kunci tertentu berdasarakan 7 kategori ekspresi dasar. Data terdiri dari 1432 data yang terbagi mejadi 7 kelas. Berikut ini adalah beberapa gambar ekspresi wajah dari bing images: Angry (Marah)
Disgust (Jijik)
Fear ( Takut)
Happy (Senang)
Neutral (Netral)
Sad (Sedih)
Surprise (Terkejut)