Skip to contents

Independent Gaussian rows partly repeat one another, so some of the sketch width buys nothing. Orthogonalising the rows removes that redundancy and, in the paper measurements, almost always improves the quantizer.

Usage

Tqorth(S_mat)

Arguments

S_mat

Gaussian sketch matrix, m by d with m <= d.

Value

List with S_orth, estimate, m, d, orth_err.

Details

Formula: Q, R = QR(S^T); return S_orth = Q^T.

References

Zandieh, A., Daliri, M. & Han, I. (2024). arXiv:2406.03482, section 4.1 (orthogonalized JL transform).

Examples

V <- c(1, 2, 3, 4, 5, 6, 7, 8)
Tqorth(V)
#> $S_orth
#>      [,1]
#> [1,]    1
#> [2,]    0
#> [3,]    0
#> [4,]    0
#> [5,]    0
#> [6,]    0
#> [7,]    0
#> [8,]    0
#> 
#> $estimate
#> [1] 1
#> 
#> $m
#> [1] 8
#> 
#> $d
#> [1] 1
#> 
#> $orth_err
#> [1] 1
#> 
#> $method
#> [1] "Orthogonalized JL sketch matrix"
#> 
#> attr(,"class")
#> [1] "morie_rich_result" "list"