tumor kulit
Salah satu bagian tubuh manusia yang dapat terkena tumor adalah kulit. Laporan American Cancer
Society (2018) menyebutkan bahwa kanker kulit adalah salah satu kanker yang paling umum
teridentifikasi di Amerika Serikat. Ada beberapa tindakan yang dapat dilakukan untuk mengidentifikasi
sebuah tanda pada kulit tergolong kanker atau tumor, seperti pemeriksaan fisik secara visual dan biopsi.
Pemeriksaan fisik dapat dilakukan dengan mata telanjang maupun dengan bantuan alat, yaitu
dermoscope. Hasil pemeriksaan fisik sangat dipengaruhi oleh keahlian dan pengalaman dokter yang
menangani, sehingga menghasilkan diagnosa yang subjektif. Biopsi dilakukan dengan cara mengambil
sampel sel tumor melalui pembedahan pada daerah yang terjangkit dan pemeriksaan laboratorium.
Dalam pelaksanaannya, biopsi memiliki tingkat akurasi untuk mendiagnosa sel kanker yang lebih tinggi
dibandingkan dengan pemeriksaan visual. Namun, biopsi memerlukan banyak sumber daya yang
diperlukan untuk mengidentifikasi suatu sel tergolong sel tumor atau kanker. Oleh karena itu,
diperlukan instrument diagnosa yang dapat meminimalisir subjektifitas dari diagnose tumor kulit yang
dapat dijadikan faktor pertimbangan dalam diagnose akhir keganasan tumor kulit yang diderita.
Eltayel (2017) melakukan penelitian dalam mendeteksi kanker kulit. Penelitian dilakukan menggunakan
Artificial Neural Network untuk klasifikasi dan Particle Swarm Optimizarion untuk segmentasinya.
Evaluasi dilakukan dengan K-Fold validation dan menghasilkan akurasi sebesar 95,97%.
Penelitian ini akan mencoba untuk menggunakan salah satu metode supervised learning, yaitu Support
Vector Machine untuk mengklasifikasikan jenis tumor kulit yang diderita.Adapun penghantar materi yang diperlukan untuk penelitian ini, yaitu :
4.1 Tumor Kulit
Sel-sel yang ada pada tubuh manusia umumnya memiliki siklus hidup. Sel-sel akan tumbuh dan muncul
ketika sel-sel yang ada menua dan mati. Dalam beberapa kesempatan, sel-sel akan terus tumbuh dan
tidak mati sehingga sel akan terus hidup dan tidak digantikan oleh sel yang baru. Sel-sel lama akan terus
hidup bersamaan dengan sel baru sehingga membentuk gumpalan pada tempat dimana proses ini terjadi.
Gumpalan dari sel-sel yang tidak dapat mati ini dinamakan tumor (National Cancer Institute, 2012).
Tumor dapat tumbuh pada seluruh organ tubuh yang dimiliki manusia (Saleh, 2016). Penyebab tumor
dapat diklasifikasikan menjadi tiga faktor utama yaitu faktor genetik, karsinogenik, dan co-karsinogen
(Saleh, 2016). Faktor genetik didasari pada faktor keturunan, faktor karsinogenik didasari pada
eksternal seperti radiasi, dan faktor co-karsinogen disebabkan oleh pola hidup yang salah. Tumor dapat
diklasifikan menjadi dua jenis berdasarkan keganasan yang dimilikinya yaitu tumor jinak dan tumor
ganas (Sinha, 2018) . Adapun perbedaan dari tumor jinak dan tumor ganas yang dideskripsikan pada
tabel 1
Berikut merupakan hasil dan pembahasan dari tiap proses yang dilakukan, antara lain :
4.1 Praproses dan segmentasi
Praproses menghasilkan citra dengan resolusi 400 x 400 dan citra dalam bentuk grayscale dan HSV dari
masing-masing citra. Selanjutnya, citra akan disegmentasi untuk dicari objeknya. Objek pada citra
memiliki ukuran yang berbeda-beda sehingga perlu dilakukan resize ulang guna memberikan hasil
ekstraksi ciri yang seragam. Gambar 2 menggambarkan hasil akhir dari praproses.
Setelah praproses selesai dilakukan, maka citra dapat segmentasi untuk dicari objek tumor kulit pada
citranya. Segmentasi dilakukan menggunakan otsu thresholding, dan disempurnakan dengan beberapa
operasi morfologi seperti Closing, Opening, Clear Border, Imfill, dan bwareafilt
Setelah citra selesai disegmentasi, maka tahapan selanjutnya adalah tahapan pembagian data.
4.2 Pembagian Data.
Dataset dibagi menjadi data training dan data testing. Dari 1472 data yang diolah, proses praproses dan
segmentasi menyisihkan 89 citra dengan hasil segmentasi yang buruk. Kemudian dataset dibagi menjadi
data training dan data testing. Data testing berjumlah 130 citra dengan 65 citra tergolong dalam kelas
tumor jinak dan tumor ganas, sedangkan 1253 citra dengan jumlah kelas masing-masing 653 citra kelas
jinak dan 618 citra kelas ganas. Maka pada tahapan selanjutnya akan dilakukan balancing data dengan
Random Undersampling
4.3 Random Undersampling
Random Undersampling adalah salah satu metode untuk melakukan balancing data. Balancing Data
dilakukan untuk menghasilkan model yang tidak terpengaruh pada balance pada masing-masing kelas
data training. Cara kerja random undersampling adalah dengan cara mengambil beberapa citra pada
kelas yang memiliki data yang lebih banyak dan tidak menyertakannya pada proses training. Metode
Random Undersampling dipilih karena selisih jumlah data kelas ganas dan kelas jinak tidak terlalu
besar, yaitu 35 citra, sehingga efek dari undersampling tidak begitu besar dan menghasilkan dataset
dengan data-data yang unik, tidak seperti oversampling yang memberikan data yang identik dalam beberapa citra. Dari 1253 citra training yang ada, ada 609 citra yang tergolong ke dalam tumor ganas
dan 644 citra yang tergolong ke dalam kelas tumor jinak. Random Undersampling dilakukan pada citra
yang tergolong pada kelas jinak dengan menyisihkan secara acak 35 citra dari 644 citra yang ada,
sehingga menghasilkan 609 citra tumor jinak, jumlah citra yang sama dengan tumor ganas. Jumlah citra
yang termasuk ke dalam data training menjadi berjumlah 1218 citra. Setelah random undersampling
dilakukan, maka tahapan selanjutnya adalah mengekstraksi ciri dari data yang telah dipraproses dan
disegmentasi.
4.4 Ekstraksi Ciri
Citra yang telah dipraproses dan disegmentasi selanjutnya akan diolah dengan GLCM untuk
mendapatkan ciri tekstur citra dan mengubah colorspace citra menjadi HSV untuk mendapatkan ciri
warna dari citra.
4.5 Ciri Tekstur
Operasi GLCM dilakukan untuk menghitung nilai ciri tekstur dari citra. Fungsi graycomatrix()
MATLAB digunakan untuk mendapatkan matriks GLCM , dan fungsi graycoprops() digunakan untuk
menghitung nilai ciri yang didapatkan dari matriks GLCM. Adapun tahapan tahapan yang akan
dilakukan sebagai berikut. Setelah dijalankan keempat tahapan diatas, akan didapatkan nilai Energy, Correlation, Contrast dan
Homogeinity dari citra. Berikut adalah nilai ekstraksi ciri tekstur pada citra Ganas001.Ciri warna
Ciri warna didapatkan dengan cara menghitung nilai dari mean dan standar deviasi dari masing-masing
channel pada HSV yaitu Hue, Saturation, dan Value. Gambar HSV yang telah tersegmentasi akan
dipisahkan masing-masing channelnya dan dihitung nilai mean dan standar deviasinya pada masingmasing channel warna. Citra yang diolah adalah citra HSV yang telah tersegmentasi. Nilai piksel yang
dihitung adalah nilai piksel yang memiliki nilai lebih dari 0, sehingga jumlah piksel yang diolah akan
sedikit berbeda-beda tergantung dari hasil cropping yang dilakukan. Berikut adalah contoh hasil
ekstraksi ciri warna dari citra Ganas001.
Setelah ekstraksi ciri masing-masing citra sudah didapatkan, maka tahapan selanjutnya adalah
Klasifikasi.4.7 Klasifikasi
Tahapan-tahapan yang ada pada tahapan klasifikasi antara lain parameter tuning, Evalusasi model, dan
testing
4.8 Parameter Tuning
Kernel-kernel pada SVM memiliki parameter parameter yang dapat diatur untuk mendapatkan hasil
yang lebih baik dan lebih sesuai dengan data yang digunakan. Parameter-parameter yang dapat diatur
antara lain adalah nilai Box Constraint atau nilai Cost dan nilai Kernel Scale yang umum disebut nilai
gamma. Semakin besar nilai Cost, maka semakin rentan hasil klasifikasi SVM terhadap outlier,
sedangkan semakin kecil nilai maka semakin kecil pengaruh outlier dan data yang terklasifikasi dengan
salah. Nilai gamma memiliki fungsi dalam seberapa besar pengaruh kernel pada model yang dibuat,
semakin besar nilai gamma maka semakin besar pengaruh kernel pada hyperplane yang dibuat. Cost
pada umumnya memiliki nilai dalam kelipatan sepuluh seperti 10-2 hingga 102
, Sedangkan nilai gamma
adalah nilai bilangan positif. Parameter Tuning dilakukan dengan cara melakukan Grid Search pada
data ekstraksi ciri yang dimasukan. Grid search bekerja dengan cara melakukan pemodelan berulang
pada data dengan nilai Cost dan Gamma yang ditentukan melalui range.. Dalam penelitian ini, Grid
search dilakukan dalam range 10-2 hingga 102 dan dalam range 2-3 dan 20 untuk nilai gamma. Tabel
menggambarkan parameter terbaik dari masign-masing kernel.Setelah nilai-nilai parameter telah didapatkan, maka tahapan selanjutnya adalah menggunakan
parameter-parameter di atas untuk mengklasifikasikan data training dan menggunakan K-Fold Cross
Validation untuk mengevaluasinya.
4.9 Evaluasi Kernel SVM
Setelah parameter kernel telah didapatkan, maka langkah selanjutnya adalah menguji performa
SVM untuk mengklasifikan citra yang ada pada data training. SVM memiliki beberapa kernel yang
dapat digunakan untuk mengklasifikasikan data. Kernel SVM yang diuji antara lain Linear, Radial
Basis Function (RBF), Polynomial, dan Sigmoid. Keempat kernel ini akan diuji coba pada data training
dengan metode evaluasi K-Fold Cross Validation dan dihitung nilai akurasinya guna mendapatkan
model terbaik dalam mengklasifikasikan data yang ada pada data training. K-Fold Cross Validation
akan membagi data menjadi data training dan data Testing pada tiap fold yang berbeda. Nilai K yang
dipilih pada K-Fold Cross Validation adalah 10, sehingga data training dibagi menjadi 10 bagian
berbeda yang dijadikan sebagai data Testing pada tiap iterasinya. Gambar 5 menggambarkan hasil yang didapat masing-masing kernel SVM dalam mengklasifikasikan data training dengan K-Fold Cross
Validation model Dari gambar di atas, dapat dilihat bahwa kernel SVM RBF mendapatkan hasil terbaik dengan akurasi
sebesar 84,8%. Kernel Linear mendapatkan akurasi sebesar 80,20%, Polynomial sebesar 80,20% dan
Sigmoid sebesar 75,8%. Nilai sensitivitas tertinggi didapatkan dengan kernel RBF dengan nilai sebesar
89.1%, dan nilai spesifisitas didapatkan oleh kernel RBF dengan nilai sebesar 80,6%. Dari pengujian
ini, dapat disimpulkan bahwa Support Vector Machine dengan kernel RBF memiliki akurasi tertinggi
dibandingkan dengan kernel lain dan akan digunakan pada aplikasi yang akan dibuat.
4.10 Evaluasi Aplikasi
Data Testing akan diproses melalui aplikasi untuk mengetahui kelas dari citra yang dimasukan. Data
Testing terdiri dari 65 citra yang tergolong tumor ganas dan 65 citra yang tergolong dalam tumor jinak.
Adapun tahapan-tahapan yang dilakukan untuk menguji data Testing, antara lain:
1) Membuat model dari data training sesuai folder yang sudah ditentukan.
2) Memasukan gambar citra Testing melalui tombol pilih gambar
3) Mengekstraksi ciri citra Testing yang dimasukan
4) Mengklasifikasikan citra dengan model SVM kernel RBF yang telah dibuat.
Tahapan di atas, kecuali tahapan 1., dilakukan berulang kali untuk tiap citra yang tergolong pada data
Testing. Hasil klasifikasi yang dihasilkan akan dievaluasi menggunakan confusion matrix untuk
menghitung akurasi, spesifisitas dan sensitivitas dari data yang diuji RBF. Gambar 6 mengilustrasikan
proses dari tahapan ini.
Penelitian ini berhasil mengidentifikasi keganasan tumor kulit dengan Support Vector Machine dengan
akurasi sebesar 76.9%. Hasil ini lebih buruk dibandingkan dengan penelitian yang dilakukan Eltayel
(2017). Hal ini dipengaruhi oleh resolusi data dan pencahayaan yang tidak seragam dan juga hasil
segmentasi dari thresholding yang masih belum sempurna. Penelitian dimulai dari tahapan Pra-proses
dan segmentasi yang menghasilkan 1253 citra dengan hasil segmentasi yang baik, dilanjutkan dengan
tahapan pembagian data dan Random Undersampling yang memberikan data yang seimbang untuk
masing-masing kelas dengan jumlah data 1218 citra. Setelah itu, tahapan ekstraksi ciri yang
memungkinkan pengambilan fitur warna dan tekstur dari citra. Tahapan parameter tuning memberikan
parameter-parameter yang digunakan untuk memberikan hasil klasifikasi yang optimal. Data training
diklasifikasikan menggunakan Support Vector Machine dan dievaluasi dengan K-Fold Cross
Validation. Hasil terbaik didapatkan kernel SVM Radial Basis Function dengan nilai akurasi yang
didapat sebesar 84,8% dengan evaluasi K-Fold-Validation dengan nilai K sebesar 10. Support Vector
Machine dengan kernel RBF selanjutnya dipasang pada aplikasi dan digunakan untuk
mengklasifikasikan data testing yang telah dibuat pada tahap pembagian data. SVM kernel RBF
mendapatkan nilai akurasi,sensitivitas, dan spesifisitas sebesar 76.9%, 76.9% dan 76.9% dalam
mengklasifikasikan citra data testing .Setiap data Testing akan dicatat hasil klasifikasinya untuk dapat menghasilkan confusion matrix yang
digunakan untuk menghitung akurasi, spesifisitas, dan sensitivitas. Adapun confusion matrix yang
didapatkan dari tahapan di atas dideskripsikan pada Error! Reference source not found. dimana G
adalah kelas Ganas dan J menggambarkan kelas Jinak.
Kanker kulit adalah salah satu kanker yang paling umum ditemukan. Perlu adanya metode diagnosa
yang dapat mendiagnosa keganasan tumor kulit dengan cepat. Penelitian ini bertujuan untuk membuat prototipe
sistem yang dapat membantu dokter dalam mengklasifikasikan keganasan tumor kulit dari citra dermoskopi dan
mengevaluasi kinerja Support Vector Machine dalam mengklasifikasikan citra tersebut. Citra akan diolah
melalui praproses, segmentasi, ekstraksi ciri, dan klasifikasi. Praproses pada citra antara lain mengubah resolusi
citra, mengubah citra dari channel warna RGB menjadi grayscale dan HSV. Segmentasi dilakukan dengan
metode thresholding. Metode ekstraksi ciri yang digunakan dari masing-masing adalah GLCM untuk ciri
tekstur dan Color Moments untuk ciri warna. Hasil akurasi terbaik yang didapat pada tahap klasifikasi dan
evaluasi dengan K-Fold Cross Validation adalah sebesar 84,8% yang didapatkan dengan model SVM kernel
Radial Basis Function dengan parameter cost sebesar 1 dan gamma sebesar 0.125. Nilai akurasi yang
didapatkan model dalam mengklasifikasikan citra data testing adalah 76,9%