
org.deeplearning4j.graph.models.loader.GraphVectorSerializer Maven / Gradle / Ivy
package org.deeplearning4j.graph.models.loader;
import org.apache.commons.io.IOUtils;
import org.apache.commons.io.LineIterator;
import org.deeplearning4j.graph.models.GraphVectors;
import org.deeplearning4j.graph.models.deepwalk.DeepWalk;
import org.deeplearning4j.graph.models.embeddings.GraphVectorsImpl;
import org.deeplearning4j.graph.models.embeddings.InMemoryGraphLookupTable;
import org.nd4j.linalg.api.ndarray.INDArray;
import org.nd4j.linalg.factory.Nd4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.*;
import java.util.ArrayList;
import java.util.List;
/**GraphVectorSerializer: Provide static methods to save and load DeepWalk/Graph vectors
*
*/
public class GraphVectorSerializer {
private static final Logger log = LoggerFactory.getLogger(GraphVectorSerializer.class);
private static final String DELIM = "\t";
public static void writeGraphVectors(DeepWalk deepWalk, String path) throws IOException {
int nVertices = deepWalk.numVertices();
int vectorSize = deepWalk.getVectorSize();
try( BufferedWriter write = new BufferedWriter(new FileWriter(new File(path), false)) ){
for( int i=0; i vectorList = new ArrayList<>();
try(BufferedReader reader = new BufferedReader(new FileReader(file))){
LineIterator iter = IOUtils.lineIterator(reader);
while(iter.hasNext()){
String line = iter.next();
String[] split = line.split(DELIM);
double[] vec = new double[split.length-1];
for( int i=1; i(null,table);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy