Επισκόπηση
Υλοποίηση της τεχνικής ενσωμάτωσης κόμβων DeepWalk εξ ολοκλήρου από το μηδέν: τυχαίοι περίπατοι σε γράφο, αντιμετωπιζόμενοι ως προτάσεις για μοντέλο Continuous Bag-of-Words.
Τι έφτιαξα
Παραγωγή τυχαίων περιπάτων στον γράφο Karate Club (nx.karate_club_graph), με σύνολα δεδομένων περιπάτων/παραθύρων πλαισίου σε cache CSV για αναπαράξιμα runs. Το μοντέλο CBOW είναι ελάχιστο από σχεδίαση: επίπεδο ενσωμάτωσης, mean-pooled πλαίσιο, γραμμικό επίπεδο και log-softmax — εκπαιδευμένο με Adam και cross-entropy.
Το CLI εκτελεί αναζήτηση πλέγματος πάνω από μέγεθος παραθύρου, μήκος περιπάτου, αριθμό περιπάτων και διάσταση ενσωμάτωσης (12–32), με early stopping. Η αξιολόγηση ομαδοποιεί τις μάθες ενσωματώσεις με KMeans και τις συγκρίνει με την πραγματική διαίρεση των συλλόγων, ενώ οπτικοποιήσεις t-SNE αποκαλύπτουν τη γεωμετρία των ενσωματώσεων.
Τεχνικά highlights
- Καθαρή, ελαφριά υλοποίηση CBOW
- Συστηματική αναζήτηση πλέγματος σε όλες τις υπερπαραμέτρους
- Ποσοτική (ακρίβεια KMeans) και ποιοτική (t-SNE) αξιολόγηση
Αποτέλεσμα
Οι μάθες ενσωματώσεις ανακτούν τη δομή του συλλόγου — η κλασική τεχνική, υλοποιημένη στο χέρι.