Pembelajaran mesin dan pembelajaran mendalam memengaruhi hampir setiap industri, dengan contoh utama adalah domain keuangan. Penerapan pembelajaran mesin memungkinkan analisis dan pemodelan sistem keuangan yang kompleks secara mendetail, dengan beberapa contoh utamanya adalah deteksi penipuan, penilaian risiko, dan perdagangan algoritmik. Pada tingkat tinggi, pembelajaran mesin dapat digunakan dalam semua kasus ini karena membantu kita memperoleh hubungan dan pola dari data.

Saya bekerja di Tim Layanan Grafik Perusahaan sebagai pekerja magang, tempat saya belajar tentang bagaimana Capital One mengintegrasikan penyematan ke dalam alur kerja mereka. Sebagai lembaga keuangan, Capital One menangani grafik dan vektor dari transaksi kartu kredit hingga kasus penggunaan bisnis dan pelanggan lainnya.

Ikhtisar

Tim kami mengerjakan layanan yang memerlukan kueri grafik dan penelusuran kesamaan pada penyematan. Alat ini berguna untuk mendeteksi penipuan dan kasus penggunaan data transaksional lainnya. Saya terutama mengerjakan aspek pencarian kesamaan pada alat tersebut. Di bawah ini adalah ikhtisar dari apa yang saya kerjakan.

Penyematan Node

Penyematan node adalah representasi vektor berdimensi rendah yang berisi fitur utama setiap node dalam struktur grafik. Penyematan ini menyandikan informasi struktural dan semantik, yang memungkinkan penerapan teknik pembelajaran mesin pada data. Dalam grafik, setiap node mewakili suatu entitas, seperti akun atau pedagang. Penyematan node memungkinkan setiap node dipetakan ke ruang vektor kontinu di mana jarak antar node dapat mencerminkan kesamaannya.

Pencarian Kesamaan

Pencarian kesamaan adalah contoh kasus penggunaan hilir yang digunakan untuk mencari tetangga terdekat.

Saya secara khusus menjelajahi perpustakaan NMSLIB, perangkat populer untuk mengimplementasikan pencarian kesamaan pada embeddings berdimensi tinggi.

NMSLIB

NMSLIB adalah perpustakaan sumber terbuka yang menyediakan kerangka kerja untuk melakukan perkiraan pencarian tetangga terdekat (JST). Ini adalah singkatan dari perpustakaan ruang non-metrik dan dirancang agar cepat dan fleksibel untuk ruang besar dan berdimensi tinggi. Perpustakaan menyediakan beberapa algoritma untuk ANN, termasuk grafik dunia kecil yang dapat dinavigasi secara hierarki (HNSW).

Di HNSW, sisi-sisinya menghubungkan vektor-vektor indeks yang berdekatan satu sama lain untuk membentuk grafik. Kemudian saat melakukan pencarian, grafik yang dihasilkan dilintasi sebagian untuk menemukan perkiraan tetangga terdekat dengan vektor kueri yang disediakan. Algoritme ini selalu mengunjungi kandidat terdekat dengan vektor kueri untuk mendekati tetangga terdekat kueri. Untuk memilih vektor yang dapat digunakan oleh algoritme untuk memulai traversal, algoritme akan membangun hierarki grafik dengan lapisan terbawah berisi semua vektor, dan subset vektor acak dari lapisan tepat di bawahnya ditambahkan ke setiap lapisan.

Selama pencarian, kita mulai dari vektor acak di lapisan paling atas, melintasi sebagian untuk menemukan vektor terdekat dengan vektor kueri di lapisan itu, dan menggunakannya sebagai titik awal baru di lapisan berikutnya. Begitu kita mencapai lapisan paling bawah, kita tetap melakukan traversal, namun sebagai gantinya, kita melacak k-tetangga terdekat yang dikunjungi sepanjang jalan.

Berikut ini ikhtisar bagaimana NMSLIB cocok dengan proses Pencarian Kesamaan:

Dalam fase pengindeksan, kami membangun struktur yang secara efisien mengambil item serupa. Beberapa contoh metode pengindeksan adalah HNSW, sw-graphs, dan k-d tree.

Dalam fase pemrosesan kueri, NMSLIB menerima vektor kueri dan mengembalikan sekumpulan vektor dari kumpulan data yang paling mirip dengan kueri.

Pada tahap pencarian kesamaan, pencarian perkiraan tetangga terdekat menggunakan struktur pengindeksan untuk memangkas ruang pencarian dan hanya memeriksa subset vektor yang kemungkinan serupa dengan vektor kueri.

Terakhir, tahap pengambilan mengembalikan kumpulan vektor yang paling mirip dengan kueri. Metode pengindeksan HNSW menggunakan recall untuk mengevaluasi hasilnya, yang mengukur proporsi vektor relevan yang diambil di antara k-tetangga terdekat yang dikembalikan.

Pengalaman

Capital One Tech Incubator, yang didirikan pada tahun 2018, memberikan siswa pengalaman pembelajaran mesin dan ilmu data. Sepanjang program, peserta magang menerapkan apa yang mereka pelajari di kelas dan lebih banyak lagi ke aplikasi Capital One di dunia nyata dalam ilmu data dan pembelajaran mesin. Magang, dikelompokkan berdasarkan minat ke dalam tim, dipasangkan dengan rekanan teknologi Capital One untuk memandu proyek mereka.

Magang selama semester musim semi ini sangat menuntut dan sangat bermanfaat seperti yang terjadi selama tahun ajaran dan dalam ruang yang selaras dengan minat saya. Sungguh menggembirakan untuk mengerjakan tugas yang relevan untuk tim dan berkomunikasi secara efektif dengan rekan magang dan manajer saya, meskipun magangnya bersifat hybrid. Saya mempelajari banyak keterampilan teknis dan interpersonal yang akan terus saya kembangkan dan terapkan dalam usaha masa depan. Saya juga mendapatkan wawasan tentang bagaimana perusahaan-perusahaan terkemuka menggunakan perkembangan terkini dalam bidang pembelajaran mesin, sebuah bidang yang saya harap dapat terus saya tingkatkan keahliannya.

Kesempatan ini menegaskan kembali ketertarikan saya pada bidang ini melalui pengalaman langsung dengan memungkinkan saya menerapkan apa yang saya pelajari di kelas dari pengalaman saya sebelumnya dan selama magang ini ke dalam aplikasi dunia nyata. Platform Capital One yang disediakan melalui Tech Incubator memungkinkan kemudahan komunikasi dan menyediakan lingkungan yang menggembirakan.