პირველ რიგში, შევისწავლით, თუ რა არის გრაფები, რატომ გამოიყენება ისინი და როგორ არის საუკეთესო მათი წარმოდგენა. შემდეგ მოკლედ განვიხილავთ, თუ როგორ მიმდინარეობს სწავლა გრაფებზე, ნეირონულ ქსელებამდელი მეთოდებიდან (გრაფის მახასიათებლების ერთდროულად შესწავლა) დღეს საყოველთაოდ ცნობილ გრაფულ ნეირონულ ქსელებამდე. ბოლოს, მიმოვიხედავთ ტრანსფორმერების სამყაროში გრაფებისთვის. არსებითად, გრაფი არის ობიექტების აღწერა, რომლებიც ერთმანეთთან კავშირებითაა დაკავშირებული. გრაფების მაგალითებია სოციალური ქსელები (Twitter, Mastodon, ნებისმიერი ციტირების ქსელი, რომელიც აკავშირებს ნაშრომებსა და ავტორებს), მოლეკულები, ცოდნის გრაფები (როგორიცაა UML დიაგრამები, ენციკლოპედიები და ნებისმიერი ვებგვერდი თავისი ჰიპერბმულებით), წინადადებები, რომლებიც წარმოდგენილია სინტაქსური ხეების სახით, ნებისმიერი 3D ბადე და სხვა! ამიტომ, არ იქნება გაზვიადება თუ ვიტყვით, რომ გრაფები ყველგანაა. გრაფის (ან ქსელის) ელემენტებს ეწოდება მისი კვანძები (ან წვეროები), ხოლო მათ კავშირებს – წიბოები (ან ბმულები). მაგალითად, სოციალურ ქსელში, კვანძები მომხმარებლები არიან, ხოლო წიბოები – მათი კავშირები; მოლეკულაში, კვანძები ატომები არიან, ხოლო წიბოები – მათი მოლეკულური ბმები. თუ გსურთ თქვენი მონაცემების გამოყენება, ჯერ უნდა გაითვალისწინოთ მათი საუკეთესო დახასიათება (ჰომოგენური/ჰეტეროგენული, მიმართული/არამიმართული და ა.შ.). მოდით, განვიხილოთ გრაფებზე შესაძლო ამოცანები: კვანძის დონეზე, ეს ჩვეულებრივ კვანძის თვისების პროგნოზირებაა. მაგალითად, Alphafold იყენებს კვანძის თვისების პროგნოზირებას ატომების 3D კოორდინატების პროგნოზირებისთვის მოლეკულის საერთო გრაფის გათვალისწინებით, რითაც პროგნოზირებს, თუ როგორ იკეცება მოლეკულები 3D სივრცეში, რაც რთული ბიოქიმიური პრობლემაა. წიბოს დონეზე, ეს არის ან წიბოს თვისების პროგნოზირება, ან დაკარგული წიბოს პროგნოზირება. წიბოს თვისების პროგნოზირება ეხმარება წამლების გვერდითი მოვლენების პროგნოზირებას, გვერდითი ეფექტების განსაზღვრას ორი წამლის წყვილის გათვალისწინებით. დაკარგული წიბოს პროგნოზირება გამოიყენება სარეკომენდაციო სისტემებში, რათა იწინასწარმეტყველოს, დაკავშირებულია თუ არა გრაფში ორი კვანძი ერთმანეთთან. ასევე შესაძლებელია მუშაობა ქვე-გრაფის დონეზე, საზოგადოების გამოვლენაზე ან ქვე-გრაფის თვისების პროგნოზირებაზე. სოციალური ქსელები იყენებენ საზოგადოების გამოვლენას იმის დასადგენად, თუ როგორ არიან ადამიანები დაკავშირებული. ქვე-გრაფის თვისების პროგნოზირება გვხვდება მარშრუტის სისტემებში (როგორიცაა Google Maps) ჩამოსვლის სავარაუდო დროის პროგნოზირებისთვის. ამ ამოცანებზე მუშაობა შესაძლებელია ორი გზით. როდესაც გსურთ კონკრეტული გრაფის ევოლუციის პროგნოზირება, თქვენ მუშაობთ ტრანსდუქციურ გარემოში, სადაც ყველაფერი (ტრენინგი, ვალიდაცია და ტესტირება) ხდება იმავე ერთ გრაფზე. თუ ეს თქვენი დაყენებაა, ფრთხილად იყავით! ერთადერთი გრაფიდან სავარჯიშო/ვალიდაციის/სატესტო მონაცემთა ნაკრებების შექმნა არ არის ტრივიალური. თუმცა, მრავალი სამუშაო კეთდება სხვადასხვა გრაფის გამოყენებით (ცალკეული სავარჯიშო/ვალიდაციის/სატესტო გაყოფა), რასაც ინდუქციური გარემო ეწოდება. გრაფის დამუშავებისა და ოპერირებისთვის მისი წარმოდგენის საერთო გზები არსებობს. თუმცა, მიუხედავად იმისა, რომ ეს წარმოდგენები ნაცნობი ჩანს, არ მოგატყუოთ! გრაფები ძალიან განსხვავდება მანქანურ სწავლებაში გამოყენებული ტიპური ობიექტებისგან, რადგან მათი ტოპოლოგია უფრო რთულია, ვიდრე უბრალოდ „მიმდევრობა“ (როგორიცაა ტექსტი და აუდიო) ან „მოწესრიგებული ბადე“ (მაგალითად, სურათები და ვიდეოები): მიუხედავად იმისა, რომ მათი წარმოდგენა შესაძლებელია სიების ან მატრიცების სახით, მათი წარმოდგენა არ უნდა ჩაითვალოს მოწესრიგებულ ობიექტად! მაგრამ რას ნიშნავს ეს? თუ თქვენ გაქვთ წინადადება და მის სიტყვებს აურევთ, თქვენ შექმნით ახალ წინადადებას. თუ თქვენ გაქვთ სურათი და მის სვეტებს გადაანაწილებთ, თქვენ შექმნით ახალ სურათს. ეს არ არის გრაფის შემთხვევაში: თუ თქვენ აურევთ მის წიბოების სიას ან მისი მიმდებარეობის მატრიცის სვეტებს, ის მაინც იგივე გრაფი იქნება. (ამას უფრო ფორმალურად ცოტა ქვემოთ ავხსნით, მოძებნეთ პერმუტაციული ინვარიანტობა). მანქანური სწავლების გამოყენებით გრაფებზე მუშაობის ჩვეულებრივი პროცესი ჯერ გულისხმობს ინტერესის ობიექტებისთვის (კვანძები, წიბოები ან სრული გრაფები თქვენი ამოცანის მიხედვით) აზრიანი წარმოდგენის გენერირებას, შემდეგ კი მათ გამოყენებას სამიზნე ამოცანის პროგნოზირებისთვის. ჩვენ გვსურს (როგორც სხვა მოდალობებში) შევზღუდოთ ობიექტების მათემატიკური წარმოდგენები ისე, რომ მსგავსი ობიექტები მათემატიკურად ახლოს იყვნენ. თუმცა, ეს მსგავსება რთული განსასაზღვრია გრაფული მანქანური სწავლებისას: მაგალითად, ორი კვანძი უფრო მსგავსია, როდესაც მათ აქვთ იგივე ეტიკეტები თუ იგივე მეზობლები? შენიშვნა: მომდევნო სექციებში, ჩვენ ყურადღებას გავამახვილებთ კვანძების წარმოდგენების გენერირებაზე. მას შემდეგ, რაც გექნებათ კვანძის დონის წარმოდგენები, შესაძლებელია წიბოს ან გრაფის დონის ინფორმაციის მიღება. წიბოს დონის ინფორმაციისთვის, შეგიძლიათ დააკონკატენიროთ კვანძების წყვილის წარმოდგენები ან შეასრულოთ წერტილოვანი ნამრავლი. გრაფის დონის ინფორმაციისთვის, შესაძლებელია გლობალური გაერთიანების (საშუალო, ჯამი და ა.შ.) შესრულება ყველა კვანძის დონის წარმოდგენის გაერთიანებულ ტენსორზე. თუმცა, ეს დაასწორებს და დაკარგავს ინფორმაციას გრაფის შესახებ – უფრო აზრიანი შეიძლება იყოს რეკურსიული იერარქიული გაერთიანება, ან ვირტუალური კვანძის დამატება, რომელიც დაკავშირებულია გრაფის ყველა სხვა კვანძთან, და მისი წარმოდგენის გამოყენება როგორც მთლიანი გრაფის წარმოდგენა. ნეირონულ ქსელებამდე, გრაფები და მათი ინტერესის ობიექტები შეიძლება წარმოდგენილი ყოფილიყო მახასიათებლების კომბინაციების სახით, ამოცანის სპეციფიკური მიდგომით. ახლა, ეს მახასიათებლები კვლავ გამოიყენება მონაცემთა გაფართოებისა და ნახევრად კონტროლირებადი სწავლებისთვის, თუმცა არსებობს უფრო რთული მახასიათებლების გენერირების მეთოდები; შეიძლება არსებითი იყოს იმის პოვნა