Skip to main content

Graph Embedding Models

Project description

Graph Embedding

Introduction

This module provides the services and implementation for various graph embedding models.

Getting Started

Installation

You can install the DGLL Graph Embedding version 1.0.1 from PyPI as:

pip install dgllge

Usage and Tutorial

input graph

# import module
import ge


# Set Path to Data
data_dir = "Your Path to Data"
dataset = "File/Dataset Name"


# Load a Graph
inputGraph = ge.loadGraph(data_dir, dataset)

Configurable Parameter for Graph Embedding

embedDim = 2 # embedding size
numbOfWalksPerVertex = 2 # walks per vertex
walkLength = 4 # walk lenght
lr =0.025 # learning rate
windowSize = 3 # window size

Choose One of the Following Graph Embedding Models

# DeepWalk
rw = ge.DeepWalk(inputGraph, walkLength=walkLength, embedDim=embedDim, numbOfWalksPerVertex=numbOfWalksPerVertex, \
              windowSize=windowSize, lr = lr)
              
# Node2Vec
rw = ge.Node2vec(inputGraph, walkLength=walkLength, embedDim=embedDim, numbOfWalksPerVertex=numbOfWalksPerVertex, \
               windowSize=windowSize, lr=lr, p = 0.5, q = 0.8)
# Struc2Vec
rw = ge.Struc2Vec(inputGraph, walkLength=walkLength, embedDim=embedDim, numbOfWalksPerVertex=numbOfWalksPerVertex, \
              windowSize=windowSize, lr = lr)
Skip Gram model
modelSkipGram = ge.SkipGramModel(rw.totalNodes, rw.embedDim)
Want Node Embedding or Edge Embedding
# Learning Node Embedding
model = rw.learnNodeEmbedding(modelSkipGram)
# Learning Edge Embedding
model = rw.learnEdgeEmbedding(modelSkipGram)
Plot Embedding
ge.plot_2DEmbedding(rw)
Save Embedding to Disk
ge.saveEmbedding(data_dir, dataset, rw)
Generate Embedding for a Specific Node or Edge
node1 = 35
node2 = 40

# Get Embedding for a node
emb = rw.getNodeEmbedding(node1)
print("Node Embedding", emb)

# Get Embedding for an edge
emb = rw.getEdgeEmbedding(node1, node2)
print("Edge Embedding", emb)

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

Acknowledgments

(back to top)

Links

Project's GitHub Link: @Graph-Embedding

Project's PyPI Link: @dgllge

(back to top)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dgllge-1.0.1.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dgllge-1.0.1-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

Details for the file dgllge-1.0.1.tar.gz.

File metadata

  • Download URL: dgllge-1.0.1.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.5

File hashes

Hashes for dgllge-1.0.1.tar.gz
Algorithm Hash digest
SHA256 d9fd799ec03664d73569d688429b7a1fa372509f99dc986d4c9be1ace9715074
MD5 5cbdea7800fc67e2aa6503af114897f5
BLAKE2b-256 bd32c83808bb18f53d2d6fe52637383432f464c15f05a9399177a07b29c95171

See more details on using hashes here.

File details

Details for the file dgllge-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: dgllge-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 15.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.5

File hashes

Hashes for dgllge-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 207d85ebf642c1a762fbeab6fcf169da28f892002e07994dc2916c63f778821e
MD5 591b29d12f4d4b159fdfb5ef13aecd4a
BLAKE2b-256 7e34b31cfb961b482b0f4234eda9a29d8cb756ce50fcc5453cb5694cc301431f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page