
Membangun Model Klasifikasi dengan Decision Trees
Apa itu Model Klasifikasi? Model klasifikasi adalah salah satu jenis model machine learning yang digunakan untuk memprediksi kelas atau label dari data yang diberikan.
Suatu hari, saya memiliki beberapa tugas yang harus di selesaikan. Diantaranya memperpanjang sim dan membayar pajak. Saya tau kedua hal tersebut akan memakan waktu cukup lama karena harus mengantri.
Namun sialnya saat saya mengantri untuk membayar pajak, antriannya begitu panjang. Jadi setelah mengambil nomor antrian, saya berinisiatif untuk memperpanjang sim terlebih dahulu. Beruntungnya kedua tempat tersebut berdekatan dan antrian memperpanjang sim tidak begitu ramai.
Setelah urusan perpanjang sim selesai, saya melanjutkan untuk membayar pajak.
CPU dapat melakukan hal yang sama dengan yang saya lakukan. Melakukan banyak (sekali) tugas dan memilih mana yang lebih baik dijalankan terlebih dahulu karna terdapat proses blocking. Hal ini kita sebut dengan context switching.
Context switching adalah teknik yang digunakan sistem operasi untuk mengalihkan suatu process/thread dari satu keadaan ke keadaan lain untuk menjalankan fungsinya dengan menggunakan CPU dalam sistem.
Context switching terjadi karena beberapa hal:
Dalam environment multitasking, apabila terdapat beberapa proses yang memerlukan CPU, maka context switching dapat terjadi. Hal yang paling umum terjadi adalah karna panggilan sistem (syscall), sehingga satu proses harus dialihkan dari CPU agar proses lain dapat berjalan. Hal ini dapat dipicu karena proses tersebut tidak berjalan, seperti menunggu I/O atau menunggu operasi singkronisasi selesai.
Interrupt Hander adalah proses yang berjalan ketika interupsi dihasilkan oleh perangkat keras atau perangkat lunak. Contohnya apabila kita memiliki proses membaca dari disk, maka hardware akan mengirimkan sinyal interupsi untuk menjalankan context switching.
Penanganan interupsi disebut juga Interrupt Service Routine (ISR). ISR menangani permintaan dan mengirimkannya ke CPU. Ketika ISR selesai, proses sebelumnya akan dilanjutkan.
Saat sistem bertransisi antara mode pengguna dengan mode kernel.
Process switching merupakan salah satu tipe dari context switching, dimana akan mengubah dari satu proses ke proses lain. Process akan menyimpan seluruh informasinya pada Process control block (PCB). PCB akan otomatis dibuat ketika process tersebut dibuat, dan beberapa data PCB berubah ketika keadaan process berubah.
Beberapa data pada PCB:
Ketika context switching terjadi, misalnya terdapat dua proses P0 dan P1. Keduanya memiliki PCB-nya sendiri. Pada awalnya PCB yang aktif adalah P0.
Ketika P0 mengubah statusnya, sistem operasi akan menyimpan status saat ini di PCB0 dan memuat ulang PCB1.
PCB1 berisi snapshot yang diambil dari P1 saat berhenti sebelumnya. Kemudian pada saat PCB1 mengubah kembali statusnya, sistem operasi menyimpan snapshot saat ini di PCB1 dan memuat ulang PCB0.
Butuh beberapa waktu untuk memuat ulang dan menyimpan PCB di memori. Jadi pada saat itu proses P0 dan P1 harus menunggu dalam mode diam.
Thread switching merupakan tipe context switching, dimana virtual processor beralih menjalankan satu thread ke thread lainnya dalam satu proses. Thread switching sangat efisien dan jauh lebih ringan karena hanya melibatkan pengalihan identitas dan sumber daya seperti program counter, registers dan stack pointers.
Karena hanya melibatkan beberapa hal tersebut saja, thread switching lebih efisien apabila dibandingkan dengan process switching.
Mirip seperti process, thread menyimpan informasinya pada thread control block (TCB). Beberapa data pada TCB:
Apa itu Model Klasifikasi? Model klasifikasi adalah salah satu jenis model machine learning yang digunakan untuk memprediksi kelas atau label dari data yang diberikan.
Apa itu Regresi Linier? Regresi linier adalah metode statistik yang digunakan untuk memahami hubungan antara dua variabel, yaitu variabel dependen dan independen.
Setelah kita membahas Regresi dan Klasifikasi pada post sebelumnya, yang merupakan tipe machine learning Supervised, sekarang kita akan membahas tipe machine learning yang lain, yaitu Unsupervised Learning.
Apa itu regresi? Apa itu klasifikasi? Sebelum kita masuk ke definisi, mari kita pahami beberapa tipe machine learning.