Beschreibung
Cleora ist eine bahnbrechende, in Rust entwickelte Graph-Embedding-Engine, die darauf ausgelegt ist, deterministische und hochgenaue Graph-Embeddings zu liefern. Im Gegensatz zu herkömmlichen Methoden, die auf Random Walks, Negative Sampling und GPU-Clustern basieren, berechnet Cleora die exakte Verteilung aller möglichen Walks in einer einzigen Potenz einer dünnbesetzten Matrix. Dieser Ansatz eliminiert Rauschen und stochastische Approximation, gewährleistet perfekte Reproduzierbarkeit und eine signifikant schnellere Berechnung auf einem einzelnen CPU-Kern.
Der Kern von Cleoras Innovation liegt in seinem Algorithmus. Er konstruiert eine dünnbesetzte Übergangsmatrix aus dem Eingabegraphen und verarbeitet heterogene Hypergraphen mit typisierten, mehrfach-relationalen Kanten nativ. Jede Iteration der Matrixmultiplikation mit dieser Übergangsmatrix erfasst die vollständige Verteilung von Walks einer bestimmten Länge. Darauf folgt eine L2-normierte Propagation, bei der das Embedding jedes Knotens auf den normierten Durchschnitt der Embeddings seiner Nachbarn aktualisiert wird. Dieser Prozess erfordert nur wenige Iterationen für die Kookkurrenz-Ähnlichkeit und etwas mehr für die kontextuelle Ähnlichkeit, was ihn um Größenordnungen schneller macht als sampling-basierte Methoden.
Zu den Hauptvorteilen von Cleora gehören seine Geschwindigkeit, Genauigkeit und Effizienz. Es ist bis zu 240-mal schneller als GraphSAGE und verbraucht deutlich weniger Speicher als andere Bibliotheken wie NetMF. Die Engine ist standardmäßig deterministisch, was für reproduzierbare Forschung und Produktions-ML-Pipelines entscheidend ist. Sie unterstützt nativ heterogene Hypergraphen, wodurch komplexes Graph-Preprocessing entfällt. Darüber hinaus zeichnet sich Cleora durch eine minimale Installationsgröße von etwa 5 MB aus, mit nur numpy und scipy als Abhängigkeiten, und vermeidet die Komplikationen von GPU-Treiberinstallationen und schweren Frameworks.
Cleora ist produktionsreif und bietet stabile und induktive Embeddings, die das Einbetten neuer Knoten unterstützen, ohne den gesamten Graphen neu trainieren zu müssen. Seine Fähigkeiten erstrecken sich auf verschiedene Anwendungen, darunter Empfehlungssysteme, Wissensgraphen, Entitätsauflösung, Betrugserkennung und Medikamentenentwicklung. Die Effizienz der Engine wird durch Fallstudien wie Zomato hervorgehoben, das GraphSAGE durch Cleora ersetzte und die Zeit für die Generierung von Embeddings für Millionen von Nutzern von 20 Stunden auf unter 5 Minuten reduzierte.
Cleora bietet eine umfassende Suite von Tools, darunter integrierte alternative Algorithmen zum Vergleich, eine reichhaltige Evaluationssuite zur Bewertung der Embedding-Qualität, Graph-Sampling-Funktionen und Hyperparameter-Tuning. Es enthält auch ein CLI-Tool für die einfache Integration in Skripting- und CI/CD-Pipelines. Die gesamte Bibliothek ist Open Source, kostenlos nutzbar, modifizierbar und deploybar und bietet eine kostengünstige Lösung im Vergleich zu GPU-basierten Alternativen.
Cleora Graph Embedding Engine's Kernfunktionen
Deterministische Berechnung von Graph-Embeddings mittels Potenzierung dünnbesetzter Matrizen
Reine CPU-Ausführung, keine GPU erforderlich
Verarbeitet nativ heterogene Hypergraphen mit typisierten, mehrfach-relationalen Kanten
Eliminiert Random-Walk-Sampling und Skip-Gram-Training
Erzielt hohe Genauigkeit auf realen Graphen
Signifikant schneller als GPU-basierte und sampling-basierte Methoden
Minimale Abhängigkeiten und geringe Installationsgröße (~5 MB)
Unterstützt induktives Lernen für neue Knoten ohne erneutes Training
Enthält integrierte alternative Algorithmen zum Vergleich
Bietet eine reichhaltige Evaluationssuite für die Embedding-Qualität
Bietet ein CLI-Tool für Skripting und CI/CD-Integration
Open Source und kostenlos nutzbar, modifizierbar und deploybar
Wie verwendet man Cleora Graph Embedding Engine?
Installation: pip install pycleora
Eingabedaten: Übergabe von Kantenlisten, Interaktionsprotokollen oder Wissensdreiecken im TSV-Format.
Graph-Konstruktion: Cleora erstellt einen heterogenen Hypergraphen aus den Eingabedaten.
Matrix-Potenzierung: Berechnet die dünnbesetzte Übergangsmatrix und ihre Potenzen, um Walk-Verteilungen zu erfassen.
Embedding-Generierung: L2-normierte Propagation generiert deterministische Embedding-Vektoren.
Downstream-ML: Nutzung der generierten Embeddings für Empfehlungen, Klassifizierung, Suche usw.
Cleora Graph Embedding Engine's Anwendungsfälle
- Empfehlungssysteme
- Wissensgraphen
- Entitätsauflösung
- Betrugserkennung
- Analyse sozialer Netzwerke
- Medikamentenentwicklung
- Optimierung von Lieferketten
- Kundensegmentierung








