ToolRunner.run(new DistributedLanczosSolver().job(), args);
public static void main(String[] args) throws Exception { ToolRunner.run(new DistributedLanczosSolver().job(), args); } }
public static void main(String[] args) throws Exception { ToolRunner.run(new DistributedLanczosSolver().job(), args); } }
public static void main(String[] args) throws Exception { ToolRunner.run(new DistributedLanczosSolver().job(), args); } }
DistributedLanczosSolver solver = new DistributedLanczosSolver(); LanczosState state = new LanczosState(L, overshoot, DistributedLanczosSolver.getInitialVector(L)); Path lanczosSeqFiles = new Path(outputCalc, "eigenvectors");
DistributedLanczosSolver solver = new DistributedLanczosSolver(); LanczosState state = new LanczosState(L, overshoot, DistributedLanczosSolver.getInitialVector(L)); Path lanczosSeqFiles = new Path(outputCalc, "eigenvectors");
"--workingDir", workingDir.toString() }; ToolRunner.run(getConfiguration(), new DistributedLanczosSolver().new DistributedLanczosSolverJob(), args); "--workingDir", workingDir.toString() }; ToolRunner.run(getConfiguration(), new DistributedLanczosSolver().new DistributedLanczosSolverJob(), args);
"--cleansvd", "true" }; ToolRunner.run(getConfiguration(), new DistributedLanczosSolver().new DistributedLanczosSolverJob(), args); "--cleansvd", "true" }; ToolRunner.run(getConfiguration(), new DistributedLanczosSolver().new DistributedLanczosSolverJob(), args); Path cleanEigenvectors2 = new Path(output, EigenVerificationJob.CLEAN_EIGENVECTORS); Matrix eigenVectors2 = new DenseMatrix(7, corpus.numCols());
public void doTestResumeIteration(boolean symmetric) throws IOException { DistributedRowMatrix corpus = getCorpus(symmetric); Configuration conf = getConfiguration(); corpus.setConf(conf); DistributedLanczosSolver solver = new DistributedLanczosSolver(); int rank = 10; Vector intitialVector = DistributedLanczosSolver.getInitialVector(corpus); HdfsBackedLanczosState state = new HdfsBackedLanczosState(corpus, rank, intitialVector, new Path(getTestTempDirPath(), "lanczosStateDir" + suf(symmetric) + counter)); solver.solve(state, rank, symmetric); rank *= 2; state = new HdfsBackedLanczosState(corpus, rank, intitialVector, new Path(getTestTempDirPath(), "lanczosStateDir" + suf(symmetric) + counter)); solver = new DistributedLanczosSolver(); solver.solve(state, rank, symmetric); LanczosState allAtOnceState = doTestDistributedLanczosSolver(symmetric, rank, false); for (int i=0; i<state.getIterationNumber(); i++) { Vector v = state.getBasisVector(i).normalize(); Vector w = allAtOnceState.getBasisVector(i).normalize(); double diff = v.minus(w).norm(2); assertTrue("basis " + i + " is too long: " + diff, diff < 0.1); } counter++; }
private LanczosState doTestDistributedLanczosSolver(boolean symmetric, int desiredRank, boolean hdfsBackedState) throws IOException { DistributedRowMatrix corpus = getCorpus(symmetric); Configuration conf = getConfiguration(); corpus.setConf(conf); DistributedLanczosSolver solver = new DistributedLanczosSolver(); Vector intitialVector = DistributedLanczosSolver.getInitialVector(corpus); LanczosState state; if (hdfsBackedState) { HdfsBackedLanczosState hState = new HdfsBackedLanczosState(corpus, desiredRank, intitialVector, new Path(getTestTempDirPath(), "lanczosStateDir" + suf(symmetric) + counter)); hState.setConf(conf); state = hState; } else { state = new LanczosState(corpus, desiredRank, intitialVector); } solver.solve(state, desiredRank, symmetric); SolverTest.assertOrthonormal(state); for (int i = 0; i < desiredRank/2; i++) { SolverTest.assertEigen(i, state.getRightSingularVector(i), corpus, 0.1, symmetric); } counter++; return state; }