KLASIFIKASI RAS MANUSIA MENGGUNAKAN METODE CONVOLUTIONAL NEURAL NETWORK BERBASIS
TELEGRAM BOT
Arya Danu Setyadi1, Felix Andreas Sutanto2
1,2,Universitas Stikubank Semarang, Jl Tri Lomba Juang, Semarang, Telp: (024) 8443240
3Program Studi Teknik Informatika, Fakultas Teknologi Informasi dan Industri, Universitas Stikubank e-mail: *1[email protected], *2[email protected]
Abstrak
Terdapat 4 ras pokok pada manusia yaitu Caucasian, Mongoloid, Negroid dan Australoid.
Kurangnya pengetahuan tentang ras manusia menjadi masalah yang sering terjadi belakangan ini, maka dari itu penelitian ini dibuat dengan tujuan untuk menambah pengetahuan masyarakat luas tentang ras- ras yang ada pada manusia. Penelitian ini menerapkan metode Convolutional Neural Network (CNN) dan Arsitektur Residual Network dengan 50 layer atau yang sering disebut ResNet-50, model klasifikasi menggunakan fitur Chat Bot pada aplikasi Telegram. Hasil dari training model klasifikasi Convolutional Neural Network diuji dengan data test menghasilkan hasil nilai akurasi sebesar 84%, hasil perhitungan nilai Recall adalah 84% dan 85% untuk nilai Precision
Kata Kunci: Convolutional Neural Network, Deep Learning, Arsitektur ResNet-50, Klasifikasi Citra, Ras Manusia
Abstract
There are four major races in human populations: Caucasian, Mongoloid, Negroid, and Australoid. The lack of knowledge about human races has become a problem in recent times. Therefore, this research was conducted to increase public knowledge about the different races found in humans. The research used Convolutional Neural Network (CNN) and a 50-layer architecture called ResNet-50, also known as a Residual Network, classification model are using Chat Bot feature in Telegram App.. The trained CNN model was tested with a test dataset and resulted in an accuracy score of 84%. The Recall score was 84%, and the Precision score was 85%.
Keywords: Convolutional Neural Network, Deep Learning, ResNet-50, Classification, Human Races
1.PENDAHULUAN
etiap mahluk hidup seperti manusia, hewan dan tumbuhan memiliki ras, ras adalah sebuah sistem klasifikasi yang menggolongkan sekumpulan mahluk hidup dan yang lain. Pada manusia terdapat 4 jenis ras pokok yaitu Caucasian, Mongoloid, Negroid dan Australoid. Di awal abad ke-20 istilah ini sering digunakan dalam arti biologis untuk menunjuk populasi manusia yang beraneka ragam dari segi genetik dengan anggota yang memiliki fenotipe (tampang luar) yang sama [1].
Convolutional Neural Network atau CNN adalah salah satu algoritma deep learning yang merupakan pengembangan dari Multi-Layer Perceptron (MLP), sehingga CNN dapat digunakan untuk melakukan klasifikasi data yang berlabel. Convolutional Neural Network merupakan modifikasi dari Deep Feed-Forward Network yang mana setiap lapisnya dibuat dalam bentuk topologi grid mendalam [2]. Dalam penelitian ini penggunaan algoritma Convolutional Neural Network (CNN) akan dipadukan dengan model arsitektur ResNet-50. Pada penelitian
[3]
arsitektur ResNet-50 terbukti mempunyai hasil akurasi tertinggi untuk klasifikasi citra wajah dibandingkan dengan model Haar Wavelet Transform (HWT),Cat Swarm Optimizaton (CSO) dan Biogeography-based Optimization (BBO).Implementasi Convolutional Neural Network (CNN) mendapatkan nilai akurasi tinggi seperti pada penelitian [4] dengan dataset yang sama dengan dataset yang digunakan pada penelitian ini yaitu UTKFace. Penelitian tersebut hanya mengklasifikasi 2 label yaitu label age dan gender dari 3 label yang tersedia pada dataset. Model klasifikasi menghasilkan pada penelitian tersebut menghasilkan performa akurasi 89,18%, presisi 89,28%, dan sensitivitas 89,17%, kemudian dalam mengklasifikasi usia dapat menghasilkan performa akurasi 74,14%, presisi 78,07%, dan sensitivitas 70,65%.
S
Penelitian selanjutnya [5] dilakukan klasifikasi ras kucing yang juga menggunakan metode Convolutional Neural Network (CNN) dan dikombinasikan dengan 4 model yaitu VGG16, InceptionV3, ResNet-50 dan Xception. Dataset pada penelitian tersebut berasal dari Oxford-IIIT yang memiliki 2393 data citra dan 12 kelas, dataset tersebut dibagi menjadi data training sebanyak 1068 citra, data validation sebanyak 528 citra, dan data testing sebanyak 797. Penelitian tersebut memperoleh hasil testing berupa akurasi untuk tiap modelnya yaitu 60.85%, 84.94%, 71.39%, dan 93.75%. Model ResNet-50 memperoleh hasil yang cukup baik dalam mengklasifikasi ras menggunakan metode Convolutional Neural Network (CNN).
Convolutional Neural Network (CNN) juga diaplikasikan pada bidang kesehatan yaitu untuk mengklasifikasi citra pigmen kanker kulit pada penelitian [6]. Penelitian ini menggunakan model Convolutional 2D yang memiliki 8 layer yaitu (16, 16, 32, 32, 64, 64, 128, 128) input layers pertama adalah (20,20) dan layer berikut nya (5,5 dan 3,3). Jenis pooling yang digunakan digunakan dalam penelitian ini adalah Max Pooling dan Average Pooling, dengan menggunakan dataset International Skin Imaging Collaboration (ISIC) 2018 dengan jumlah 10015 gambar penelitian ini memperoleh report nilai akurasi sebesar 75% recall 80% f1_score 81%. Dapat disimpulkan bahwa dengan menggunakan model dengan jumlah layer yang tinggi dapat pula meningkatkan nilai hasil klasifikasi.
Telegram adalah aplikasi pengirim pesan berbasis cloud pada mobile dan dekstop yang berfokus kepada keamanan dan kecepatan
[7]
. Pada aplikasi pesan Telegram terdapat fitur unggulan yaitu chat bot, fitur tersebut dapat menanggapi pesan yang dikirimkan oleh user dan dapat diintegrasikan dengan program lain. Bot sendiri adalah sejenis agen interaktif, program komputer yang dirancang untuk mensimulasikan percakapan cerdas dengan satu atau lebih manusia pengguna melalui pengenalan suara dan antarmuka obrolan [8]. Kemudian dengan adanya fitur Secret Chat, komunikasi antar pengguna Telegram akan lebih aman dikarenakan tidak meninggalkan jejak pada database Telegram.Kemudian dengan beberapa faktor yang telah dijelaskan, penulis ingin mendalami sebuah proses klasifikasi ras manusia berdasarkan citra wajah dengan menggunakan metode Convolutional Neural Network dan arsitektur ResNet-50 yang berbasis aplikasi Telegram. Dengan adanya penelitian ini diharapkan dapat menambah pengetahuan dan memudahkan dalam mengklasifikasikan ras manusia.
Bersumber pada hasil banding metode pada penelitian [3], jumlah data training yang digunakan pada penelitian [5] dan jumlah layer filters yang digunakan pada penelitian [6] maka penulis akan mencoba melakukan proses klasifikasi dengan menggunakan metode Convolutional Neural Network dan arsitektur ResNet-50 yang memanfaatkan fitur Chat Bot pada aplikasi Telegram dengan dataset UTKFace yang memiliki jumlah data yang lebih dari 20.000 citra data. Penelitian ini diharapkan membuat interface proses klasifikasi menjadi mudah dan mendapatkan nilai akurasi yang lebih tinggi.
2.METODE PENELITIAN
Pengutamaan pada penelitian ini adalah pengimplementasian arsitektur ResNet-50 dalam Convolutional Neural Network (CNN) yang nantinya akan diintegrasikan fitur bot yang ada pada aplikasi Telegram saat proses klasifikasi.
3.1. Data Penelitian
Data pada penelitian ini menggunakan dataset UTKFace [9]. Dataset ini memiliki lebih dari 20.000 data citra dengan rentang umur dari 0 hingga 116, data data tersebut memiliki 3 label yaitu umur, jenis kelamin dan ras. Dengan total 23705 data citra, diambil sebanyak 80% atau sebanyak 18964 data citra untuk proses training dan 20% atau sebanyak 4741 data citra untuk proses validation, data-data tersebut telah disamakan dari segi resolusi dan ukuran gambar. Selanjutnya pada tahap Train Classification Model, data training sebanyak 18964 data tadi akan digunakan untuk melatih model yang disusun menggunakan arsitektur ResNet-50. Kemudian jika model sudah dilatih maka akan dilanjutkan uji klasifikasi menggunakan 50 data citra dari setiap kelas yang akhirnya berjumlah 250 data citra test.
3.2 Tahapan Penelitian
Dalam menjalankan model Deep Learning pada penelitian ini, digunakan Tensorflow, Google Colab dan bahasa pemrogaman Python. Sedangkan untuk visualisasi data dibantu dengan Python 3.7.13, opencv-python 4.1.2.30, Numpy dan Matplotlib, metode yang digunakan adalah Convolutional Neural Network (CNN). Berikut urutan tahapan analisa data pada Gambar 1 dibawah ini:
Gambar 1. Tahapan Analisis Data
Dimulai dengan tahapan pertama yaitu Collecting Dataset, pada tahapan ini penulis mengunduh dataset pada situs kaggle.com yang telah diunggah oleh user bernama susanqq. Kemudian pada tahapan Data Preprocessing dilakukan pengelompokan data berdasarkan label ras yang telah ada pada nama file setiap data tersebut, ini ditujukkan agar model dapat lebih akurat dalam membaca data. Tahapan yang ketiga adalah menyiapkan model atau Classification Model Preparation dimana dataset dibagi menjadi 2 dengan 80% untuk data training dan 20% data validation, kemudian model yang telah disusun menggunakan arsitektur ResNet-50 dilatih menggunakan 80% data pada tahapan Training Classificattion Model. Setelah model selesai dilatih maka dilanjutkan dengan proses uji klasifikasi menggunakan 20%
data pada proses Model Testing, proses ini mengukur keakuratan model dalam mengklasifikasi data tersebut berdasarkan label ras.
3.3. Convolutional Neural Network (CNN)
Convolutional Neural Network (CNN) adalah bagian dari Deep Learning yang biasanya digunakan dalam pengolahan data image yang memiliki beberapa lapisan (hidden layer) dan membentuk tumpukkan [10]. Metode ini banyak digunakan dalam penelitian-penelitian terlebih dahulu dikarenakan hasil akurasi yang tinggi. Secara umum model CNN terdiri dari 4 komponen yaitu convolution layer, pooling layer, fungsi aktivasi, dan fully connected layer [11]. Bentuk umum model Convolutional Neural Network (CNN) dapat dilihat pada Gambar 2.
Gambar 2. Layer-layer Convolutional Neural Network 3.4. Tahapan Model Training
Dengan total 23705 data citra wajah manusia yang terbagi 5 label ras yaitu Asian, Black, Indian, White dan Others digunakan 18964 atau 80% data citra dari dataset untuk proses Model Training kemudian sisanya yaitu 4741 untuk data validation menggunakan library image preprocessing dari tensorflow. Kumpulan data tersebut telah diaugmentasi oleh author dataset UTKFace sehingga pada penelitian ini data tersebut telah siap dipakai. Pada tabel 1 menunjukkan detail pembagian data training dan data validation.
No Label Jumlah Kesuluruhan Data
Jumlah Data Train Jumlah Data Validation
1. Asian 3434 2747 687
2. Black 4526 3621 905
3. Indian 3975 3180 795
4. White 10078 8062 2016
5. Others 1692 1354 338,4
Total 23705 18964 4741
Tabel 2. Pembagian Dataset 3.5. Proses Klasifikasi
Pada tahap ini dimulai dengan menginputkan data citra wajah dengan resolusi 200x200 yang kemudian akan dirubah oleh model menjadi 224x224. Library cv2 menghasilkan output data citra dengan 3 channel warna yaitu Red, Green dan Blue maka dari itu diperlukan konversi kedalam bentuk RGB sehingga resolusi data citra sebelumnya diganti menjadi 224x224x3. Arsitektur model yang telah siap selanjutnya di-export agar dapat digunakan dalam script Telegram bot. Kemudian proses klasifikasi pada Telegram bot, user memberi input file yang berupa data citra melalui chat bot, kemudian model akan memproses data citra yang user kirimkan tersebut dan memberikan hasil klasifikasi kepada user melalui chat bot tadi.
3.HASIL DAN PEMBAHASAN
Pada proses training model klasifikasi diberi input data train yang berjumlah 18964. Kemudian model yang sudah melalui proses training diuji menggunakan data test agar dapat mengetahui tingkat keakurasian model tersebut. Proses uji menghasilkan data Confusion Matrix, Accurary, Recall dan Precision.
4.1. Confusion Matrix
Confusion Matrix adalah suatu metode yang digunakan untuk melakukan perhitungan akurasi pada konsep data mining
[12]
. Confusion Matrix berupa tabel yang merupakan hasil dari sebuah metode klasifikasi. Evaluasi menggunakan confusion matrix menghasilkan nilai Akurasi, Precision, Recall, serta F-Measure[13]
.Gambar 3. Tabel Confusion Matrix
Pada Gambar 3 diatas adalah tabel Confusion Matrix diatas yang merupakan output dari proses test pada model klasifikasi, pada hasil diatas dapat disimpulkan bahwa label “White” dan “Asian”
memperoleh hasil akurasi tertinggi dengan masing-masing jumlah 50 data terprediksi dengan benar, sedangkan label “Others” memperoleh hasil akurasi terendah yaitu 27 dari 50 data terprediksi dengan benar.
4.2. Accurary, Recall dan Precision.
Nilai Accurary, Recall dan Precision yang diperoleh model yang telah dibuat yaitu 88%
Accurary, 88% Recall dan 89% Precision. Accurary adalah perhitungan terhadap jumlah total prediksi yang benar, pada umumnya nilai akurasi dirumuskan pada persamaan (1).
𝐴𝑐𝑐𝑢𝑟𝑎𝑟𝑦 = 𝑇𝑃+𝑇𝑁
𝑇𝑃+𝐹𝑃+𝐹𝑁+𝑇𝑁 (1)
Recall adalah perhitungan terhadap kasus positif yang dinilai benar, nilai Recall dirumuskan pada persamaan (2) sebagai berikut:
𝑅𝑒𝑐𝑎𝑙𝑙 = 𝑇𝑃
𝑇𝑃+𝐹𝑁 (2)
Precision adalah perhitungan terhadap perkiraan kasus positif yang dinilai benar , nilai Precision dirumuskan persamaan (3) sebagai berikut:
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 = 𝑇𝑃
𝑇𝑃+𝐹𝑃 (3) Keterangan :
TP : True Positive FP : False Positive TN : True Negative FN : False Negative
4.3. Pengujian Dengan Data Baru
Pada proses pengujian ini diambil beberapa data citra dari setiap kelas yang selanjutnya akan digunakan untuk menguji model. Data yang digunakan di proses pengujian data baru berjumlah 50 data, pada tabel 3 disebutkan hasil pengujian data baru untuk setiap label ras yang telah dikenali model.
Tabel 3. Hasil Accurary, Precison dan Recall menggunakan data baru.
No. Kelas Akurasi Precision Recall
1. Asian 0.94 0.89 1.00
2. Black 0.92 0.88 0.98
3. Indian 0.90 0.93 0.86
4. Others 0.70 1.00 0.54
5. White 0.87 0.77 1.00
Nilai Average 0.87 0.89 0.88
4.4. Rancangan Uji Telegram Bot
Evaluasi model menggunakan Telegram bot sebagai media input oleh user untuk melakukan pengujian model dan proses klasifikasi data citra. Alur pada Telegram bot diilustrasikan pada Gambar 4 sebagai berikut:
Gambar 4.Alur Klasifikasi Melalui Telegram Bot
Dimulai dengan user menginputkan data citra yang akan diklasifikasi melalui Telegram bot lalu model yang telah di-export pada Telegram bot akan melakukan klasifikasi pada data citra yang user kirimkan, selanjutnya model akan mengirimkan hasil klasifikasi kepada user melalui Telegram bot. Hasil uji klasifikasi menggunakan data baru dapat dilihat pada tabel 4 sebagai berikut:
Tabel 4. Nilai hasil Accurary uji klasifikasi menggunakan data baru.
No Input Data Citra Label Prediksi Hasil Prediksi Akurasi
1. Asian Asian Benar 61,72%
2. Black Black Benar 93,81%
3. Indian Black Others 54,21%
4. White White Benar 100%
5. Others Others Benar 66,4%
4. KESIMPULAN
Berdasarkan hasil analisis dari penelitian yang telah dilakukan dapat disumpulkan bahwa proses klasifikasi yang menggunakan metode Convolutional Neural Network (CNN) yang dipadukan dengan arsitektur ResNet-50 memperoleh nilai akurasi yang baik sebesar 88%. Hasil yang menggunakan tabel Confusion Matrix sebagai output model klasifikasi yaitu 88% untuk nilai Recall, 89% untuk nilai Precision dan 88% untuk nilai Accurary.
Model pada penelitian ini masih memiliki kelemahan dalam mengklasifikasi ras-ras manusia seperti Hispanic, Latino dan Middle Eastern dikarenakan memiliki citra kulit yang hampir sama dengan ras lain. Sedangkan untuk ras Negroid atau yang diberi label “Black” pada dataset, model dapat dengan mudah mengklasifikasi dikarenakan pada data citra ras tersebut mempunyai warna kulit yang lebih gelap dari ras yang lainya. Kualitas data training dan validation sangat mempengaruhi kinerja model.
5. SARAN
Berdasarkan penelitian ini maka terdapat beberapa saran yang perlu diperhatikan untuk penelitian selanjutnya adalah sebagai berikut:
1. Data yang digunakan sebaiknya mempunyai pencahayaan yang baik sehingga warna kulit pada data citra dan bentuk wajah dapat terbaca oleh model dengan baik.
2. Mempunyai data training yang kuat sehingga model dapat memprediksi dengan lebih baik.
3. Mempunyai data training yang dapat membedakan dengan jelas ras “Others” dan “Indian” dapat meningkatkan nilai akurasi model.
4. Penelitian ini dapat ditingkatkan yaitu dengan menggunakan kamera secara real time.
UCAPAN TERIMA KASIH
Penulis mengucapkan terima kasih yang sebesar-besarnya kepada B’tari Alma Tasya dan Robby Birham Nurfajri yang selalu memberikan dukungan, dan bapak Felix Andreas Sutanto selaku dosen pembimbing yang sedari awal selalu memberikan arahan sehingga penulis dapat menyelesaikan penelitian ini dengan baik.
DAFTAR PUSTAKA
[1] J. Lie, Modern Peoplehood. Cambridge: Harvard University, 2021. doi: 10.2307/j.ctv1smjsvz.
[2] L. Deng, Deep Learning: Methods and Applications. 2014. doi: 10.1561/9781601988157.
[3] B. Li and D. Lima, “Facial expression recognition via ResNet-50,” International Journal of Cognitive Computing in Engineering, vol. 2, pp. 57–64, Jun. 2021, doi:
10.1016/J.IJCCE.2021.02.002.
[4] R. Munarto and A. Darma, “Klasifikasi Gender dan Usia Berdasarkan Citra Wajah Manusia Menggunakan Convolutional Neural Network,” Setrum : Sistem Kendali-Tenaga-elektronika- telekomunikasi-komputer, vol. 10, no. 2, 2021, doi: 10.36055/setrum.v10i2.12991.
[5] M. Afif, A. Fawwaz, K. N. Ramadhani, and F. Sthevanie, “Klasifikasi Ras pada Kucing menggunakan Algoritma Convolutional Neural Network(CNN),” Jurnal Tugas Akhir Fakultas Informatika, vol. 8, no. 1, 2020.
[6] Luqman Hakim, Z. Sari, and H. Handhajani, “Klasifikasi Citra Pigmen Kanker Kulit Menggunakan Convolutional Neural Network,” Jurnal RESTI (Rekayasa Sistem dan Teknologi Informasi), vol. 5, no. 2, 2021, doi: 10.29207/resti.v5i2.3001.
[7] F. Alkhezzi and W. Al-Dousari, “The impact of mobile learning on ESP learners’ performance,”
Journal of Educators Online, vol. 13, no. 2, 2016, doi: 10.9743/JEO.2016.2.4.
[8] S. Sayed, R. Jain, B. Lokhandwala, F. Barodawala, and M. Rajkotwala, “Android based Chat- Bot,” Int J Comput Appl, vol. 137, no. 10, 2016, doi: 10.5120/ijca2016908876.
[9] SANJAYA SUBEDI, “UTKFace 20k+ cropped face images with age, gender and ethnicity,”
2018. https://www.kaggle.com/datasets/jangedoo/utkface-new (accessed Dec. 24, 2022).
[10] S. N. Rahmawati, E. W. Hidayat, and H. Mubarok, “IMPLEMENTASI DEEP LEARNING PADA PENGENALAN AKSARA SUNDA MENGGUNAKAN METODE CONVOLUTIONAL NEURAL NETWORK,” INSERT : Information System and Emerging Technology Journal, vol.
2, no. 1, 2021, doi: 10.23887/insert.v2i1.37405.
[11] S. Indolia, A. K. Goswami, S. P. Mishra, and P. Asopa, “Conceptual Understanding of Convolutional Neural Network- A Deep Learning Approach,” in Procedia Computer Science, 2018. doi: 10.1016/j.procs.2018.05.069.
[12] P. Mayadewi and E. Rosely, “Prediksi Nilai Proyek Akhir Mahasiswa Menggunakan Algoritma Klasifikasi Data Mining,” Seminar Nasional Sistem Informasi Indonesia, 2015.
[13] D. Putra and A. Wibowo, “Prediksi Keputusan Minat Penjurusan Siswa SMA Yadika 5 Menggunakan Algoritma Naïve Bayes,” Prosiding Seminar Nasional Riset Dan Information Science (SENARIS), vol. 2, 2020.