adelie.adelie_core.matrix.MatrixNaiveInteractionDense32C#
- class adelie.adelie_core.matrix.MatrixNaiveInteractionDense32C#
- Core matrix class for naive interaction matrix. - Methods - __init__(self, mat, pairs, levels, n_threads)- bmul(self, arg0, arg1, arg2, arg3, arg4)- Computes a column block matrix-vector multiplication. - bmul_safe(self, arg0, arg1, arg2, arg3, arg4)- Computes a column block matrix-vector multiplication. - btmul(self, arg0, arg1, arg2, arg3)- Computes a column block matrix transpose-vector multiplication increment. - cmul(self, arg0, arg1, arg2)- Computes a column vector-vector multiplication. - cmul_safe(self, arg0, arg1, arg2)- Computes a column vector-vector multiplication. - cols(self)- Returns the number of columns. - cov(self, arg0, arg1, arg2, arg3)- Computes a weighted covariance matrix. - ctmul(self, arg0, arg1, arg2)- Computes a column vector-scalar multiplication increment. - mean(self, arg0, arg1)- Computes the implied column means. - mul(self, arg0, arg1, arg2)- Computes a matrix-vector multiplication. - rows(self)- Returns the number of rows. - sp_tmul(self, arg0, arg1)- Computes a matrix transpose-sparse matrix multiplication. - sq_mul(self, arg0, arg1)- Computes a squared matrix-vector multiplication. - var(self, arg0, arg1, arg2)- Computes the implied column variances. - Attributes - List of group sizes corresponding to each element in - groups.- List of starting indices to each group where G is the number of groups. - Number of dimensions. - Shape of the matrix. - __init__(self: adelie.adelie_core.matrix.MatrixNaiveInteractionDense32C, mat: numpy.ndarray[numpy.float32[m, n], flags.c_contiguous], pairs: numpy.ndarray[numpy.int64[m, n], flags.c_contiguous], levels: numpy.ndarray[numpy.int64[1, n]], n_threads: int) None#
 - bmul(self: adelie.adelie_core.matrix.MatrixNaiveBase32, arg0: int, arg1: int, arg2: numpy.ndarray[numpy.float32[1, n]], arg3: numpy.ndarray[numpy.float32[1, n]], arg4: numpy.ndarray[numpy.float32[1, n], flags.writeable]) None#
- Computes a column block matrix-vector multiplication. - Computes the matrix-vector multiplication - (v * w).T @ X[:, j:j+q].- Warning - This function is not thread-safe! - Parameters:
- jint
- Column index. 
- qint
- Number of columns. 
- v(n,) ndarray
- Vector to multiply with the block matrix. 
- w(n,) ndarray
- Vector of weights. 
- out(q,) ndarray
- Vector to store in-place the result. 
 
 
 - bmul_safe(self: adelie.adelie_core.matrix.MatrixNaiveBase32, arg0: int, arg1: int, arg2: numpy.ndarray[numpy.float32[1, n]], arg3: numpy.ndarray[numpy.float32[1, n]], arg4: numpy.ndarray[numpy.float32[1, n], flags.writeable]) None#
- Computes a column block matrix-vector multiplication. - Thread-safe version of - bmul().- Parameters:
- jint
- Column index. 
- qint
- Number of columns. 
- v(n,) ndarray
- Vector to multiply with the block matrix. 
- w(n,) ndarray
- Vector of weights. 
- out(q,) ndarray
- Vector to store in-place the result. 
 
 
 - btmul(self: adelie.adelie_core.matrix.MatrixNaiveBase32, arg0: int, arg1: int, arg2: numpy.ndarray[numpy.float32[1, n]], arg3: numpy.ndarray[numpy.float32[1, n], flags.writeable]) None#
- Computes a column block matrix transpose-vector multiplication increment. - Computes the matrix-vector multiplication - v.T @ X[:, j:j+q].T. The result is incremented into the output vector.- Warning - This function is not thread-safe! - Parameters:
- jint
- Column index. 
- qint
- Number of columns. 
- v(q,) ndarray
- Vector to multiply with the block matrix. 
- out(n,) ndarray
- Vector to increment in-place the result. 
 
 
 - cmul(self: adelie.adelie_core.matrix.MatrixNaiveBase32, arg0: int, arg1: numpy.ndarray[numpy.float32[1, n]], arg2: numpy.ndarray[numpy.float32[1, n]]) float#
- Computes a column vector-vector multiplication. - Computes the dot-product - (v * w).T @ X[:,j].- Warning - This function is not thread-safe! - Parameters:
- jint
- Column index. 
- v(n,) ndarray
- Vector to dot product with the - jth column.
- w(n,) ndarray
- Vector of weights. 
 
- Returns:
- dotfloat
- Column vector-vector multiplication. 
 
 
 - cmul_safe(self: adelie.adelie_core.matrix.MatrixNaiveBase32, arg0: int, arg1: numpy.ndarray[numpy.float32[1, n]], arg2: numpy.ndarray[numpy.float32[1, n]]) float#
- Computes a column vector-vector multiplication. - Thread-safe version of - cmul().- Parameters:
- jint
- Column index. 
- v(n,) ndarray
- Vector to dot product with the - jth column.
- w(n,) ndarray
- Vector of weights. 
 
- Returns:
- dotfloat
- Column vector-vector multiplication. 
 
 
 - cols(self: adelie.adelie_core.matrix.MatrixNaiveBase32) int#
- Returns the number of columns. - Returns:
- colsint
- Number of columns. 
 
 
 - cov(self: adelie.adelie_core.matrix.MatrixNaiveBase32, arg0: int, arg1: int, arg2: numpy.ndarray[numpy.float32[1, n]], arg3: numpy.ndarray[numpy.float32[m, n], flags.writeable, flags.f_contiguous]) None#
- Computes a weighted covariance matrix. - Computes the weighted covariance matrix - X[:, j:j+q].T @ W @ X[:, j:j+q].- This function is thread-safe. - Note - Although the name is “covariance”, we do not center the columns of - X!- Parameters:
- jint
- Column index. 
- qint
- Number of columns. 
- sqrt_weights(n,) ndarray
- Square-root of the weights. 
- out(q, q) ndarray
- Matrix to store in-place the result. 
 
 
 - ctmul(self: adelie.adelie_core.matrix.MatrixNaiveBase32, arg0: int, arg1: float, arg2: numpy.ndarray[numpy.float32[1, n], flags.writeable]) None#
- Computes a column vector-scalar multiplication increment. - Computes the vector-scalar multiplication - v * X[:,j]. The result is incremented into the output vector.- Warning - This function is not thread-safe! - Parameters:
- jint
- Column index. 
- vfloat
- Scalar to multiply with the - jth column.
- out(n,) ndarray
- Vector to increment in-place the result. 
 
 
 - mean(self: adelie.adelie_core.matrix.MatrixNaiveInteractionDense32C, arg0: numpy.ndarray[numpy.float32[1, n]], arg1: numpy.ndarray[numpy.float32[1, n], flags.writeable]) None#
- Computes the implied column means. - It is undefined for this matrix class and is only exposed for API consistency. - Parameters:
- weights(n,) ndarray
- Vector of weights. 
- out(p,) ndarray
- Vector to store in-place the result. 
 
 
 - mul(self: adelie.adelie_core.matrix.MatrixNaiveBase32, arg0: numpy.ndarray[numpy.float32[1, n]], arg1: numpy.ndarray[numpy.float32[1, n]], arg2: numpy.ndarray[numpy.float32[1, n], flags.writeable]) None#
- Computes a matrix-vector multiplication. - Computes the matrix-vector multiplication - (v * w).T @ X.- Parameters:
- v(n,) ndarray
- Vector to multiply with the matrix. 
- w(n,) ndarray
- Vector of weights. 
- out(p,) ndarray
- Vector to store in-place the result. 
 
 
 - rows(self: adelie.adelie_core.matrix.MatrixNaiveBase32) int#
- Returns the number of rows. - Returns:
- rowsint
- Number of rows. 
 
 
 - sp_tmul(self: adelie.adelie_core.matrix.MatrixNaiveBase32, arg0: scipy.sparse.csr_matrix[numpy.float32], arg1: numpy.ndarray[numpy.float32[m, n], flags.writeable, flags.c_contiguous]) None#
- Computes a matrix transpose-sparse matrix multiplication. - Computes the matrix transpose-sparse matrix multiplication - v.T @ X.T.- Parameters:
- v(L, p) csr_matrix
- Sparse matrix to multiply with the matrix. 
- out(L, n) ndarray
- Matrix to store in-place the result. 
 
 
 - sq_mul(self: adelie.adelie_core.matrix.MatrixNaiveBase32, arg0: numpy.ndarray[numpy.float32[1, n]], arg1: numpy.ndarray[numpy.float32[1, n], flags.writeable]) None#
- Computes a squared matrix-vector multiplication. - Computes the squared matrix-vector multiplication - w.T @ X ** 2.- Parameters:
- weights(n,) ndarray
- Vector of weights. 
- out(p,) ndarray
- Vector to store in-place the result. 
 
 
 - var(self: adelie.adelie_core.matrix.MatrixNaiveInteractionDense32C, arg0: numpy.ndarray[numpy.float32[1, n]], arg1: numpy.ndarray[numpy.float32[1, n]], arg2: numpy.ndarray[numpy.float32[1, n], flags.writeable]) None#
- Computes the implied column variances. - It is undefined for this matrix class and is only exposed for API consistency. - Parameters:
- centers(p,) ndarray
- Vector of centers. 
- weights(n,) ndarray
- Vector of weights. 
- out(p,) ndarray
- Vector to store in-place the result. 
 
 
 - group_sizes#
- List of group sizes corresponding to each element in - groups.- group_sizes[i]is the group size of the- ith group.
 - groups#
- List of starting indices to each group where G is the number of groups. - groups[i]is the starting index of the- ith group. The groups are naturally defined by- pairs. In the order of the rows of- pairs, we group all columns of the current matrix corresponding to each row of- pairs.
 - ndim#
- Number of dimensions. It is always - 2.
 - shape#
- Shape of the matrix.