Official Comment by Authors (2/2)
**RE: How does the proposed preconditioner handle matrices outside the tested conditions, particularly in real-world applications?**
The proposed preconditioner is learned separately for each matrix. The learning is based on a set of $(\mathbf{b},\mathbf{x})$ data pairs sampled from a distribution. The actual tested condition, $\mathbf{x}=\mathbf{1}$, does not come from this distribution. Hence, our evaluation can test out-of-distribution generalization.
For a new problem, one would train a preconditioner for it by sampling fresh $(\mathbf{b},\mathbf{x})$ data pairs consistent with the problem dimension.
Our tested problems come from SuiteSparse, which collects real-world matrices from numerous applications. For example, the HB collection, from which 30 matrices we tested, "stem from actual applications and exhibit numerical pathologies that arise in practice." [1] Testing 867 matrices from 50 applications in the experiments allows us to draw observations based on a large population. This is way more comprehensive than existing preconditioner papers that focus on one or two problems only.
Reference:
[1] I. S. Duff, Roger G. Grimes, and John G. Lewis. Sparse matrix test problems. ACM Trans. Math. Softw. 15(1), 1--14. 1989.
**RE: Could you elaborate on the training data generation process? How might biases in the training set affect the performance of the GNN?**
The training data is generated in a streaming fashion, meaning that it is not a finite dataset where a data point will be reused in each epoch. Each batch contains 16 $(\mathbf{b},\mathbf{x})$ pairs, where 8 of them have $\mathbf{x}$ generated from the standard normal and the rest of them have $\mathbf{x}$ generated from $\mathbf{V}_m\mathbf{Z}_m\mathbf{S}_m^{-1}\mathbf{\epsilon}$, with $\mathbf{\epsilon}$ being standard normal, $\mathbf{Z}_m$ and $\mathbf{S}_m$ from the SVD of $\overline{\mathbf{H}}_m$, and $\overline{\mathbf{H}}_m$ and $\mathbf{V}_m$ from the Arnoldi process. The Arnoldi process and the SVD are computed only once before all the batches. The vector $\mathbf{b}$ is computed as $\mathbf{A}\mathbf{x}$.
We are unsure what you meant by "biases in the training set". We do not introduce bias in the training data. Happy to elaborate further if you could clarify.
**RE: What are the implications of your findings for future research in preconditioning techniques, especially concerning adapting the GNN for a wider array of problems?**
Our findings reassert the folklore wisdom that there is not a one-size-fits-all preconditioner, especially when one moves beyond solving PDEs and enters the territories of data science and machine learning (for example, some of our test matrices come from statistical problems, graph problems, and optimization problems). Traditionally, practitioners choose the preconditioner for a particular problem by experience; trials and errors are an integral part of their work. Our preconditioner offers an additional choice to them. Our experiments suggest that a substantial portion of problems benefit from this choice.
We consider benchmarking to be an innovative contribution of this work, as there is rarely a preconditioner paper testing the proposed technique on a large number of problems and painting a full picture of its applicability. A benefit of large-scale benchmarking is that there is little room for problem-specific tuning. Hence, we offer default parameters, which a practitioner can try first. From there, the practitioner can tune the parameters and even the neural architecture for a particular problem.
For future research, we believe that split preconditioners, sequential fine-tuning, and distributed implementation are the imminent follow-up work, as laid out in the final section of the paper. These directions extend this work to problems that are SPD, that are time-varying, and that are exa-scale, respectively. The empirical success of our findings should also encourage the exploration of universal approximation of GNNs for matrix function (e.g., matrix inverse) times a vector.
Thank you again for your comments. Please let us know if the rebuttal and the update of the paper clear your concerns.