Apa itu embedding grafik?

13

Saya baru-baru ini menemukan grafik embedding seperti DeepWalk dan LINE. Namun, saya masih belum memiliki ide yang jelas seperti apa yang dimaksud dengan embeddings grafik dan kapan menggunakannya (aplikasi)? Ada saran dipersilahkan!

Volka
sumber
1
Penyematan grafik adalah penyematan untuk grafik! Jadi dibutuhkan grafik dan mengembalikan embeddings untuk grafik, tepi, atau simpul. Embedding memungkinkan pencarian kesamaan dan umumnya memfasilitasi pembelajaran mesin dengan memberikan representasi .
Emre
@ Apa yang dimaksud dengan menanamkan? :)
Volka
1
Seperti makna dari embed berjalan, memperbaiki sesuatu menjadi sesuatu. Embedding grafik adalah semacam memperbaiki simpul ke permukaan dan menggambar tepi untuk mewakili katakanlah sebuah jaringan. Jadi contohnya seperti grafik planar yang dapat disematkan pada permukaan tanpa melintasi tepi. Bobot dapat ditugaskan ke tepi dan panjang tepi yang sesuai yaitu. membantu kita untuk memahami / memperkirakan sebagaimana @Emre menyebutkan pencarian kesamaan dll.2D
Kiritee Gak
@ KiriteeGak Terima kasih :) Apa aplikasi dunia nyata mereka? Mereka mengatakan mereka dapat digunakan untuk rekomendasi dan semuanya? tapi bagaimana caranya?
Volka
1
Rekomendasi video Youtube dapat divisualisasikan sebagai model di mana video yang sedang Anda tonton adalah simpul tempat Anda berada dan video berikutnya yang ada dalam rekomendasi Anda adalah video yang paling mirip dengan Anda berdasarkan pada apa yang telah ditonton oleh pengguna yang sama berikutnya dan banyak lebih banyak faktor tentu saja yang merupakan jaringan besar untuk dilalui. Makalah ini adalah bacaan sederhana yang bagus tentang memahami aplikasi.
Kiritee Gak

Jawaban:

19

Penyisipan grafik mempelajari pemetaan dari jaringan ke ruang vektor, sembari mempertahankan properti jaringan yang relevan.

Ruang vektor lebih cocok untuk ilmu data daripada grafik. Grafik berisi tepi dan simpul, hubungan jaringan itu hanya dapat menggunakan subset tertentu dari matematika, statistik, dan pembelajaran mesin. Ruang vektor memiliki toolset yang lebih kaya dari domain tersebut. Selain itu, operasi vektor seringkali lebih sederhana dan lebih cepat daripada operasi grafik yang setara.

Salah satu contoh adalah menemukan tetangga terdekat. Anda dapat melakukan "hop" dari node ke node lain dalam grafik. Dalam banyak grafik dunia nyata setelah beberapa lompatan, ada sedikit informasi yang bermakna (misalnya, rekomendasi dari teman teman teman). Namun, dalam ruang vektor, Anda dapat menggunakan metrik jarak untuk mendapatkan hasil kuantitatif (misalnya, jarak Euclidian atau Kesamaan Kosinus). Jika Anda memiliki metrik jarak kuantitatif dalam ruang vektor yang bermakna, langsung menemukan tetangga terdekat.

" Teknik, Aplikasi, dan Kinerja Penyematan Grafik: Survei " adalah artikel tinjauan umum yang lebih rinci.

Brian Spiering
sumber
26

Apa itu Embeddings grafik? "Grafik Embeddings" adalah area panas saat ini dalam pembelajaran mesin. Ini pada dasarnya berarti menemukan "representasi vektor laten" dari grafik yang menangkap topologi (dalam arti yang sangat mendasar) dari grafik. Kita dapat membuat "representasi vektor" ini kaya dengan juga mempertimbangkan hubungan vertex-vertex, informasi tepi dll. Ada kira-kira dua level embedding dalam grafik (tentu saja kita dapat kapan saja menentukan lebih banyak level dengan secara logis membagi seluruh grafik ke dalam subgraph dengan berbagai ukuran):

  • Vertex Embeddings - Di sini Anda menemukan representasi vektor laten dari setiap simpul dalam grafik yang diberikan. Anda kemudian dapat membandingkan berbagai simpul dengan memplot vektor-vektor ini dalam ruang dan menariknya "mirip" simpul diplot lebih dekat satu sama lain daripada yang berbeda atau kurang terkait. Ini adalah pekerjaan yang sama yang dilakukan di "DeepWalk" oleh Perozzi.
  • Grafik Embeddings - Di sini Anda menemukan representasi vektor laten dari seluruh grafik itu sendiri. Misalnya, Anda memiliki sekelompok senyawa kimia yang ingin Anda periksa senyawa mana yang mirip satu sama lain, berapa banyak jenis senyawa yang ada dalam kelompok (kelompok), dll. Anda dapat menggunakan vektor ini dan memplotnya di ruang dan temukan semua informasi di atas. Ini adalah pekerjaan yang dilakukan di "Deep Graph Kernels" oleh Yanardag.

Aplikasi - Dengan memperhatikan dengan seksama, embeddings adalah representasi "laten" yang berarti jika grafik memiliki | V | * | V | matriks adjacency di mana | V | = 1M, sulit digunakan atau memproses angka 1M * 1M dalam suatu algoritma. Jadi, penyisipan laten dimensi 'd', di mana d << | V |, akan membuat matriks kedekatan | V | * d dan relatif lebih mudah digunakan. Aplikasi lain bisa jadi - Pertimbangkan skenario sederhana di mana kami ingin merekomendasikan produk kepada orang-orang yang memiliki minat serupa di jejaring sosial. Dengan mendapatkan simpul vertex (di sini berarti representasi vektor dari setiap orang), kita dapat menemukan yang serupa dengan memplot vektor-vektor ini dan ini membuat rekomendasi menjadi mudah. Ini adalah beberapa aplikasi dan ada yang lain. Anda dapat merujuk pada makalah survei yang bagus - Teknik Penyematan Grafik, sebuah Survei .

Dari mana semua itu datang? Ada banyak pekerjaan di bidang ini dan hampir semua berasal dari penelitian inovatif di bidang pemrosesan bahasa alami - "Word2Vec" oleh Mikolov. Jika Anda ingin memulai dengan penelitian tentang embeddings grafik, saya akan merekomendasikan untuk terlebih dahulu memahami cara kerja Word2Vec. Anda dapat menemukan penjelasan yang bagus - pembelajaran parameter Word2Vec menjelaskan dan Stanford Lecture . Kemudian Anda dapat melompat ke kertas yang Anda daftarkan. Karya-karya tersebut dapat dikategorikan sebagai:

terbang
sumber
2
Wowww !! Ini benar-benar jawaban yang sempurna. Terima kasih banyak :) Dilakukan dengan sangat baik :)
Volka
Hai Mausam Jain. Bisakah Anda memberi tahu saya jika saya dapat menggunakan embedding grafik untuk mengidentifikasi node penting dalam jaringan?
Volka
Hai, Volka. Untuk menjawab pertanyaan ini, saya perlu tahu jenis grafik apa yang Anda kerjakan; apakah itu twitter, facebook, reddit atau yang lainnya?
flyingDope
Terimakasih atas balasan anda. Saya sebenarnya bekerja di jejaring sosial tempat saya ingin mengidentifikasi orang-orang yang paling sosial :)
Volka
0

Dalam makalah Sebuah teorema batas pusat untuk penyematan omnibus dari grafik produk titik acak oleh Levin et.al. kertas, jenis tertentu dari embedding grafik (embedded Omnibus) mendefinisikan embedding grafik sebagai metodologi "di mana simpul grafik dipetakan ke vektor dalam ruang Euclidean dimensi rendah." Periksa tautan untuk informasi lebih lanjut.

goatboy3million
sumber
selamat datang di forum. Jika Anda ingin menyebutkan makalah, harap tulis namanya juga sebagai bagian dari teks (karena tautan dapat dipecah).
Mark.F