Apa Itu Embedding dan Cara Vektor Menangkap Makna

· Tim GunaStudio

AI LLM

Komputer tidak memahami kata seperti manusia. Ia hanya bekerja dengan angka. Supaya mesin bisa membandingkan makna, teks harus diubah dulu menjadi deretan bilangan, dan hasil perubahan itulah yang disebut embedding. Konsep ini jadi dasar banyak fitur yang kamu pakai setiap hari, dari pencarian sampai rekomendasi.

Teks diubah jadi vektor bilangan

Embedding adalah cara merepresentasikan objek, termasuk kata atau kalimat, sebagai vektor bilangan riil. Menurut Wikipedia, word embedding adalah representasi kata sebagai vektor berdimensi banyak, di mana kata-kata yang maknanya mirip memiliki representasi yang berdekatan.

Google mendokumentasikan embeddings sebagai teknik untuk menyajikan informasi seperti teks, gambar, dan audio sebagai vektor bilangan titik mengambang dalam ruang berdimensi tinggi. Jadi ketika kamu memasukkan sebuah kalimat ke model embedding, keluarannya bukan teks, melainkan sekumpulan angka, misalnya ratusan atau ribuan nilai, yang menjadi koordinat kalimat itu di ruang vektor.

Vektor ini tidak bisa dibaca manusia secara langsung. Tidak ada baris angka yang artinya "kucing". Yang penting bukan nilai satuannya, melainkan posisi relatifnya terhadap vektor lain. Dua kalimat yang membahas hal serupa akan mendarat di titik yang berdekatan, sedangkan kalimat dengan topik berbeda akan berjauhan.

Secara intuitif, setiap dimensi bisa dibayangkan sebagai satu sumbu sifat, meski dalam praktik dimensinya tidak selalu bisa diberi nama dengan jelas. Model embedding modern memakai ratusan hingga ribuan dimensi agar nuansa makna bisa terwakili lebih halus. Semakin kaya dimensinya, semakin banyak perbedaan makna yang bisa ditangkap, walau itu juga menuntut penyimpanan dan perhitungan yang lebih besar.

Kemiripan makna lewat kedekatan vektor

Gagasan inti embedding adalah kedekatan berarti kemiripan. Google menjelaskan jarak antara dua vektor mengukur keterkaitannya: jarak kecil menandakan keterkaitan tinggi, jarak besar menandakan keterkaitan rendah. Karena itu, kedekatan ini sering disebut kemiripan semantik, yaitu kemiripan makna, bukan kemiripan huruf.

Ada beberapa cara mengukur jarak antar vektor. Salah satu yang paling umum adalah cosine similarity. Menurut OpenAI, kemiripan kosinus antara dua vektor mengukur seberapa mirip arah keduanya, dengan nilai yang umumnya berkisar antara nol sampai satu. Nilai mendekati satu berarti kedua vektor menunjuk arah yang hampir sama, tanda maknanya berdekatan. Cara ini populer karena hemat dan cukup andal untuk banyak kebutuhan.

Yang menarik, kedekatan makna ini muncul meski kata-kata yang dibandingkan tidak berbagi huruf sama sekali. "Mobil" dan "kendaraan" bisa berdekatan karena sering muncul dalam konteks serupa, sedangkan kata yang sama tetapi dipakai dalam arti berbeda bisa jatuh di tempat yang berjauhan. Model embedding belajar pola ini dari data teks dalam jumlah besar.

Kegunaan untuk pencarian dan klasifikasi

Karena makna bisa diubah menjadi jarak, banyak tugas yang tadinya sulit jadi lebih mudah.

Pencarian

Pencarian berbasis embedding bekerja dengan mengubah kueri menjadi vektor, lalu mencari dokumen dengan vektor terdekat. Ini berbeda dari pencarian kata kunci yang hanya mencocokkan huruf persis. Pengguna bisa mengetik "cara mempercepat laptop" dan tetap menemukan artikel berjudul "cara bikin komputer tidak lemot", karena maknanya berdekatan walau katanya berbeda. OpenAI menyebut embeddings berguna untuk pencarian dan pengambilan informasi.

Klasifikasi

Untuk klasifikasi atau pengelompokan, embedding membantu model menyusun objek berdasarkan kemiripan. Google menyebut embeddings dapat dipakai untuk tugas seperti klasifikasi, pengelompokan, dan pengambilan informasi. Karena teks sudah berbentuk angka, algoritma pengelompokan bisa mengumpulkan dokumen bertema serupa tanpa perlu memahami bahasanya.

Selain kata-kata

Embedding tidak terbatas pada teks. Google menjelaskan teknik yang sama berlaku untuk gambar dan audio. Ide dasarnya sama: ubah objek menjadi vektor, lalu ukur kedekatannya. Dengan begitu, sebuah gambar bisa ditemukan lewat deskripsi teks jika keduanya dipetakan ke ruang vektor yang saling terhubung.

Rekomendasi dan deteksi anomali

Karena kedekatan vektor menandakan kemiripan, teknik yang sama dipakai untuk merekomendasikan item yang serupa dengan yang sudah kamu sukai. OpenAI menyebut embeddings berguna antara lain untuk pencarian, pengelompokan, rekomendasi, deteksi anomali, dan klasifikasi. Deteksi anomali bekerja dari sisi sebaliknya: objek yang vektornya jauh dari kumpulan lain dianggap tidak biasa.

Hubungannya dengan RAG

Peran embedding menjadi sangat penting pada teknik retrieval-augmented generation, disingkat RAG. RAG memberi model bahasa akses ke kumpulan dokumen di luar pengetahuan yang tersimpan di parameternya. Supaya dokumen yang tepat bisa ditemukan saat ada pertanyaan, isi dokumen serta pertanyaannya terlebih dahulu diubah menjadi embedding.

Alurnya sederhana. Dokumen dipotong menjadi bagian kecil, lalu tiap bagian diubah menjadi vektor dan disimpan. Ketika ada pertanyaan, pertanyaan itu juga diubah menjadi vektor, dan sistem mencari bagian yang vektornya paling dekat. Bagian-bagian terdekat itulah yang disisipkan ke dalam konteks model bahasa sebelum ia menjawab. Tanpa embedding yang baik, pencarian dokumen relevan akan meleset, dan jawaban model pun ikut melemah.

Yang perlu diingat

Beberapa hal penting soal embedding. Pertama, vektor bergantung pada model yang membuatnya, jadi vektor dari dua model berbeda tidak bisa dibandingkan langsung. Kedua, kualitas kemiripan sangat tergantung data dan cara pelatihan, sehingga "mirip" menurut mesin belum tentu sama dengan "mirip" menurut kamu. Ketiga, cosine similarity hanyalah salah satu pilihan pengukuran; yang lain tetap mungkin selama konsisten dipakai.

Hal lain yang perlu diingat, mutu embedding sangat bergantung pada model yang dipakai untuk bahasa tertentu. Model yang dilatih terutama pada satu bahasa belum tentu menangkap nuansa bahasa lain dengan setara. Karena itu, untuk teks berbahasa Indonesia, pemilihan model sebaiknya diuji pada data nyata, bukan diasumsikan langsung cocok.

Embedding mengubah makna menjadi angka yang bisa dihitung. Itu terasa teknis, tetapi manfaatnya sangat praktis: pencarian yang lebih pintar, pengelompokan otomatis, dan pondasi bagi sistem yang mampu menarik dokumen relevan untuk memperkuat jawaban model bahasa.