@Override protected Matrix matrixLike(int rows, int columns) { //return new SparseRowMatrix(rows, columns); return new SparseMatrix(rows, columns); }
/** * @return Sparse matrix whose last row is empty. Since no entry is set in the last row, there is no vector instance * initialized in the underlying map. */ private SparseMatrix createSparseMatrixWithEmptyRow() { SparseMatrix result = new SparseMatrix(3, 3); result.setQuick(0, 0, 1); result.setQuick(1, 1 ,1); result.setQuick(1, 2, 1); return result; } }
@Override public Matrix like() { return new SparseMatrix(rowSize(), columnSize()); }
@Override public Matrix clone() { SparseMatrix clone = new SparseMatrix(numRows(), numCols()); for (MatrixSlice slice : this) { clone.rowVectors.put(slice.index(), slice.clone()); } return clone; }
@Override public Matrix viewPart(int[] offset, int[] size) { if (offset[ROW] < 0) { throw new IndexException(offset[ROW], rowSize()); } if (offset[ROW] + size[ROW] > rowSize()) { throw new IndexException(offset[ROW] + size[ROW], rowSize()); } if (offset[COL] < 0) { throw new IndexException(offset[COL], columnSize()); } if (offset[COL] + size[COL] > columnSize()) { throw new IndexException(offset[COL] + size[COL], columnSize()); } return new MatrixView(this, offset, size); }
distance = measure.distance(clusters[i], clusters[j]); clusterDistances.setQuick(i, j, distance); for (int k = 0; k < numClusters; k++) { if (closestCentroid != k) { double centroidDist = clusterDistances.getQuick(k, closestCentroid); if (centroidDist < 2 * dist) { dist = measure.distance(vector, clusters[k]);
@Override public void setQuick(int row, int column, double value) { Vector r = rowVectors.get(row); if (r == null) { r = new RandomAccessSparseVector(columnSize()); rowVectors.put(row, r); } r.setQuick(column, value); }
IntArrayList rowIndices = ((SparseMatrix) matrix).nonZeroRowIndices(); int numNonZeroRows = rowIndices.size(); out.writeInt(numNonZeroRows);
@Override public Matrix clone() { SparseMatrix clone = new SparseMatrix(numRows(), numCols()); for (MatrixSlice slice : this) { clone.rowVectors.put(slice.index(), slice.clone()); } return clone; }
@Override public Matrix assignRow(int row, Vector other) { if (columnSize() != other.size()) { throw new CardinalityException(columnSize(), other.size()); } if (row < 0 || row >= rowSize()) { throw new IndexException(row, rowSize()); } rowVectors.put(row, other); return this; }
@Override public void setQuick(int row, int column, double value) { Vector r = rowVectors.get(row); if (r == null) { r = new RandomAccessSparseVector(columnSize()); rowVectors.put(row, r); } r.setQuick(column, value); }
IntArrayList rowIndices = ((SparseMatrix) matrix).nonZeroRowIndices(); int numNonZeroRows = rowIndices.size(); out.writeInt(numNonZeroRows);
@Override public Matrix like(int rows, int columns) { return new SparseMatrix(rows, columns); }
SparseMatrix sparseEm = new SparseMatrix(model.getNrOfHiddenStates(), model.getNrOfOutputStates()); SparseMatrix sparseTr = new SparseMatrix(model.getNrOfHiddenStates(), model.getNrOfHiddenStates()); value = tr.getQuick(i, j); if (value > threshold) { sparseTr.setQuick(i, j, value); value = em.getQuick(i, j); if (value > threshold) { sparseEm.setQuick(i, j, value);
@Override public Matrix like() { return new SparseMatrix(rowSize(), columnSize()); }
@Override public Vector viewRow(int row) { if (row < 0 || row >= rowSize()) { throw new IndexException(row, rowSize()); } Vector res = rowVectors.get(row); if (res == null) { res = new RandomAccessSparseVector(columnSize()); rowVectors.put(row, res); } return res; }
@Override public void setQuick(int row, int column, double value) { Vector r = rowVectors.get(row); if (r == null) { r = new RandomAccessSparseVector(columnSize()); rowVectors.put(row, r); } r.setQuick(column, value); }
IntArrayList rowIndices = ((SparseMatrix) matrix).nonZeroRowIndices(); int numNonZeroRows = rowIndices.size(); out.writeInt(numNonZeroRows);
@Override protected Matrix matrixLike(int rows, int columns) { return new SparseMatrix(rows, columns); }
SparseMatrix sparseEm = new SparseMatrix(model.getNrOfHiddenStates(), model.getNrOfOutputStates()); SparseMatrix sparseTr = new SparseMatrix(model.getNrOfHiddenStates(), model.getNrOfHiddenStates()); value = tr.getQuick(i, j); if (value > threshold) { sparseTr.setQuick(i, j, value); value = em.getQuick(i, j); if (value > threshold) { sparseEm.setQuick(i, j, value);