Dari sudut ruang kerja, saya melihat ada 3 orang duduk, dua diantaranya ngobrol menggunakan bahasa Belanda, sedangkan yang satu hanya diam. Penasaran rasanya, kira-kira 1 orang yang diam itu apakah juga mampu berbahasa Belanda? Saya tidak memiliki bukti sertifikat kemampuan bahasa Belandanya. Juga tidak tau apakah dia berasal dari Belanda, Itali, Jerman, atau justru Amerika. Warna kulitnya sama, jadi sulit bagi saya menebak asal dan kemampuan bahasa orang yang diam itu.

Itu hanyalah ilustrasi mengenai missing value yang mungkin bisa ditangani menggunakan k-nearest neighbors (KNN), dan itu yang akan kita bahas. Ini sangat lazim dihadapi oleh teman-teman yang pegang data banyak. Untuk mendapatkan data berkualitas, tidak jarang harus menghadapi beberapa kendala. Salah satunya adalah missing value, tidak ada nilai. Missing value ini tidak berarti tidak ada untuk seluruh data, melainkan ada nilai tertentu yang hilang. Contohnya adalah ilustrasi di atas. Dari 3 orang yang sedang bertemu, 2 orang ngobrol dengan bahasa Belanda, maka dengan sangat mudah kita mengatakan bahwa 2 orang itu pasti bisa berbahasa Belanda. Namun bagaimana dengan 1 orang yang diam? Itu bisa dikatakan missing value, kita tidak serta merta mengatakan dia pasti bisa bahasa Belanda. Tidak ada bukti baik melalui obrolan maupun sertifikat kemampuan bahasa Belanda. Dari dataset yang berisi ribuan atau bahkan jutaan, sangat bisa dimaklumi ada nilai-nilai yang tidak terinput dengan baik. Bisa karena human error atau adanya kesalahan di dalam proses wrangling data.

Di dalam dataset biasanya disimbolkan dengan n/a yaitu singkatan dari “no available”. Menjadi masalah dikala kita ingin melakukan komputasi data. Apakah bisa dijumlahkan, atau dikurangi? Tentu tidak bisa karena memang tidak ada datanya, no available (n/a). Yang bisa kita lakukan sekarang adalah memperkirakan atau memanipulasinya. Maka yang bisa dipertimbangkan adalah k-nearest neighbors. Pertimbangan teoritisnya adalah melalui hukum geografi: Everything is related to everything else, but near things are more related than distant things. Kalau kita kembalikan ke ilustrasi di atas: apakah orang yang diam diantara 2 yang sedang berdiskusi menggunakan berbahasa Belanda juga bisa berbisa Belanda? – Maka bisa kita simpulkan bahwa mungkin saja dia bisa berbahasa Belanda. Apalagi kalau ada indikator penunjuk misalnya: dia mengangguk, bisa ikut tertawa dikala kedua teman yang lain juga tertawa, dan seterusnya.

Imputasi berdasarkan pola nilai yang hilang

Missing value itu punya pola atau pattern, maka dikala kita bisa mengetahui polanya akan membantu bagaimana kita melakukan proses imputasi data. Pola nilai yang hilang ini sebelumnya telah dibahas oleh Little & Rubin (2002), yang kemudian dirangkum oleh Kaushik Roy Chowdhury (diakses: 11 April 2022) dibagi menjadi 3 pola yaitu:

Missing completely at random (MCAR). Ini terjadi dikala nilai yang hilang tidak memiliki ketergantungan tersembunyi dengan variabel lain atau karakteristik pengamatan apapun. Benar-benar random. Contohnya begini: Seorang dokter lupa mencatat umur setiap pasien tua yang masuk ke ICU. Nilai yang hilang tidak akan bergantung pada karakteristik pasien. Benar-benar berdiri sendiri.

Missing at Random (MAR). Di dalam kasus ini, kemungkinan nilai yang hilang sangat bergantung pada karakteristik data yang dapat diamati. Sebagai contoh: Ada kecenderungan bahwa orang berpendapatan tinggi memiliki properti yang banyak. Dikala ada seorang responden tidak diketahui pendapatannya namun memiliki properti banyak maka bisa disimpulkan mungkin saja dia berpendapatan tinggi juga.

Missing not at random (MNAR). Ini terjadi ketika nilai yang hilang bergantung pada karakteristik data dan juga pada nilai yang hilang. Untuk kasus ini tidak mudah.

Kemudian bagaimana kaitannya dengan K-NN? Kembali ke ilustrasi di atas dan juga hukum pertama geografi bahwa yang berdekatan memiliki hubungan lebih erat dibandingkan yang berjauhan. Mungkin saja yang berdekatan itu memiliki nilai yang sama asalkan memiliki karakter data yang mirip sesuai dengan 3 pattern di atas. Di kala imputasi itu dilakukan secara otomatis berdasarkan kemiripan 3 pattern maka itulah fungsi machine learning. Algoritma mempelajari ketiga pattern kemudian memprediksi nilai-nilai yang mungkin hilang. Bagaimana operasionalisasi K-NN di dalam hubungan ketetanggaan? itu akan menjadi materi lanjutan, sabar saja.

One thought on “Imputasi data menggunakan k-nearest neighbors: hanya konsep dasar

Comments are closed.