private HashMap<String, float[]> convertEmbeddings(Set<String> targetVocab) { // For every string in vocabulary // Get corresponding column of output matrix W2 // Map String to array of floats HashMap<String, float[]> embeddingMatrix = new HashMap<String, float[]>(); for (String word : targetVocab) { int wordIndex = encodedVocab.get(word); double[] wordEmbedding = W2.getColumn(wordIndex); float[] wordEmbeddingFloat = new float[wordEmbedding.length]; for (int i = 0; i < wordEmbedding.length; i++) { wordEmbeddingFloat[i] = (float) wordEmbedding[i]; } embeddingMatrix.put(word, wordEmbeddingFloat); } return embeddingMatrix; }