Auparavant connu sous le nom de Kglib.
TypedB-ML fournit des outils pour activer les algorithmes graphiques et l'apprentissage automatique avec TypedB.
Il existe des intégrations pour NetworkX et pour Pytorch Géométrique (PYG).
L'intégration NetworkX vous permet d'utiliser une grande bibliothèque d'algorithmes sur des données graphiques exportées à partir de TypedB.
L'intégration de Pytorch Géométrique (PYG) vous donne une boîte à outils pour créer des réseaux de neurones graphiques (GNNS) pour vos données typedB, avec un exemple inclus pour la prédiction des liens (ou: prédiction de relation binaire, en termes typedb). La structure des GNNS est totalement personnalisable, avec des composants réseau pour des sujets populaires tels que l'attention du graphique et les transformateurs de graphes intégrés.
build_graph_from_queries
).DataSet
pour charger paresseusement les graphiques à partir d'une instance typedB. Chaque graphique est converti en un objet Data
PYG.HeteroData
car toutes les données de typedB ont un type. La conversion Data
en HeteroData
est disponible en PYG, mais elle perd des informations de commande de nœud. Pour y remédier, typedb-ml fournit store_concepts_by_type
pour stocker des concepts cohérents avec un objet HeteroData
. Cela permet aux concepts d'être correctement réassociés avec les prédictions une fois l'apprentissage terminé.FeatureEncoder
pour orchestrer les encodeurs pour générer des fonctionnalités pour les graphiques.HeteroData
Vous pouvez trouver les ressources suivantes utiles, en particulier pour comprendre pourquoi TypedB-ML a commencé:
Python> = 3.7.x
Saisissez le fichier requirements.txt
à partir d'ici et installez les exigences avec pip install -r requirements.txt
. Cela est dû à certaines subtilités qui installent les dépendances de PYG, voir ici pour plus de détails.
Installé TypedB-ML: pip install typedb-ml
.
TypedB 2.11.1 Exécution en arrière-plan.
typedb-client-python
2.11.x (PYPI, version github). Cela doit être installé automatiquement lorsque vous pip install typedb-ml
.
Jetez un œil à l'exemple de prédiction de liaison hétérogène géométrique pytorch pour voir comment utiliser TypedB-ML pour créer un GNN sur les données typedB.
Pour suivre la conversation de développement, veuillez rejoindre le Vaticle Discord et rejoindre le canal #typedb-ml
. Alternativement, démarrez un nouveau sujet sur le forum de discussion Vaticle.
TypEdB-ML nécessite que vous ayez migré vos données dans une instance de cluster TypedB ou TypedB. Il existe un référentiel d'exemples officiels sur la façon de procéder à ce sujet et les informations disponibles sur la migration dans les documents. Alternativement, il existe des projets communautaires fantastiques qui se développent dans l'OSI typedB pour faciliter le chargement de données rapide et facile, par exemple le chargeur typedb.
Il est prévu que vous utiliserez PIP pour installer, mais si vous devez apporter vos propres modifications à la bibliothèque et l'importer dans votre projet, vous pouvez construire à partir de la source comme suit:
Clone TypedB-ML:
git clone [email protected]:vaticle/typedb-ml.git
Entrez dans le répertoire du projet:
cd typedb-ml
Construisez toutes les cibles:
bazel build //...
Exécutez tous les tests. Nécessite Python 3.7+ sur votre PATH
. Les dépendances des tests sont destinées à Linux car c'est l'environnement CI:
bazel test //typedb_ml/... --test_output=streamed --spawn_strategy=standalone --action_env=PATH
Construisez la distribution PIP. Sormes de bazel-bin
:
bazel build //:assemble-pip