Big Data Analytics untuk Deteksi Fraud — Part 1

aris budi santoso
4 min readApr 26, 2024

--

Tutorial Apache Spark untuk Fraud Detection pada Databrick Community Edition

Fraud merupakan ancaman pada bidang keuangan baik pada sektor swasta maupun pemerintahan. Digitalisasi sektor keuangan telah merubah cara orang-orang bertransaksi. Berbagai kemudahan yang ditawarkan berupa mobile apps, menjadi daya tarik yang mendorong adopsi oleh masyarakat dalam keseharian.

Sebagian besar masyarakat Indonesia saat ini telah terbiasa melakukan pembayaran dengan dompet digital. Volume transaksi pembayaran melalui media digital meningkat dari tahun ke tahun. Berdasarkan data Bank Indonesia, dalam Bulan April 2023 volume transaksi dengan uang elektronik mencapai Rp 37,46 T. Apabila dibandingkan dengan volume transaksi pada bulan Maret 2022, terjadi peningkatan 1,4%, dan dibandingkan dengan bulan April 2022 terjadi peningkatan sebesar 5,8% (databoks.katadata.co.id).

Peningkatan transaksi pembayaran digital pada sisi lain meningkatkan resiko fraud. Pengguna uang elektronik atau pembayaran digital menghadapi ancaman kerugian dari kemungkinan kecurangan berupa pencurian account atau scamming yang dilakukan oleh para penjahat dengan berbagai cara.

Penyelenggara layanan pembayaran digital memiliki kepentingan untuk mencegah kerugian pelanggannya dari ancaman fraud. Deteksi transaksi pembayaran yang tidak wajar diperlukan agar pelanggan dapat diberikan notifikasi atas transaksi mencurigakan dan pemrosesan transaksi tersebut dapat disuspen hingga terverifikasi.

Melihat permsalahan dan kebutuhan tersebut, eksperimen untuk menggunakan machine learning mengklasifikasikan transaksi berdasarkan risiko fraud merupakan hal yang penting pada industri digital payment. Machine learning dengan data besar merupakan tantangan pada era saat ini. Para data scientist dituntut juga untuk memiliki kemampuan mengenai mekanisme pemrosesan paralel pada sistem komputer yang terdistribusi.

Artikel ini akan membahas tutorial mengenai bagaimana menerapkan big data analytics untuk fraud detection. Data yang digunakan dalam tutorial ini adalah data transaksi keuangan sintetik yang dipublikasikan oleh E. A. Lopez-Rojas , A. Elmir, dan S. Axelsson pada GitHub mereka. Project tersebut dapat diakses pada link berikut, klik di sini.

Tutorial ini akan menggunakan Apache Spark untuk pengolahan data hingga machine learning. Environment yang digunakan adalah Databricks Community. Databricks merupakan layanan cloud yang menyediakan Spark Cluster yang dapat digunakan melalui aplikasi notebook.

Kita harus mendaftar pada link berikut agar dapat menggunakan layanan Databricks Community. Setelah mendaftar, kita dapat mengakses dan membuat cluster Spark. Databricks juga menyediakan aplikasi notebook dan file system yang terdisribusi yaitu Databricks File System (DBFS). Gambaran mengenai arsitektur dari Databricks Community Edition adalah sebagaimana pada gambar 1.

Gambar 1 — Spark Environment yang Digunakan

Apllikasi notebook pada Databricks dapat terkoneksi dengan spark cluster. Baris code yang dieksekusi pada notebook akan diteruskan ke cluster. Sebuah spark cluster dapat memiliki banyak worker nodes yang dapat dikoordinasikan dalam mengerjakan pekerjaan secara paralel. Databricks juga menyediakan layanan distributed file storage yaitu DBFS. Setiap worker pada Spark cluster dapat mengakses file pada DBFS.

Persiapan

Persiapan yang harus dilakukan untuk mengikuti tutorial ini adalah sebagai berikut:

  1. Mendaftar akun Databricks Community Edition

Kunjungi halmaan berikut https://www.databricks.com/try-databricks#account dan isikan data diri. Selanjutnya, kita akan diminta untuk memilih tujuan penggunaan, yaitu professional use atau personal use, silahkan pilih personal use, dan klik Get Started with Community Edition.

Selanjutnya kita akan diminta untuk memverifikasi email dan set password, selanjutnya sign in pertama kalinya pada Databricks Community.

2. Membuat Spark Cluster dan menggunakannya pada notebook.

Setelah login ke Databricks, kita akan diarahkan ke halaman utama, untuk membuat cluster klik tombol create pada sidebar halaman tersebut dan pilih cluster.

Gambar 2 — Membuat Cluster pada Databricks

Kita buat sebuah cluster dengan runtime 12.2 LTS yang menggunakan Spark 3.3.2. Cluster yang available dapat dilihat dengan klik menu compute pada sidebar.

Cluster pada community edition akan diterminasi apabila iddle dalam waktu dua jam. Selanjutnya, kita membuat sebuah notebook dan menghubungkannya dengan Spark cluster.

Notebook

3. Membuat API Key pada Kaggle

Data yang akan digunakan adalah data sintetik yang dipublish pada aplikasi Kaggle. Data tersebut harus diunduh ke driver node di lingkungan Databricks yang telah kita buat menggunakan API untuk selanjutnya dipindahkan ke DBFS. Langkah yang harus kita lakukan untuk mengakses Kaggle API adalah membuat API Key/ Token pada menu setting di akun Kaggle anda. Apabila anda belum memiliki akun Kaggle, silahkan mendaftar/ membuat akun Kaggle terlebih dahulu.

Bersambung ke part 2 ………..

--

--