RankNet dalam Machine Learning: Konsep, Rumus, Contoh

RankNet

Dalam dunia machine learning, masalah ranking sering kali dianggap sepele, padahal justru menjadi inti dari banyak sistem besar yang kamu gunakan setiap hari. Mulai dari hasil pencarian Google, rekomendasi produk di e-commerce, hingga pengurutan jurnal ilmiah, semuanya bergantung pada algoritma yang mampu menentukan mana informasi yang paling relevan. Di sinilah konsep Learning to Rank muncul sebagai solusi yang lebih cerdas dibandingkan sekadar sorting berbasis aturan statis.

Salah satu algoritma awal dan fundamental dalam Learning to Rank adalah RankNet. Walaupun tergolong algoritma “klasik”, RankNet masih sangat relevan untuk dipelajari, terutama bagi programmer, mahasiswa IT, dan peneliti data science. RankNet bukan hanya soal ranking, tetapi juga pintu masuk untuk memahami bagaimana neural network digunakan dalam sistem pencarian modern.

Apa Itu RankNet?

RankNet adalah algoritma Learning to Rank berbasis neural network yang diperkenalkan oleh Microsoft Research. Tujuan utama RankNet bukan untuk memprediksi nilai absolut dari suatu data, melainkan menentukan urutan prioritas antara dua objek. Dengan kata lain, RankNet menjawab pertanyaan data mana yang lebih relevan dibandingkan data lainnya?

Berbeda dengan model klasifikasi yang fokus pada label tunggal, RankNet bekerja dengan membandingkan pasangan data (pairwise comparison). Misalnya, jika ada dua dokumen hasil pencarian, RankNet akan belajar apakah dokumen A lebih relevan daripada dokumen B untuk sebuah query tertentu. Pendekatan ini membuat RankNet sangat cocok untuk kasus seperti search engine dan recommendation system.

Secara historis, RankNet menjadi pondasi bagi algoritma lanjutan seperti LambdaRank dan LambdaMART. Walaupun saat ini banyak model deep learning yang lebih kompleks, RankNet tetap penting karena konsep dasarnya sederhana namun kuat. Memahami RankNet berarti kamu memahami dasar bagaimana mesin “berpikir” saat menyusun peringkat data.

Konsep Dasar Learning to Rank

Learning to Rank adalah cabang machine learning yang fokus pada pengurutan data berdasarkan tingkat relevansi. Tidak seperti regresi yang memprediksi nilai numerik atau klasifikasi yang menentukan kelas, Learning to Rank bertujuan menghasilkan urutan terbaik dari sekumpulan item.

Secara umum, Learning to Rank terbagi menjadi tiga pendekatan utama:

  1. Pointwise
    Setiap data diperlakukan secara individual. Model memprediksi skor relevansi, lalu data diurutkan berdasarkan skor tersebut. Pendekatan ini sederhana, tetapi sering mengabaikan hubungan antar data.
  2. Pairwise
    Model belajar dari pasangan data. Fokusnya bukan skor absolut, melainkan mana yang lebih relevan. RankNet berada di kategori ini. Pendekatan pairwise lebih realistis karena mencerminkan cara manusia membandingkan dua pilihan.
  3. Listwise
    Model langsung mengevaluasi satu daftar penuh. Pendekatan ini paling kompleks, tetapi juga paling mendekati metrik evaluasi ranking seperti NDCG.

RankNet memilih pendekatan pairwise karena keseimbangan antara kompleksitas dan performa. Konsep ini sangat cocok untuk data ranking yang subjektif dan relatif, seperti relevansi dokumen atau rekomendasi konten.

RankNet sebagai Algoritma Pairwise Learning to Rank

Sebagai algoritma pairwise, RankNet bekerja dengan cara membandingkan dua item dalam satu waktu. Alih-alih bertanya “berapa skor relevansi dokumen ini?”, RankNet bertanya “dokumen mana yang seharusnya berada di atas?”

Setiap pasangan data diberi label:

  • 1 → jika item pertama lebih relevan
  • 0 → jika item kedua lebih relevan

Pendekatan ini membuat RankNet lebih tahan terhadap bias penilaian absolut. Dalam praktiknya, jauh lebih mudah menentukan “A lebih baik dari B” dibandingkan memberi skor numerik yang konsisten.

Keunggulan lain pendekatan pairwise adalah kemampuannya menangani data ranking yang bersifat subjektif. Dalam search engine, relevansi tidak selalu hitam-putih. Dengan membandingkan pasangan, RankNet mampu belajar pola preferensi pengguna secara lebih alami.

Namun, konsekuensinya adalah jumlah data training bisa membengkak karena setiap item dapat membentuk banyak pasangan. Inilah trade-off yang perlu dipahami saat menggunakan RankNet.

Cara Kerja RankNet

Cara kerja RankNet dapat dipahami melalui beberapa tahapan berikut:

  1. Pembentukan pasangan data
    Dataset diubah menjadi pasangan item dengan label preferensi. Ini adalah tahap krusial karena kualitas pasangan menentukan kualitas ranking.
  2. Forward propagation
    Setiap item dalam pasangan diproses oleh neural network untuk menghasilkan skor relevansi.
  3. Perhitungan probabilitas
    Selisih skor dimasukkan ke fungsi sigmoid untuk menghitung probabilitas item pertama lebih relevan.
  4. Backpropagation
    Error dihitung berdasarkan label pasangan, lalu bobot network diperbarui.

Proses ini diulang hingga model mampu membedakan item relevan dan tidak relevan secara konsisten. Secara konsep, RankNet belajar dari kesalahan perbandingan, bukan kesalahan nilai absolut.

Rumus RankNet

RankNet menggunakan fungsi sigmoid untuk menghitung probabilitas:

P=1/(1+e(σ(s1s2)))P = 1 / (1 + e^(-σ(s₁ − s₂)))

Di sini:

  • s₁ dan s₂ adalah skor relevansi dari dua item
  • σ adalah parameter skala

Secara intuitif, jika s₁ jauh lebih besar dari s₂, probabilitas mendekati 1. Jika sebaliknya, probabilitas mendekati 0. Rumus ini sederhana, tetapi sangat efektif dalam memodelkan preferensi relatif.

Pendekatan matematis ini membuat RankNet mudah dianalisis dan diimplementasikan, terutama bagi mahasiswa dan peneliti yang ingin memahami dasar Learning to Rank tanpa langsung masuk ke model kompleks.

Contoh Penerapan RankNet

Bayangkan kamu memiliki sistem pencarian artikel teknologi. Untuk satu keyword, ada tiga artikel dengan tingkat relevansi berbeda. Alih-alih memberi skor manual, RankNet akan membandingkan artikel satu per satu dalam pasangan.

Misalnya:

  • Artikel A vs B → A lebih relevan
  • Artikel A vs C → A lebih relevan
  • Artikel B vs C → B lebih relevan

Dari pasangan ini, RankNet belajar urutan A > B > C. Pendekatan ini sangat cocok untuk sistem pencarian, rekomendasi kursus online, atau pengurutan paper akademik.

RankNet vs Algoritma Learning to Rank Lain

AspekRankNetLambdaRankLambdaMART
PendekatanPairwisePairwise + metricTree-based
KompleksitasRendahSedangTinggi
InterpretasiMudahSedangSulit
Performa skala besarTerbatasBaikSangat baik

Kelebihan RankNet

  1. Sederhana dan mudah dipahami
    RankNet memiliki konsep dasar yang relatif sederhana, sehingga cocok digunakan sebagai fondasi awal untuk mempelajari Learning to Rank.
  2. Cocok untuk pembelajaran dan riset akademik
    Algoritma ini sering digunakan dalam konteks akademis karena strukturnya jelas dan mudah dianalisis secara teoritis.
  3. Implementasi relatif ringan
    Dibanding metode ranking yang lebih kompleks, RankNet lebih mudah diimplementasikan untuk eksperimen dan prototipe awal.

Kekurangan RankNet

  1. Kurang efisien untuk dataset besar
    RankNet menggunakan pendekatan pairwise, sehingga jumlah pasangan data bisa meningkat sangat drastis seiring bertambahnya data.
  2. Performa kalah dibanding algoritma modern
    Dalam praktik industri, RankNet umumnya kalah performa dibanding metode lanjutan seperti LambdaRank atau LambdaMART.
  3. Skalabilitas terbatas
    Untuk sistem rekomendasi atau search engine berskala besar, RankNet kurang optimal tanpa optimasi tambahan.

Kesimpulan

Pada pembahasan kita di atas dapat kita simpulkan bahwa RankNet adalah algoritma penting dalam sejarah Learning to Rank. Walaupun bukan yang paling canggih, konsep pairwise yang digunakan RankNet menjadi dasar bagi banyak algoritma ranking modern. Dengan memahami RankNet, kamu tidak hanya belajar satu algoritma, tetapi juga filosofi dasar sistem ranking.

Bagi programmer, mahasiswa IT, dan peneliti data science, RankNet adalah titik awal yang ideal sebelum masuk ke model neural ranking yang lebih kompleks. Kesederhanaannya justru menjadi kekuatan utama untuk memahami bagaimana mesin menyusun prioritas informasi.

Artikel ini merupakan bagian dari seri artikel belajar Kecerdasan Buatan dan jika ada ide topik yang mau kami bahas silahkan komen di bawah ya..

Write a Comment

Leave a Comment

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Subscribe to our Newsletter

Subscribe to our email newsletter to get the latest posts delivered right to your email.
Pure inspiration, zero spam ✨