Toeplitz matrices arise naturally in machine learning whenever a stationary kernel is evaluated on equally spaced indices; one common example is the use of Gaussian processes to model time series data. Unfortunately, the usefulness of kernel methods involving Toeplitz matrices is limited by both the O(n^2) memory requirements and the O(n^3) runtime complexity of key matrix operations such as determinants and linear solves.
Toeblitz is a MATLAB/Octave package for operations on positive definite Toeplitz matrices. It uses existing findings from linear algebra to perform the following for any positive definite Toeplitz matrix T:
(i) solve Toeplitz systems Tx = b in O(n*log(n)) time and O(n) memory
(ii) compute Toeplitz matrix inverses T^(-1) (with free log determinant) in O(n^2) time and memory
(iii) compute Toeplitz log determinants (without inverses) in O(n^2) time and O(n) memory
(iv) compute traces of products A*T for any matrix A and a Toeplitz matrix T, in minimal O(n^2) time and memory.
- Changes to previous version:
Text edits for readability
No one has posted any comments yet. Perhaps you'd like to be the first?
Leave a comment
You must be logged in to post comments.