org.apache.mahout.math.Vector.viewPart()方法的使用及代码示例

x33g5p2x  于2022-02-01 转载在 其他  
字(5.8k)|赞(0)|评价(0)|浏览(111)

本文整理了Java中org.apache.mahout.math.Vector.viewPart()方法的一些代码示例,展示了Vector.viewPart()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Vector.viewPart()方法的具体详情如下:
包路径:org.apache.mahout.math.Vector
类名称:Vector
方法名:viewPart

Vector.viewPart介绍

[英]Return a new vector containing the subset of the recipient
[中]

代码示例

代码示例来源:origin: apache/mahout

@Override
public Vector viewPart(int offset, int length) {
 return delegate.viewPart(offset, length);
}

代码示例来源:origin: apache/mahout

@Override
public Vector viewPart(int offset, int length) {
 return delegate.viewPart(offset, length);
}

代码示例来源:origin: apache/mahout

@Test(expected = IndexException.class)
public void testViewPartUnder() {
 test.viewPart(-1, CARDINALITY);
}

代码示例来源:origin: apache/mahout

@Test(expected = IndexException.class)
public void testViewPartOver() {
 test.viewPart(2, CARDINALITY);
}

代码示例来源:origin: apache/mahout

@Test(expected = IndexException.class)
public void testViewPartCardinality() {
 test.viewPart(1, 8);
}

代码示例来源:origin: apache/mahout

@Test(expected = IndexException.class)
public void testViewPartCardinality() {
 test.viewPart(1, values.length + 1);
}

代码示例来源:origin: apache/mahout

@Test(expected = IndexException.class)
public void testViewPartOver() {
 test.viewPart(2, 7);
}

代码示例来源:origin: apache/mahout

@Test(expected = IndexException.class)
public void testViewPartUnder() {
 test.viewPart(-1, values.length);
}

代码示例来源:origin: apache/mahout

private void decompose(Matrix a) {
 int n = a.rowSize();
 L.assign(a);
 // column-wise submatrix cholesky with simple pivoting
 for (int k = 0; k < n; k++) {
  double akk = L.get(k, k);
  // set upper part of column to 0.
  L.viewColumn(k).viewPart(0, k).assign(0);
  double epsilon = 1.0e-10 * L.viewColumn(k).aggregate(Functions.MAX, Functions.ABS);
  if (akk <= epsilon) {
   // degenerate column case.  Set diagonal to 1, all others to zero
   L.viewColumn(k).viewPart(k, n - k).assign(0);
   isPositiveDefinite = false;
   // no need to subtract from remaining sub-matrix
  } else {
   // normalize column by diagonal element
   akk = Math.sqrt(Math.max(0, akk));
   L.set(k, k, akk);
   L.viewColumn(k).viewPart(k + 1, n - k - 1).assign(Functions.div(akk));
   // now subtract scaled version of column
   for (int j = k + 1; j < n; j++) {
    Vector columnJ = L.viewColumn(j).viewPart(j, n - j);
    Vector columnK = L.viewColumn(k).viewPart(j, n - j);
    columnJ.assign(columnK, Functions.minusMult(L.get(j, k)));
   }
  }
 }
}

代码示例来源:origin: apache/mahout

@Override
public Matrix assignColumn(int column, Vector other) {
 if (columnSize() != other.size()) {
  throw new IndexException(columnSize(), other.size());
 }
 if (other.viewPart(column + 1, other.size() - column - 1).norm(1) > 1.0e-14) {
  throw new IllegalArgumentException("Cannot set lower portion of triangular matrix to non-zero");
 }
 for (Vector.Element element : other.viewPart(0, column).all()) {
  setQuick(element.index(), column, element.get());
 }
 return this;
}

代码示例来源:origin: apache/mahout

@Override
public Vector viewColumn(int column) {
 if (column < 0 || column >= columnSize()) {
  throw new IndexException(column, columnSize());
 }
 return matrix.viewColumn(column + offset[COL]).viewPart(offset[ROW], rowSize());
}

代码示例来源:origin: apache/mahout

Vector hColumn = hessenBerg.viewColumn(m - 1).viewPart(m, high - m + 1);
double scale = hColumn.norm(1);
 ort.viewPart(m, high - m + 1).assign(hColumn, Functions.plusMult(1 / scale));
 double h = ort.viewPart(m, high - m + 1).getLengthSquared();
 Vector ortPiece = ort.viewPart(m, high - m + 1);
 for (int j = m; j < n; j++) {
  double f = ortPiece.dot(hessenBerg.viewColumn(j).viewPart(m, high - m + 1)) / h;
  hessenBerg.viewColumn(j).viewPart(m, high - m + 1).assign(ortPiece, Functions.plusMult(-f));
  double f = ortPiece.dot(hessenBerg.viewRow(i).viewPart(m, high - m + 1)) / h;
  hessenBerg.viewRow(i).viewPart(m, high - m + 1).assign(ortPiece, Functions.plusMult(-f));
 ort.viewPart(m + 1, high - m).assign(hessenBerg.viewColumn(m - 1).viewPart(m + 1, high - m));
 for (int j = m; j <= high; j++) {
  double g = ort.viewPart(m, high - m + 1).dot(v.viewColumn(j).viewPart(m, high - m + 1));
  v.viewColumn(j).viewPart(m, high - m + 1).assign(ort.viewPart(m, high - m + 1), Functions.plusMult(g));

代码示例来源:origin: apache/mahout

@Override
public Vector viewRow(int row) {
 if (row < 0 || row >= rowSize()) {
  throw new IndexException(row, rowSize());
 }
 return matrix.viewRow(row + offset[ROW]).viewPart(offset[COL], columnSize());
}

代码示例来源:origin: apache/mahout

/**
 * Generates and returns the (economy-sized) orthogonal factor <tt>Q</tt>.
 *
 * @return <tt>Q</tt>
 */
@Override
public Matrix getQ() {
 int columns = Math.min(originalColumns, originalRows);
 Matrix q = qr.like(originalRows, columns);
 for (int k = columns - 1; k >= 0; k--) {
  Vector QRcolk = qr.viewColumn(k).viewPart(k, originalRows - k);
  q.set(k, k, 1);
  for (int j = k; j < columns; j++) {
   if (qr.get(k, k) != 0) {
    Vector Qcolj = q.viewColumn(j).viewPart(k, originalRows - k);
    double s = -QRcolk.dot(Qcolj) / qr.get(k, k);
    Qcolj.assign(QRcolk, Functions.plusMult(s));
   }
  }
 }
 return q;
}

代码示例来源:origin: apache/mahout

L.viewColumn(k).viewPart(k, n - k).assign(Functions.div(akk));
L.viewColumn(k).viewPart(0, k).assign(0);
 Vector columnJ = L.viewColumn(j).viewPart(k, n - k);
 Vector columnK = L.viewColumn(k).viewPart(k, n - k);
 columnJ.assign(columnK, Functions.minusMult(columnK.get(j - k)));

代码示例来源:origin: apache/mahout

Vector rColumn = r.viewColumn(k).viewPart(0, k);
for (int c = 0; c < columns; c++) {
 y.viewColumn(c).viewPart(0, k).assign(rColumn, Functions.plusMult(-x.get(k, c)));

代码示例来源:origin: apache/mahout

Vector rColumn = r.viewColumn(k).viewPart(0, k);
for (int c = 0; c < cols; c++) {
 y.viewColumn(c).viewPart(0, k).assign(rColumn, Functions.plusMult(-x.get(k, c)));

代码示例来源:origin: apache/mahout

@Test
public void testViewPart() throws Exception {
 Vector part = test.viewPart(1, 2);
 assertEquals("part size", 2, part.getNumNondefaultElements());
 for (int i = 0; i < part.size(); i++) {
  assertEquals("part[" + i + ']', values[OFFSET + i + 1], part.get(i), EPSILON);
 }
}

代码示例来源:origin: apache/mahout

@Test
public void testViewPart() {
 Vector part = test.viewPart(1, 2);
 assertEquals("part size", 2, part.getNumNondefaultElements());
 for (int i = 0; i < part.size(); i++) {
  assertEquals("part[" + i + ']', test.get(i+1), part.get(i), EPSILON);
 }
}

代码示例来源:origin: apache/mahout

QRcolumnsPart[k] = qr.viewColumn(k).viewPart(k, originalRows - k);
  Vector QRcolj = qr.viewColumn(j).viewPart(k, originalRows - k);
  double s = QRcolumnsPart[k].dot(QRcolj);

相关文章