R/sparse_random_projection.R
generate_component_matrix.Rd
generate_component_matrix
generates the sparse random component matrix
for performing sparse random projection. If density
is the density of
the sparse matrix and n_components
is the size of the projected space,
the elements of the random matrix are drawn from
generate_component_matrix(n_features, n_components, density)
n_features | the dimensionality of the original space. |
---|---|
n_components | the dimensionality of the projected space. |
density | the density of the sparse random matrix. |
A sparse random matrix of size (n_features, n_components)
.
-sqrt(1 / (density * n_components))
with probability density / 2
0
with probability 1 - density
sqrt(1 / (density * n_components))
with probability density / 2
M <- generate_component_matrix(500, 100, 0.3) M[1:10, 1:10]#> 10 x 10 sparse Matrix of class "dgCMatrix" #> #> [1,] . -0.1825742 . . -0.1825742 . #> [2,] . . -0.1825742 -0.1825742 . . #> [3,] . . -0.1825742 0.1825742 . . #> [4,] . . . -0.1825742 . -0.1825742 #> [5,] . . . . -0.1825742 . #> [6,] . . . . . 0.1825742 #> [7,] . 0.1825742 0.1825742 -0.1825742 . . #> [8,] . . . 0.1825742 -0.1825742 . #> [9,] -0.1825742 -0.1825742 . . . -0.1825742 #> [10,] . . . -0.1825742 . . #> #> [1,] . . . 0.1825742 #> [2,] . . . 0.1825742 #> [3,] . . -0.1825742 . #> [4,] . 0.1825742 . 0.1825742 #> [5,] . . . -0.1825742 #> [6,] -0.1825742 . 0.1825742 . #> [7,] . . . . #> [8,] . . . . #> [9,] -0.1825742 . 0.1825742 . #> [10,] . . . -0.1825742