package org.deeplearning4j.graph.models; import org.deeplearning4j.graph.api.IGraph; import org.deeplearning4j.graph.api.Vertex; import org.nd4j.linalg.api.ndarray.INDArray; import java.io.Serializable; /**Vectors for nodes in a graph. * Provides lookup table and convenience methods for graph vectors */ public interface GraphVectors<V, E> extends Serializable { public IGraph<V, E> getGraph(); public int numVertices(); public int getVectorSize(); public INDArray getVertexVector(Vertex<V> vertex); public INDArray getVertexVector(int vertexIdx); public int[] verticesNearest(int vertexIdx, int top); double similarity(Vertex<V> vertex1, Vertex<V> vertex2); double similarity(int vertexIdx1, int vertexIdx2); }