6 Universitas Kristen Petra
BAB 2. LANDASAN TEORI
Pada bab ini dijelaskan mengenai semua teori yang digunakan untuk
membuat aplikasi image recognition. Beberapa teori dan metode utama yang
digunakan untuk membuat aplikasi ini adalah Faster R-CNN dan YOLO. Berikut
adalah penjelasan mengenai teori-teori tersebut.
2.1. Teori Umum
Pada subbab ini dijelaskan secara umum teori yang mendukung secara
mendasar untuk mendasari penelitian ini.
2.1.1. Image
Image atau disebut citra adalah sebutan untuk gambar yang diambil, di-
copy dan disimpan pada perangkat elektronik (Rouse, 2016). Sebuah image
memiliki banyak jenis yang dikenal sebagai ekstensi image. Berdasarkan ekstensi
tersebut sebuah image memiliki cara penyimpanan nilai-nilai yang
merepresentasikan gambar image pada layar perangkat elektronik.
Dalam penelitian ini jenis ekstensi yang akan digunakan adalah JPEG
(Joint Photographic Experts Group). Jenis ekstensi JPEG sebuah file grafik image
yang dikembangkan oleh sebuah grup atau organisasi ahli dengan tujuan meng-
compress algoritma untuk keperluan komputasi image pada computer (Rouse,
2016). File Image dengan jenis ekstensi JPEG biasanya berakhiran .jpg.
2.1.2. Sedan
Mobil jenis sedan adalah mobil yang didesain untuk 5 penumpang.
Berbeda dengan jenis mobil lain yang berukuran lebih besar, sedan berukuran lebih
kecil sehingga mengurangi biaya pajak dan biaya keseluruhan dari jenis mobil lain
yang ukurannya lebih besar. (Shankar, 2015). Contoh jenis mobil sedan dapat
dilihat pada Gambar 2.1.
7 Universitas Kristen Petra
Gambar 2.1. Contoh mobil sedan
Sumber: CarTrade, url: https://www.cartrade.com/blog/2013/auto-
guides/different-car-body-types-494.html (diakses 20 November 2018)
2.1.3. Multi Purpose Vehicle (MPV)
Mobil dengan jenis Multi Purpose Vehicle atau biasa disingkat MPV
adalah mobil yang didesain untuk mengangkut jumlah penumpang yang lebih
banyak dengan nyaman. Jumlah penumpang yang dimaksud bervariasi dari 5
hingga 7 orang dengan ruang untuk penyimpanan bagasi tergantung dari model dan
desain mobilnya. MPV biasa juga dikenal dengan sebutan minivan. (Dory, 2015).
Salah satu contoh mobil MPV dapat dilihat pada Gambar 2.2.
Gambar 2.2. Contoh mobil MPV
Sumber: Medium, url: https://medium.com/@JohnDory/what-is-the-difference-
between-suvs-mpvs-and-crossovers-37dd580fbffc (diakses 20 November 2018)
8 Universitas Kristen Petra
2.1.4. Sport Utitily Vehicle (SUV)
Sport Utility Vehicle atau yang biasa disingkat SUV adalah jenis mobil
yang memiliki desain penampilan yang kasar dan tebal sehingga terlihat lebih besar
dibandingkan dengan mobil roda 4 lainnya. SUV awalnya didesain untuk olahraga
offroad. Olahraga offroad adalah jenis olahraga yang menggunakan kendaraan roda
4 untuk melalui berbagai jalur yang ekstrim seperti jalan bebatuan, sungai ataupun
mendaki gunung. Awal dari SUV dapat dilihat dari mobil Jeep. (Dory, 2015). Salah
satu contoh mobil jenis SUV dapat dillihat pada Gambar 2.3.
Gambar 2.3. Contoh mobil SUV
Sumber: Medium, url: https://medium.com/@JohnDory/what-is-the-difference-
between-suvs-mpvs-and-crossovers-37dd580fbffc (diakses 20 November 2018)
2.1.5. Bus
Bus adalah kendaraan kelas besar yang didesain untuk mengangkut
penumpang dalam jumlah yang banyak dan memiliki jalur khusus. Bus awalnya
diciptakan untuk menggantikan peran streetcar (semacam kereta kecil yang
memiliki rel) sebagai kendaraan umum dengan rute khusus yang lebih fleksibel
(lebih fleksibel karena bus dapat dioperasikan pada jalan umum tanpa
menggunakan rel seperti streetcar) (Easton & Cromer, tt). Contoh bus dapat dilihat
pada Gambar 2.4.
9 Universitas Kristen Petra
Gambar 2.4. Contoh bus
Sumber: Britannica, url: https://www.britannica.com/technology/bus-vehicle
(diakses 20 November 2018)
2.2. Tensorflow
Tensorflow adalah sebuah framework open source yang dikembangkan
oleh para penelili dan pekerja di Google Brain Team. Tensorflow digunakan untuk
membantu komputasi dalam machine learning yang dapat berjalan di cpu, gpu
maupun tpu. Penggunaan tensorflow yang cukup fleksibel dengan menyediakan
API membuat banyak peneliti machine learning untuk memilih tensorflow sebagai
framework untuk penelitiannya (Tensorflow, tt).
2.3. Artificial Neural Network
Artificial Neural Network atau yang dikenal dengan nama Jaringan Syaraf
Tiruan (JST) merupakan sistem proses komputasi yang terinspirasi dari sistem saraf
biologis manusia seperti otak (O’Shea & Nash, 2015). JST terdiri dari sejumlah
interkoneksi node komputasi yang disebut neuron. Struktur dasar dari JST terdiri
dari 3 jenis layer utama, yaitu input¸ hidden, dan output layer seperti pada Gambar
2.5.
10 Universitas Kristen Petra
Gambar 2.5. Model dasar jaringan syaraf tiruan
Sumber: Towards Data Science, url: https://towardsdatascience.com/applied-
deep-learning-part-1-artificial-neural-networks-d7834f67a4f6 (diakses 7 Oktober
2018)
Dalam melakukan training, sejumlah iterasi akan dijalankan untuk
pengambilan data dari seluruh input yang ada. Satuan untuk iterasi tersebut adalah
epoch. 1 epoch akan terlampaui apabila seluruh data yang di-input-kan telah
diproses dan melalui komputasi JST. Selain istilah epoch, ada juga sebuah nilai
yang berfungsi sebagai variabel yang mengontrol perubahan nilai dalam siklus
training, yaitu learning rate,
Jaringan Syaraf Tiruan yang akan dijelaskan pada subab ini meliputi
Convolutional Neural Network yang merupakan dasar dari Faster R-CNN dan
Neural Network YOLO.
2.3.2. Convolutional Neural Network
Convolutional Neural Network (CNN) merupakan JST yang neuron di
dalam layer-nya tersusun menjadi 3 dimensi (O’Shea & Nash, 2015). Berbeda
dengan JST pada umumnya, neuron dalam layer tertentu pada CNN hanya akan
terhubung ke wilayah kecil pada layer sebelumnya. O’Shea dan Nash juga
menjelaskan bahwa penggunaan CNN difokuskan pada neural network yang
menerima input berupa citra (image).
11 Universitas Kristen Petra
Terdapat 3 jenis layer selain input dan output layer pada CNN, yaitu
convolution layer, pooling layer dan fully-connected layer. Untuk arsitekturnya
dapat dilihat pada Gambar 2.6.
Gambar 2.6. Arsitektur convolutional neural network
Sumber: A Beginner's Guide To Understanding Convolutional Neural Networks,
url: https://adeshpande3.github.io/A-Beginner%27s-Guide-To-Understanding-
Convolutional-Neural-Networks/ (diakses 7 Oktober 2018)
Convolution Layer merupakan inti dari CNN. Pada layer ini parameter
yang difokuskan adalah penggunaan kernel yang dilatih (O’Shea & Nash, 2015).
Ilustrasi konvolusi (convolution) dapat dilihat pada Gambar 2.7.
Gambar 2.7. Ilustrasi konvolusi
Sumber: Introduction to Convolution Neural Networks, url:
https://engineering.huew.co/introduction-to-convolution-neural-networks-
18981d1cd09a (diakses 7 Oktober 2018)
12 Universitas Kristen Petra
Pooling Layer pada CNN bertujuan untuk mengurangi dimensi dan
kompleksitas dari fitur (O’Shea & Nash, 2015). Cara kerja pooling adalah dengan
mengambil kelompok atau bagian dari fitur lalu menjadikannya satu nilai sebagai
representasi dari nilai-nilai pada kelompok yang diambil. Pooling bisa dilakukan
dengan fungsi rata-rata atau maximum. Contoh ilustrasi pooling dapat dilihat pada
Gambar 2.8.
Gambar 2.8. Ilustrasi pooling
Sumber: Using Convolutional Neural Networks for Image Recognition, url:
https://www.embedded-vision.com/platinum-members/cadence/embedded-vision-
training/documents/pages/neuralnetworksimagerecognition (diakses 7 Oktober
2018)
Sementara fully-connected layer pada CNN mengandung neuron yang
terhubung langsung dengan 2 neuron yang berada pada layer yang berdekatan
(O’Shea & Nash, 2015). Fully-connected layer melakukan agregasi terhadap nilai-
nilai yang dihasilkan layer sebelumnya untuk dipersiapkan ke layer selanjutnya
(biasanya layer setelah fully-connected layer adalah layer untuk melakukan
klasifikasi).
2.3.3. Faster R-CNN
Faster Region based Convolutional Neural Network atau biasa disingkat
Faster R-CNN adalah sebuah metode yang digunakan untuk mendeteksi objek pada
sebuah gambar. Faster R-CNN adalah metode yang menggunakan Fast R-CNN dan
13 Universitas Kristen Petra
RPN (Region Proposal Network) sebagai arsitektur utamanya. Metode ini sama
dengan Fast R-CNN kecuali bagian selective search pada Fast R-CNN diganti
dengan RPN (Ren, He, Girshick, & Sun, 2016).
Untuk mencapai tujuan dalam melakukan deteksi ada beberapa tugas / task
yang harus dilalui. Beberapa tugas / task itu adalah:
1. Convolution
Pada langkah ini sebuah gambar akan dikonvolusi sehingga menghasilkan
fitur yang dikenal dengan convolutional feature maps yang nantinya akan menjadi
input untuk RPN.
2. Region Proposal Network (RPN)
RPN akan menjalankan sliding windows dimana masing-masing sliding
windows ini akan memiliki 9 anchors (3 ukuran dengan rasio 1:1, 1:2, 2:1 untuk
setiap ukuran). (Gao, 2017). Output dari RPN ada 2 jenis, yaitu output untuk
classification layer dan output untuk regression layer. Untuk classification layer,
terdapat 2 prediksi nilai, prediksi bahwa anchor teresebut adalah background dan
prediksi bahwa anchor tersebut adalah foreground (objek). Untuk regression layer,
terdapat 4 prediksi output, yaitu ∆𝑥𝑐𝑒𝑛𝑡𝑒𝑟, ∆𝑦𝑐𝑒𝑛𝑡𝑒𝑟, ∆𝑤𝑖𝑑𝑡ℎ, dan ∆ℎ𝑒𝑖𝑔ℎ𝑡, yang
merupakan nilai-nilai untuk mengubah ukuran anchor atau bounding box agar lebih
menyesuaikan ukuran objek (Javier, 2018). Ilustrasi untuk anchor dapat dilihat
pada Gambar 2.9.
Perhitungan Loss untuk RPN adalah jumlah loss dari classification dan
regression. Dimana classification loss menggunakan persamaan (2.1).
𝑐𝑟𝑜𝑠𝑠_𝑒𝑛𝑡𝑟𝑜𝑝𝑦(𝑝𝑟𝑒𝑑𝑖𝑐𝑡𝑒𝑑_𝑐𝑙𝑎𝑠𝑠, 𝑎𝑐𝑡𝑢𝑎𝑙_𝑐𝑙𝑎𝑠𝑠) (2.1)
Cross Entropy adalah sebuah loss function yang digunakan untuk
menghitung perbedaan dari 2 atau lebih distribusi probabilitas. Loss Classification
menggunakan persamaan cross entropy karena dalam proses klasifikasi akan ada
nilai untuk class actual dan ada nilai untuk class yang diprediksi sehingga dari 2
14 Universitas Kristen Petra
nilai ini dapat dihitung perbedaannya. Sedangkan persamaan untuk menghitung
loss dari regression dapat dilihat pada persamaan (2.2).
Gambar 2.9. Ilustrasi anchor
Sumber: DataScience, url:
https://datascience.stackexchange.com/questions/27277/faster-rcnn-how-anchor-
work-with-slider-in-rpn-layer (diakses 13 Oktober 2018)
𝐿𝑙𝑜𝑐(𝑡𝑢, 𝑣) = ∑ 𝑠𝑚𝑜𝑜𝑡ℎ𝐿1(𝑡𝑖𝑢 − 𝑣𝑖)
𝑖∈{𝑥,𝑦,𝑤,ℎ}
(2.2)
Untuk setiap proposal yang dihasilkan mengandung foreground akan
dilakukan fungsi smoothing L1 untuk bounding box yang dihasilkan (lokasi
proposal) dan bounding box dari ground truth gambar yang menjadi input. Untuk
proposal yang diklasifikasi sebagai background tidak perlu dihitung karena
background tidak memiliki ground truth. Perhitungan smoothing L1 dapat dilihat
pada persamaan (2.3).
𝑠𝑚𝑜𝑜𝑡ℎ𝐿1(𝑥) = {
0.5𝑥2
|𝑥| − 0.5
𝑖𝑓 |𝑥| < 1𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒
} (2.3)
3. Region of Interest Pooling (ROI Pooling)
Setelah mendapatkan beberapa proposal dari RPN, dipastikan dimensi
(width x height) dari setiap proposal belum tentu sama. ROI Pooling bertugas untuk
menyamakan dimensi setiap proposal yang dihasilkan oleh RPN agar lebih mudah
untuk diproses pada tahapan classifier dan regressor. Menyamakan dimensi adalah
15 Universitas Kristen Petra
dengan cara mengecilkan dimensi yang ada, untuk nilai yang dipertahankan adalah
nilai maksimum dari setiap daerah yang dibagi. (Grel, 2017). Untuk ilustrasi ROI
Pooling dapat dilihat pada Gambar 2.10.
Gambar 2.10. Pembagian daerah ROI Pooling
Sumber: DeepSense, url: https://deepsense.ai/region-of-interest-pooling-
explained/ (diakses 13 Oktober 2018)
4. Classification & Regression
Input dari layer ini adalah RoI yang didapatkan dari ROI Pooling
sebelumnya. Untuk setiap RoI, akan dihitung nilai probabilitas untuk setiap class
yang telah di-training. Hasil probabilitas tertinggi merupakan hasil klasifikasi akhir
yang menunjukkan class RoI. Untuk bagian regression-nya menggunakan output
prediksi dari RPN agar box yang dibuat sesuai dengan gambar objek (Javier, 2018).
2.3.4. You Only Look Once (YOLO)
YOLO akan membagi gambar yang di- input menjadi grid berukuran 𝑆 ×
𝑆, dimana nilai 𝑆 adalah 7 dengan input gambar berukuran 448 x 448. Untuk
16 Universitas Kristen Petra
mendapatkan bounding box, akan dilakukan konvolusi dari input-an gambar,
sehingga hasil akhirnya akan mendapat ukuran bounding box sebesar 𝑆 × 𝑆 × 𝐵 ∗
(5 + 𝐶) dimana B adalah banyaknya bounding box (umumnya 2) dalam 1 grid dan
C adalah banyaknya class yang dapat diklasifikasi. Nilai 𝐵 dikalikan dengan 5
karena sebuah bounding box memiliki 5 nilai yang perlu disimpan, koordinat x,
koordinat y, lebar (width), tinggi (height), dan confidence score (nilai probabilitas
bounding box yang bersangkutan memiliki sebuah objek) (Redmon, Divvala,
Girshick, & Farhadi, 2016).
Untuk semua atribut pada bounding box akan dilakukan normalisasi
sehingga nilainya menjadi antara 0 hingga 1. Koordinat x dan y akan dinormalisasi
menyesuaikan titik kiri atas dari grid yang bersangkutan. Dan tinggi dan lebar akan
dinormalisasi sesuai dengan ukuran gambar (width dan height). Nilai koordinat x
dan y pada sebuah bounding box pada setiap grid merupakan titik tengah grid yang
bersangkutan (Menegaz, tt). Untuk ilustrasinya dapat dilihat pada Gambar 2.11.
Gambar 2.11. Ilustrasi atribut x, y, tinggi dan lebar sebuah bounding box
Sumber: Hackernoon, url: https://hackernoon.com/understanding-yolo-
f5a74bbc7967 (diakses 12 Oktober 2018)
Loss function yang digunakan menghitung loss konvolusi dari YOLO
terdiri dari beberapa bagian. Untuk bagian yang pertama dapat dilihat pada
persamaan (2.4) berikut yang merupakan persamaan untuk menghitung loss dari
nilai koordinat x dan y yang diprediksi.
17 Universitas Kristen Petra
𝜆𝑐𝑜𝑜𝑟𝑑 ∑ ∑ 𝕝𝑖𝑗𝑜𝑏𝑗(𝑥𝑖 − �̂�𝑖)2 + (𝑦𝑖 − �̂�𝑖)2
𝐵
𝑗=0
𝑆2
𝑖=0
(2.4)
Untuk setiap bounding box (S) pada setiap grid (B) akan menjumlahkan
nilai keberadaan objek (𝕝𝑖𝑗𝑜𝑏𝑗
) yang dikalikan dengan sum square error titik
koordinat objek yang diprediksi. Nilai keberadaan objek 1 apabila pada bounding
box tersebut memprediksi adanya objek dan 0 apabila background. Dengan 𝑥𝑖, 𝑦𝑖
sebagai koordinat titik tengah objek yang diprediksi dan �̂�𝑖, �̂�𝑖 sebagai koordinat
titik tengah objek yang aktual. 𝜆𝑐𝑜𝑜𝑟𝑑 adalah sebuah konstanta penalty yang bernilai
5.
Loss Function berikutnya akan menghitung tinggi dan lebar objek yang
diprediksi. Untuk persamaan loss-nya dapat dilihat pada persamaan (2.5).
𝜆𝑐𝑜𝑜𝑟𝑑 ∑ ∑ 𝕝𝑖𝑗𝑜𝑏𝑗
(√𝑤𝑖 − √�̂�𝑖)2
+ (√ℎ𝑖 − √ℎ̂𝑖)
2𝐵
𝑗=0
𝑆2
𝑖=0
(2.5)
Untuk persamaan perhitungan loss tinggi dan lebar objek, mirip dengan
persamaan perhitungan loss koordinat x dan y, namun tinggi dan lebar objek yang
diprediksi dan aktualnya diakar kuadrat. Tujuan melakukan akar kuadrat agar
menormalisasi penyimpangan (loss) antara bounding box yang berukuran besar dan
kecil.
Kemudian untuk menghitung loss dari nilai confidence score dapat dilihat
pada persamaan (2.6).
∑ ∑ 𝕝𝑖𝑗𝑜𝑏𝑗
(𝐶𝑖 − �̂�𝑖)2
+ (𝐶𝑖 − �̂�𝑖)2
𝐵
𝑗=0
𝑆2
𝑖=0
+ 𝜆𝑛𝑜𝑜𝑏𝑗 ∑ ∑ 𝕝𝑖𝑗𝑛𝑜𝑜𝑏𝑗
(𝐶𝑖 − �̂�𝑖)2
+ (𝐶𝑖 − �̂�𝑖)2
𝐵
𝑗=0
𝑆2
𝑖=0
(2.6)
Nilai 𝐶𝑖 adalah confidence score yang didapatkan dan �̂�𝑖 adalah nilai
intersection over union antara bounding box yang diprediksi dan bounding box dari
ground truth. 𝕝𝑖𝑗𝑛𝑜𝑜𝑏𝑗
adalah nilai ketidakberadaan objek dimana 1 apabila
18 Universitas Kristen Petra
background dan 0 apabila diprediksi adanya objek. 𝜆𝑛𝑜𝑜𝑏𝑗 merupakan penalty
apabila terdapat bounding box yang memprediksi background sebagai objek dengan
nilai 0.5.
Dan loss function untuk klasifikasi dapat dilihat pada persamaan (2.7).
∑ 𝕝𝑖𝑗𝑜𝑏𝑗
∑ (𝑝𝑖(𝑐) − 𝑝�̂�(𝑐))2
𝑐 𝜖 𝑐𝑙𝑎𝑠𝑠𝑒𝑠
𝑆2
𝑖=0
(2.7)
Dengan 𝑝𝑖(𝑐) adalah class yang diprediksi dan 𝑝�̂�(𝑐) untuk class actual.
Sum Square Error akan dijalankan untuk setiap class yang diprediksi dan
aktualnya. Bernilai 1 apabila class yang diprediksi maupun aktual adalah benar dan
0 apabila tidak.
Setelah mendapatkan bounding box-nya, dapat dihitung probabilitas kelas
akhir melalui probabilitas setiap kelasnya dan membuang semua bounding box yang
nilainya di bawah threshold (umumnya 0.3) (machinethink.net, 2017).
2.4. Intersection Over Union
Intersection over Union (IoU) merupakan metode evaluasi untuk
mengukur akurasi deteksi objek terhadap suatu dataset. IoU membutuhkan 2 area
yang akan di-intersect dan di-union, 2 area tersebut adalah area ground-truth
bounding box yang merupakan bounding box aktual dan area yang dideteksi dari
model yang dibangun (Rosebrock, 2016). Ilustrasi formula untuk IoU dapat dilihat
pada Gambar 2.12.
2.5. One Hot Encoding
One Hot Encoding adalah cara merepresentasikan data yang digunakan
agar dapat dimengerti oleh komputer. Cara kerja One Hot adalah dengan membuat
sebuah tensor atau array 1 dimensi dengan panjang sebanyak jenis class yang ada
dan mempunyai isi biner antara 0 atau 1 (DelSole, tt). Untuk ilustrasinya dapat
dilihat pada Gambar 2.13.
19 Universitas Kristen Petra
Gambar 2.12. Ilustrasi perhitungan intersection over union
Sumber: PyImageSearch, url:
https://www.pyimagesearch.com/2016/11/07/intersection-over-union-iou-for-
object-detection/ (diakses 13 Oktober 2018)
Gambar 2.13. Ilustrasi one hot encoding
Sumber: Medium, url: https://medium.com/@michaeldelsole/what-is-one-hot-
encoding-and-how-to-do-it-f0ae272f1179 (diakses 14 Oktober 2018)
2.6. Confusion Matrix
Confusion matrix adalah sebuah tabel yang menunjukkan kinerja dari
sebuah model klasifikasi yang memiliki data jawaban benar (supervise). Dari tabel
yang didapatkan, untuk model klasifikasi yang dimiliki dapat dihitung akurasi,
presisi, F-Score dan masih banyak lagi variabel yang dapat dihitung berdasarkan
kondisi data yang diprediksi atau diklasifikasikan (DataSchool, 2014).
Isi dari tabel confusion matrix ada 4, yaitu
1. True Positive (TP), kondisi dimana model mengklasifikasikan data
sebagai ya (TRUE) dan jawaban aktualnya adalah ya (TRUE),
20 Universitas Kristen Petra
2. True Negative (TN), kondisi dimana model mengklasifikasikan data
sebagai tidak (FALSE) dan jawaban aktualnya adalah tidak
(FALSE),
3. False Positive (FP), kondisi dimana model mengklasifikasikan data
sebagai ya (TRUE) dan jawaban aktualnya adalah tidak (FALSE),
dan
4. False Negative (FN), kondisi dimana model mengklasifikasikan
data sebagai tidak (FALSE) dan jawaban aktualnya adalah ya
(TRUE).
Akurasi merupakan pengukuran seberapa benar sebuah sistem dapat
mengklasifikasi dari keseluruhan. Akurasi dapat dihitung menggunakan persamaan
(2.8).
𝐴𝑐𝑐𝑢𝑟𝑎𝑐𝑦 =
𝑇𝑃 + 𝑇𝑁
𝑇𝑃 + 𝐹𝑃 + 𝑇𝑁 + 𝐹𝑁 (2.8)
Presisi merupakan perbandingan jumlah data yang kategori positif yang
diklasifikasikan secara benar oleh sistem dan keseluruhan data yang terklasifikasi
positif. Presisi dapat dihitung menggunakan persamaan (2.9).
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 =
𝑇𝑃
𝐹𝑃 + 𝑇𝑃 (2.9)
Recall merupakan pengukuran untuk data dengan klasifikasi positif yang
benar oleh sistem. Recall dapat dihitung menggunakan persamaan (2.10).
𝑅𝑒𝑐𝑎𝑙𝑙 =
𝑇𝑃
𝑇𝑃 + 𝐹𝑁 (2.10)
Selain akurasi, presisi, dan recall. Confusion matrix juga dapat digunakan
untuk menghitung F-Score yang bertujuan untuk menghitung kombinasi dari presisi
dan recall. F-Score akan menggunakan harmonic mean dari presisi dan recall. F-
score dapat dihitung menggunakan persamaan (2.11).
𝐹-𝑆𝑐𝑜𝑟𝑒 = 2 ∙
𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∙ 𝑟𝑒𝑐𝑎𝑙𝑙
𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 + 𝑟𝑒𝑐𝑎𝑙𝑙 (2.11)
Top Related