Скачать книгу

bold-italic b tilde Normal Subscript upper P Baseline left-parenthesis bold upper X Superscript intercalate Baseline bold upper Omega bold y comma bold upper Phi right-parenthesis by first generating bold-italic z tilde Normal Subscript upper P Baseline left-parenthesis bold 0 comma bold-italic upper I Subscript upper P Baseline right-parenthesis and bold-italic zeta tilde Normal Subscript upper N Baseline left-parenthesis bold 0 comma bold-italic upper I Subscript upper N Baseline right-parenthesis and then setting bold-italic b equals bold upper X Superscript intercalate Baseline bold upper Omega bold y plus bold upper X Superscript intercalate Baseline bold upper Omega Superscript 1 slash 2 Baseline bold-italic zeta plus tau Superscript negative 1 Baseline bold upper Lamda Superscript negative 1 Baseline bold-italic z and (ii) subsequently solving bold upper Phi bold-italic theta equals bold-italic b yields a sample bold-italic theta from the distribution (4). The authors then observe that the mechanism through which a shrinkage prior induces sparsity of theta Subscript ps also induces a tight clustering of eigenvalues in the prior‐preconditioned matrix tau squared bold upper Lamda bold upper Phi bold upper Lamda. This fact makes it possible for prior‐preconditioned CG to solve the system bold upper Phi bold-italic theta equals bold-italic b in upper K matrix–vector operations of form bold-italic v right-arrow bold upper Phi bold-italic v, where upper K roughly represents the number of significant theta Subscript ps that are distinguishable from zeros under the posterior. For bold upper Phi having a structure as in (4), bold upper Phi bold-italic v can be computed via matrix–vector multiplications of form bold-italic v right-arrow bold upper X bold-italic v and bold-italic w right-arrow bold upper X Superscript intercalate Baseline bold-italic w, so each bold-italic v right-arrow bold upper Phi bold-italic v operation requires a fraction of the computational cost of directly computing bold upper Phi and then factorizing it.

      Prior‐preconditioned CG demonstrates an order of magnitude speedup in posterior computation when applied to a comparative effectiveness study of atrial fibrillation treatment involving upper N equals 72 489 patients and upper P equals 22 175 covariates [57]. Though unexplored in their work, the algorithm's heavy use of matrix–vector multiplications provides avenues for further acceleration. Technically, the algorithm's complexity may be characterized as script í’ª left-parenthesis upper N upper P upper K right-parenthesis, for the upper K matrix–vector multiplications by bold upper X and bold upper X Superscript intercalate, but the theoretical complexity is only a part of the story. Matrix–vector multiplications are amenable to a variety of hardware optimizations, which in practice can make orders of magnitude difference in speed (Section 4.2). In fact, given how arduous manually optimizing computational bottlenecks can be, designing algorithms so as to take advantage of common routines (as those in Level 3 BLAS) and their ready‐optimized implementations has been recognized as an effective principle in algorithm design [65].

      3.2 Phylogenetic Reconstruction

      The previous three Core Challenges are usually interwound such that the increase in the sample size (big N) and the number of traits (big P) for each sample usually happen simultaneously and lead to increased heterogeneity that requires more complex models (big M). For example, recent studies in viral evolution have seen a continuing increase in the sample size that the West Nile virus, Dengue, HIV, and Ebola virus studies involve 104, 352, 465, and 1610 sequences [68–71], and the GISAID database has collected 92 000 COVID‐19 genomic sequences by the end of August 2020 [72].

      To accommodate the increasing size and heterogeneity in the data and be able to apply the aforementioned efficient gradient‐based algorithms, Ji et al. [73] propose a linear‐time algorithm for calculating an upper O left-parenthesis upper N right-parenthesis‐dimensional gradient on a tree w.r.t. the sequence evolution. The linear‐time gradient algorithm calculates each branch‐specific derivative through a preorder traversal that complements the postorder traversal from the likelihood calculation of the observed sequence data at the tip of the phylogeny by marginalizing over all possible hidden states on the internal nodes. The pre‐ and postorder traversals complete the Baum's forward–backward algorithm in a phylogenetic framework [74]. The authors then apply the gradient algorithm with HMC (Section 2.2) samplers to learn the branch‐specific viral evolutionary rates.