Content deleted Content added
Wikipedia:Articles for deletion/Rybicki Press algorithm closed as no consensus |
LucasBrown (talk | contribs) Changing short description from "An algorithm for inverting a matrix" to "Algorithm for inverting a matrix" |
||
(38 intermediate revisions by 21 users not shown) | |||
Line 1:
{{Short description|Algorithm for inverting a matrix}}
{{Technical|date=August 2021}}
|last1 = Rybicki|first1 = George B.|last2 = Press|first2 = William H.|arxiv = comp-gas/9405004|doi = 10.1103/PhysRevLett.74.1060|journal = Physical Review Letters|page = 1060|title = Class of fast methods for processing Irregularly sampled or otherwise inhomogeneous one-dimensional data|volume = 74|year = 1995}} {{Open access}}</ref> It is a computational optimization of a general set of statistical methods developed to determine whether two noisy, irregularly sampled data sets are, in fact, dimensionally shifted representations of the same underlying function.<ref>{{Cite journal|url = |title = Interpolation, realization, and reconstruction of noisy, irregularly sampled data|last = Rybicki|first = George B.|date = October 1992|journal = The Astrophysical Journal|doi = 10.1086/171845|pmid = |access-date = 2015-07-24|last2 = Press|first2 = William H.}}{{Open access}}</ref><ref>{{Cite journal|url = |title = Quasar Selection Based on Photometric Variability|last = McLeod|first = C. L.|date = February 2011|journal = The Astrophysical Journal|doi = 10.1088/0004-637X/728/1/26|pmid = |access-date = 2015-07-24|last2 = et al.}}{{Open access}}</ref>{{Rp|2}} The most common use of the algorithm as of 2015 is in the detection of periodicity in astronomical observations.{{Citation needed|date = July 2015}}▼
[[File:Extended Sparse Matrix.png|thumb|Extended Sparse Matrix arising from a <math>10 \times 10</math> semi-separable matrix whose semi-separable rank is <math>4</math>]]
▲
The method has been extended to the '''Generalized Rybicki-Press algorithm''' for inverting matrices with entries of the form <math>A(i,j) = \sum_{k=1}^p a_k \exp(-\beta_k \vert t_i - t_j \vert)</math>.<ref name=":3">{{Cite journal|last=Ambikasaran|first=Sivaram|date=2015-12-01|title=Generalized Rybicki Press algorithm|journal=Numerical Linear Algebra with Applications|language=en|volume=22|issue=6|pages=1102–1114|doi=10.1002/nla.2003|issn=1099-1506|arxiv=1409.7852|s2cid=1627477}}</ref> The key observation in the Generalized Rybicki-Press (GRP) algorithm is that the matrix <math>A</math> is a [[semi-separable matrix]] with rank <math>p</math> (that is, a matrix whose upper half, not including the main diagonal, is that of some matrix with [[matrix rank]] <math>p</math> and whose lower half is also that of some possibly different rank <math>p</math> matrix<ref name=":3" />) and so can be embedded into a larger [[band matrix]] (see figure on the right), whose sparsity structure can be leveraged to reduce the computational complexity. As the matrix <math>A \in \mathbb{R}^{n\times n}</math> has a semi-separable rank of <math>p</math>, the [[computational complexity]] of solving the linear system <math>Ax=b</math> or of calculating the determinant of the matrix <math>A</math> scales as <math>\mathcal{O}\left(p^2n \right)</math>, thereby making it attractive for large matrices.<ref name=":3" />
The fact that matrix <math>A</math> is a semi-separable matrix also forms the basis for {{proper name|celerite}}<ref>{{Cite web|url=https://celerite.readthedocs.io/en/stable/|title=celerite — celerite 0.3.0 documentation|website=celerite.readthedocs.io|language=en|access-date=2018-04-05}}</ref> library, which is a library for fast and scalable [[Gaussian process regression]] in one dimension<ref name=":1">{{Cite journal|last1=Foreman-Mackey|first1=Daniel|last2=Agol|first2=Eric|last3=Ambikasaran|first3=Sivaram|last4=Angus|first4=Ruth|date=2017|title=Fast and Scalable Gaussian Process Modeling with Applications to Astronomical Time Series|url=http://stacks.iop.org/1538-3881/154/i=6/a=220|journal=The Astronomical Journal|language=en|volume=154|issue=6|pages=220|doi=10.3847/1538-3881/aa9332|issn=1538-3881|arxiv=1703.09710|bibcode=2017AJ....154..220F|s2cid=88521913 |doi-access=free }}</ref> with implementations in [[C++]], [[Python (programming language)|Python]], and [[Julia (programming language)|Julia]]. The {{proper name|celerite}} method<ref name=":1" /> also provides an algorithm for generating samples from a high-dimensional distribution. The method has found attractive applications in a wide range of fields,{{Which|date=October 2021}} especially in astronomical data analysis.<ref>{{Cite journal|last=Foreman-Mackey|first=Daniel|date=2018|title=Scalable Backpropagation for Gaussian Processes using Celerite|url=http://stacks.iop.org/2515-5172/2/i=1/a=31|journal=Research Notes of the AAS|language=en|volume=2|issue=1|pages=31|doi=10.3847/2515-5172/aaaf6c|issn=2515-5172|arxiv=1801.10156|bibcode=2018RNAAS...2...31F|s2cid=102481482 |doi-access=free }}</ref><ref>{{Cite book|title=Handbook of Exoplanets|last=Parviainen|first=Hannu|date=2018|publisher=Springer, Cham|isbn=9783319306483|pages=1–24|language=en|doi=10.1007/978-3-319-30648-3_149-1|chapter = Bayesian Methods for Exoplanet Science|arxiv = 1711.03329}}</ref>
==See also==
* [[Invertible matrix]]
* [[Matrix decomposition]]
* [[Multidimensional signal processing]]
* [[System of linear equations]]
==References==
{{Reflist}}
== External links ==
* [https://github.com/sivaramambikasaran/ESS Implementation of the Generalized Rybicki Press algorithm]
* [https://github.com/dfm/celerite celerite library on GitHub]
[[Category:Numerical linear algebra]]
|