<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://stilljosh.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://stilljosh.github.io/" rel="alternate" type="text/html" /><updated>2026-10-30T17:57:00+00:00</updated><id>https://stilljosh.github.io/feed.xml</id><title type="html">Joshua Stiller</title><subtitle>Machine learning for PDEs and dynamical systems.</subtitle><entry><title type="html">OperatorSHAP: Shapley values for neural operators</title><link href="https://stilljosh.github.io/notes/2026/operatorshap/" rel="alternate" type="text/html" title="OperatorSHAP: Shapley values for neural operators" /><published>2026-10-29T00:00:00+00:00</published><updated>2026-10-29T00:00:00+00:00</updated><id>https://stilljosh.github.io/notes/2026/operatorshap</id><content type="html" xml:base="https://stilljosh.github.io/notes/2026/operatorshap/"><![CDATA[<p>I’ve noticed lately that I often trust our AI companions more than I trust my own ability to spot their mistakes. With every new generation of LLMs, I’m becoming less inclined to double-check their results. Still, I believe human oversight will remain important in certain domains of AI. One example is insurance premiums, which must not be influenced by racial biases hidden in names or residential areas. Another is predictions in low-data regimes, where models are less reliable, and human experts could avert problematic decisions.</p>

<p>The latter setting often arises in my field of research, neural operators: models that predict physical quantities in science and engineering. In this field, training samples are usually costly to obtain, but the ground truth is well understood from a theoretical perspective. This enables professionals to judge the quality of model predictions.</p>

<h2 id="explaining-models-with-shapley-values">Explaining models with Shapley values</h2>
<p>These judgements could be complemented by feature attributions, such as <em>Shapley values</em>. Shapley values attribute a model’s prediction to the input features. They satisfy a set of desirable properties and are widely established in the scientific community. However, they are usually too costly to compute and even approximation methods can be slow when the number of features is large.</p>

<p>When we want to explain multiple samples, amortization methods can shift the computational load from inference to training. One such method, FastSHAP (<a href="https://arxiv.org/abs/2107.07436">Jethani et al., 2022</a>), trains a neural network to predict Shapley values, resulting in quick attributions for any new sample. Unfortunately, FastSHAP requires homogeneous inputs with the same set of features across the training set, and physical data usually lives on a continuous domain that is discretized on meshes that may differ from input to input.</p>

<figure class="viz" id="viz-meshes">
<figcaption>Four samples of a flow around an obstacle in the channel $\Omega = [0,2]\times[0,1]$. The obstacle has a different position and size in each sample. The mesh generator places nodes on the obstacle boundary and refines the mesh around it, so every sample has a distinct mesh. All samples share the domain $\Omega$. Colors show an illustrative flow speed.</figcaption>
</figure>

<p>For amortization to work, we need a shared property that we can generalize over. In this paper, we choose the underlying physical domain \(\Omega \subset \mathbb{R}^d\), which is a connected subset of the \(1\)-, \(2\)-, or \(3\)-dimensional space and is often shared by all samples of a dataset. The main obstacle is that Shapley values are defined only for finitely many players, whereas our region \(\Omega\) consists of infinitely many points.</p>

<h2 id="infinite-player-aumann-shapley-values">Infinite-player Aumann-Shapley values</h2>
<p>The solution lies in Aumann-Shapley values. Introduced in 1974 (<a href="#references">Aumann &amp; Shapley, 1974</a>), they generalize Shapley values to infinitely many players. They still cannot give distinct attributions for every single point in our domain, but they allow each of the infinite players to contribute via a finite set of measures to the model prediction (which we call a <em>game</em>). This makes the attribution problem tractable. Moreover, for a game \(\nu(S)\), which assigns a payoff to each coalition \(S\), they yield a value \(\varphi\) that distributes this payoff over the players while preserving some of the Shapley properties.</p>

<p>To formalize this, let \((\Omega, \mathcal{C}, \boldsymbol{\mu})\) be a measure space, where \(S \in \mathcal{C}\) denotes a region in \(\Omega\) and defines a <em>coalition</em>. Typically, we want to model some physical property, which at a time \(t\) assigns a value to each location \(x\in \Omega\) via \(u: \Omega\times[0, \infty)\rightarrow \mathbb{R}\). For example, in the heat equation, \(u(x, t)\) is the temperature at location \(x\in \Omega\) and time \(t\). We want an AI model \(\hat{\mathcal{F}}\) to approximate \(u(x,t)\), usually using the true state \(u(x,t)\) as input to predict \(\hat{\mathcal{F}}(u(x,t))(x) \approx u(x,t+1)\). In practice, we work with a discretized version of \(u(x,t)\), i.e., a vector of evaluations of \(u(x,t)\) at specific locations. We denote this vector by \(\mathbf{u}_{t}\).</p>

<figure class="viz" id="viz-heat">
<figcaption>The heat equation $\partial_t u = \nu\, \partial_{xx} u$ on $\Omega = [0,1]$ with $u = 0$ at both ends. Left: the state $u(x,t)$, the model input $u(x,t-1)$ and the model prediction $\hat{\mathcal{F}}(u(x,t-1)) \approx u(x,t)$. Right: the same on a mesh of 26 nodes, i.e., the vectors $\mathbf{u}_{t-1}$, $\mathbf{u}_t$ and the prediction at the nodes. Each new sample draws a random initial temperature.</figcaption>
</figure>

<p>Now, we will explain the model’s predictions. In our Aumann-Shapley case, this means we will identify areas in \(\Omega\) that contributed positively or negatively to the prediction (relative to a baseline value). Concretely, we pick a location \(\hat{x}\in \Omega\), look at the prediction at that point \(\hat{\mathcal{F}}_{\hat{x}}(u(x,t)) := \hat{\mathcal{F}}(u(x,t))(\hat{x})\) compared to a baseline \(\hat{\mathcal{F}}_{\hat{x}}(\bar{u}(x,t))\) (e.g., \(\bar{u}(x,t)\equiv 0\)) and attribute that difference to the input areas. For the heat equation, we would then end up with an attribution plot like the following.</p>

<figure class="viz" id="viz-attr">
<figcaption>Left: an input $u$, the baseline $\bar{u} \equiv 0$ and the predictions $\hat{\mathcal{F}}(u)$ and $\hat{\mathcal{F}}(\bar{u})$ of the model from above. The vertical line at $\hat{x}$ is the difference $\Delta = \hat{\mathcal{F}}_{\hat{x}}(u) - \hat{\mathcal{F}}_{\hat{x}}(\bar{u})$ that the attribution explains. Right: the attribution $\varphi(x)$ of the prediction at $\hat{x}$. Red areas raise the prediction, blue areas lower it. Its integral over $\Omega$ equals $\Delta$. We can see that only the points close to $\hat{x}$ influence the prediction at $\hat{x}$, which is typical for the heat equation.</figcaption>
</figure>

<p>To show that our attributions are actually meaningful (i.e., that they satisfy similar properties to those of Shapley values), we build on Aumann-Shapley theory. They show that if our game has the form \(\nu(S)=f(\mu_{1}(S), \dots, \mu_{n}(S))\), where \(f\) is continuously differentiable, \(f(0)=0\), and \(\mu_{i}\) are measures, then there exists a value with the desired properties. Hence, our task is to create such a game for neural operators. Then, we know that a value for the game exists and can proceed to learn it from data.</p>

<p>To design our game, we need the following:</p>
<ol>
  <li>The game should represent how a prediction changes depending on the input.</li>
  <li>We should be able to specify any region \(S\subset \Omega\) and determine how it affects the output.</li>
  <li>It needs to satisfy the Aumann-Shapley criteria, in particular, \(f\) must be continuously differentiable.</li>
</ol>

<p>We choose \(f\) to be the neural operator that we want to explain (minus a baseline constant). For \(f\) to be continuously differentiable, both its activations and its input need to be sufficiently smooth.<sup id="fnref:diff" role="doc-noteref"><a href="#fn:diff" class="footnote" rel="footnote">1</a></sup> To isolate the effect of an area \(S\), we will design the input to take the value \(u(x,t)\) on \(S\) and a baseline value \(\bar{u}(x,t)\) elsewhere. As this constructed input needs to be smooth as well, we interpolate smoothly between \(S\) and \(\Omega\setminus S\), using bump functions \(\eta_{i}\) that partition the domain \(\Omega\). Concretely, for \(m&gt;0\), we define our game as</p>

\[\begin{aligned}
\nu(S) &amp;= \hat{\mathcal{F}}_{\hat{x}}(\mathbf{u}^{S}_{t}) - \hat{\mathcal{F}}_{\hat{x}}(\bar{\mathbf{u}}_{t}), \\
\mathbf{u}^{S}_{t} &amp;:= \bar{\mathbf{u}}_{t} + \sum_{i=1}^{m} \mu_{i}(S)\, \eta_{i}\, (\mathbf{u}_{t} - \bar{\mathbf{u}}_{t}),
\end{aligned}\]

<p>where \(\mu_{i}(S)\) is the share of the mesh nodes under \(\eta_{i}\) that belong to \(S\). The following visualization constructs a game from start to finish.</p>

<figure class="viz" id="viz-game">
<figcaption>Construction of the game for 16 mesh nodes $x_1, \dots, x_{16}$ and $m$ masks. (1) The smooth masks $\eta_i$ sum to one on $\Omega,$ and each covers the cells of consecutive nodes. (2) $\mu_i(S)$ is the share of the nodes under $\eta_i$ that belong to $S$ (filled). (3) The input $u$ and the baseline $\bar{u} \equiv 0$. (4) The game input $\bar{u} + \sum_i \mu_i(S)\,\eta_i\,(u - \bar{u})$. It equals $u$ under masks that lie fully in $S$ and $\bar{u}$ under masks outside of $S$. Click a node to add it to or remove it from $S$.</figcaption>
</figure>

<h2 id="the-operatorshap-algorithm">The OperatorSHAP algorithm</h2>

<p>Equipped with a game that guarantees an Aumann-Shapley value, we can proceed to learn an amortized model for the value. The training procedure will closely follow FastSHAP:</p>
<ol>
  <li>Sample \(\mathbf{u}_{t}\) from the dataset (which is represented on a mesh), a subset of the mesh nodes \(S\), and a location \(\hat{x}\in \Omega\) for the prediction we want to explain.</li>
  <li>Partition the domain into disjoint cells, each containing one mesh node (e.g., with Voronoi cells).</li>
  <li>Create a masked input \(\mathbf{u}^{S}_{t}\) as described above and calculate the game value \(\hat{\mathcal{F}}_{\hat{x}}(\mathbf{u}^{S}_{t}) - \hat{\mathcal{F}}_{\hat{x}}(\bar{\mathbf{u}}_{t})\) at location \(\hat{x}\).</li>
  <li>Let the explainer model predict an attribution field \(\hat{\varphi}(x,t)\) for the point \(\hat{x}\).</li>
  <li>Integrate \(\hat{\varphi}(x,t)\) over the cells from step 2 that contain a mesh node from \(S\) and measure the difference to the game value from step 3.</li>
  <li>Update the explainer model with the loss from step 5 and iterate.</li>
</ol>

<figure class="viz" id="viz-train">
<figcaption>Training the explainer, one iteration per step. Steps 1–2: a new input, a new random mesh of 6 to 12 nodes $x_1, \dots, x_n$ (shown on the zero line), a random coalition $S$ (filled nodes), a location $\hat{x}$, and the Voronoi cells of the nodes. Step 3: the masked input $\mathbf{u}^S_t$, the model predictions $\hat{\mathcal{F}}(\mathbf{u}^S_t)$ and $\hat{\mathcal{F}}(\bar{\mathbf{u}}_t)$, and the model value $\nu(S) = \hat{\mathcal{F}}_{\hat{x}}(\mathbf{u}^S_t) - \hat{\mathcal{F}}_{\hat{x}}(\bar{\mathbf{u}}_t)$ as the vertical line at $\hat{x}$. Steps 4–5: the explainer's attribution $\hat{\varphi}$ and its integral over the cells of $S$ (shaded), compared to the model value. The dashed line is the exact attribution from above. Step 6: the loss of the current iteration written out, and the loss over iterations. The explainer used here is small: $\hat{\varphi}(x) = u(x)\, k_\theta(x - \hat{x})$, with a kernel $k_\theta$ given by 101 values and trained with Adam. OperatorSHAP uses a neural operator as the explainer.</figcaption>
</figure>

<h2 id="conclusion">Conclusion</h2>

<p>After the training, we have a model that can predict an attribution map over arbitrary input fields \(u(x,t)\), and we can calculate values for coalitions \(S\) by integrating the attribution field over the respective area. In the paper, we include additional engineering tricks that can improve predictive performance. Many other techniques can surely be adapted from the discrete Shapley literature to get even better results. We can also explain other quantities of the model, including, empirically, non-differentiable readouts. In a follow-up work, we extend OperatorSHAP to capture interactions between regions of the domain. We believe that many other results from the discrete Shapley literature can likewise be transferred to the functional setting of OperatorSHAP.</p>

<h2 id="references">References</h2>

<ul>
  <li>Aumann, R. J., &amp; Shapley, L. S. (1974). <em>Values of Non-Atomic Games</em>. Princeton University Press.</li>
  <li>Jethani, N., Sudarshan, M., Covert, I., Lee, S.-I., &amp; Ranganath, R. (2022). <a href="https://arxiv.org/abs/2107.07436">FastSHAP: Real-time Shapley value estimation</a>. <em>ICLR</em>.</li>
</ul>

<script src="/assets/js/viz.js" defer=""></script>

<script src="/assets/js/shap-figures.js" defer=""></script>

<div class="footnotes" role="doc-endnotes">
  <ol>
    <li id="fn:diff" role="doc-endnote">
      <p>We define \(f\) in function space, as this reflects PDE theory best. There, differentiability is more involved than on finite-dimensional spaces. Details can be found in the paper. <a href="#fnref:diff" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
  </ol>
</div>]]></content><author><name></name></author><summary type="html"><![CDATA[Fast and accurate Shapley value estimation for neural operators.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://stilljosh.github.io/assets/img/profile.jpg" /><media:content medium="image" url="https://stilljosh.github.io/assets/img/profile.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry><title type="html">Conformal prediction for time-dependent PDEs</title><link href="https://stilljosh.github.io/notes/2026/conformal-prediction-pdes/" rel="alternate" type="text/html" title="Conformal prediction for time-dependent PDEs" /><published>2026-10-19T00:00:00+00:00</published><updated>2026-10-19T00:00:00+00:00</updated><id>https://stilljosh.github.io/notes/2026/conformal-prediction-pdes</id><content type="html" xml:base="https://stilljosh.github.io/notes/2026/conformal-prediction-pdes/"><![CDATA[<p>Conformal prediction (CP) is a neat method to get guarantees about a model’s prediction. Its simplicity made it one of the hottest topics in ML in recent years. With dozens of papers in top-rated venues, it has seemingly been applied in every way possible, extending even beyond its original scope. Where, initially, it was targeted at problems where the test distribution follows the training distribution<sup id="fnref:exch" role="doc-noteref"><a href="#fn:exch" class="footnote" rel="footnote">1</a></sup>, modern variants allow applications even to datasets with distribution shifts, like time series.</p>

<p>In time series, the distribution may change arbitrarily over time and a deployed model can suddenly produce arbitrarily bad predictions, not hedgeable by anything we know from the training time. While this violates the assumptions of (classic) CP, there are multiple extensions that either relax its implications, e.g., by guaranteeing coverage only on average over an infinite time frame (see Adaptive Conformal Prediction, <a href="https://proceedings.neurips.cc/paper_files/paper/2021/file/0d441de75945e5acbc865406fc9a2559-Paper.pdf">Gibbs &amp; Candès, 2021</a>), or by increasing the prerequisites, e.g., through knowledge about the time series (<a href="http://jmlr.org/papers/v25/23-1553.html">Oliveira et al., 2024</a>), the error of the model (<a href="https://proceedings.neurips.cc/paper_files/paper/2023/file/aef75887979ae1287b5deb54a1e3cbda-Paper-Conference.pdf">Auer et al., 2023</a>), or the distributional change (<a href="https://doi.org/10.1214/23-AOS2276">Barber et al., 2023</a>).</p>

<p>Personally, I do not see CP being used in life-or-death situations where minor deviations from the coverage guarantees could be critical. Therefore, due to its simplicity, I find Adaptive Conformal Prediction and its variants to be the most reasonable choice for time series applications. Nonetheless, the problem sparked our curiosity. Our field of study, partial differential equations (PDEs), which describe physical processes, is full of time series with additional structure and offers a plethora of mathematical tools to analyze their behavior.</p>

<h2 id="a-simple-pde-example">A Simple PDE Example</h2>

<p>For this article, it suffices to view PDEs as a time series on a continuous domain. For example, consider functions \(u(x,t): [0,1] \times [0, \infty) \rightarrow \mathbb{R}\) that have values at a point in time and space. Here, space is represented by the interval from $0$ to $1$ and time by the interval from $0$ to $\infty$. In practice, we rarely work with the full continuous function. Instead, functions are discretized in time and space. We will then write \(\mathbf{u}^t:=\left( u(0,t), u(\frac{1}{10},t), \dots, u(1,t) \right)\). This dichotomy raised one of our initial questions: Are there any differences between CP on the functional and the discrete form?</p>

<p>We will visualize some results using the heat equation. The heat equation is one of the simplest PDEs and describes how heat spreads on an object over time. Essentially, every point gets either hotter or colder, depending on the temperature difference to its surrounding area. The visualization below shows how the time series evolves for the functional and the discrete form, depending on the initial temperature distribution.</p>

<figure class="viz" id="viz-heat">
<figcaption>The heat equation $\partial_t u = \nu\, \partial_{xx} u$ with $u = 0$ at both ends. Left: the function $u(\cdot, t)$, with the initial temperature in grey. Right: the vector $\mathbf{u}^t$ on 11 grid points, observed only at integer times. Earlier time steps are shown faded. Each new sample draws a random initial temperature.</figcaption>
</figure>

<h2 id="conformal-prediction-on-pdes">Conformal Prediction on PDEs</h2>

<p>Suppose we observe the temperature of the object at some time \(t\) and want to predict it for some future time \(t+1\). Additionally, we would like to know how certain the model is in its prediction. This (un-)certainty is usually represented by a probability distribution over the possible predictions.</p>

<p>Now, in Conformal Prediction, we train our model and then estimate the error distribution on a held-out calibration set. We can use a sufficiently large quantile of the errors to construct <em>prediction bands</em>. If the test data follows the same distribution as the calibration data, we even get probabilistic guarantees that the true test value falls into the constructed bands.</p>

<p>Unfortunately, in time series, the data distribution may shift between calibration and test time, and with it the error distribution of our model. Thus, our guarantees vanish. Non-exchangeable CP (<a href="https://doi.org/10.1214/23-AOS2276">Barber et al., 2023</a>), an extension of classical CP, prices this shift into our prediction bands. Depending on the total variation (TV) distance between calibration and test distributions, they widen the bands until they have recovered the probabilistic guarantees. However, if the TV distance gets too large, the resulting prediction bands will cover the whole prediction space and therefore become uninformative. The animation below shows the TV distance for two Gaussian distributions and how we have to adjust our prediction bands depending on their shift.</p>

<figure class="viz" id="viz-tv">
<figcaption>Left: calibration distribution $\mathcal{N}(0,1)$ and test distribution $\mathcal{N}(\mu,1)$. The shaded area equals their TV distance. Right: a prediction with its 90% conformal band. The orange part is the widening needed to cover the test distribution, using the $(90\% + 2\,\mathrm{TV})$ quantile of the calibration errors. At 100% and above, the band is infinite.</figcaption>
</figure>

<h2 id="a-function-space-perspective">A Function Space Perspective</h2>

<p>In the paper, we first investigate the TV distance in a function space setting. For this, we use the heat equation and assume the initial temperature along a 1D line segment is Gaussian<sup id="fnref:gauss" role="doc-noteref"><a href="#fn:gauss" class="footnote" rel="footnote">2</a></sup>. Our theorem shows that for any evolution time \(t&gt;0\), no matter how small, the TV distance between the initial and the final temperature distribution is always \(1\). This implies that even if our calibration and test time points are just an \(\varepsilon\) apart, we cannot apply (non-exchangeable) CP on them. This is because calibration and test distributions live on an infinite-dimensional (function) space. Thus, tiny changes accumulate over the infinite dimensions to result in mutually singular distributions. While we show this only on one example with the heat equation, this is a common behavior of distributions on function spaces.</p>

<figure class="viz" id="viz-singular">
<figcaption>The heat equation $\partial_t u = \partial_{xx} u$ with the Gaussian initial distribution from our theorem, discretized on $p$ grid points. Each grid point adds one independent Fourier mode. Left: how much the variance of each mode shrinks between time $t$ and $t+\delta$. High modes decay fastest, so their variances differ most. Right: the TV distance between the distributions at $t$ and $t+\delta$, estimated from 2000 samples. It approaches $1$ as $p$ grows, for any $\delta &gt; 0$. The function space corresponds to $p \to \infty$.</figcaption>
</figure>

<h2 id="a-vector-space-perspective">A Vector Space Perspective</h2>

<p>While this result undermines the success of CP on functional data, it has little effect in practice. There, we usually work with a discretized version of a function, i.e., a finite-dimensional vector. And indeed, starting with an initial temperature vector from a finite-dimensional Gaussian, the TV distance between any two time points will always be strictly smaller than \(1\) (except in degenerate cases). Further, if we take a small enough time step, our CP prediction bands will even be bounded, providing useful guarantees.</p>

<p>In the paper, we provide a more general proposition. We can construct prediction bands for any linear PDE when the family of the initial distribution is closed under affine transformations (e.g., Gaussian, Cauchy, Laplace, and more). We use the algorithm from <a href="https://proceedings.neurips.cc/paper_files/paper/2019/file/8fb21ee7a2207526da55a679f0332de2-Paper.pdf">Tibshirani et al. (2019)</a>, which constructs the CP bands from the likelihood ratio between test and calibration densities. If the likelihood ratio of a test sample exceeds a certain threshold, prediction bands become infinitely wide and coverage is trivial. In general, this preserves the target coverage of the test samples over time, until all test samples get infinite bands. In practice, we would estimate the mean and covariance needed for the likelihood ratio from the data.</p>

<figure class="viz" id="viz-wcp">
<figcaption>Weighted conformal prediction with calibration distribution $\mathcal{N}(0,1)$ and test distribution $\mathcal{N}(1.5,1)$. Left: 200 calibration points (ticks, height proportional to their weight) and the test point. Each point is weighted by the likelihood ratio $p_{\mathrm{test}}/p_{\mathrm{cal}}$. Right: the prediction for the test point with its weighted 90% band. The dashed lines mark the unweighted band. Once the test point's normalized weight exceeds $\alpha = 0.1$, the band is infinite.</figcaption>
</figure>

<p>In the infinite-dimensional setting, we found that even arbitrarily small time shifts result in a TV distance of $1$. In finite dimensions, however, the TV distance is usually strictly smaller than $1$. We wanted to investigate if there is a natural connection between higher dimensionality, meaning larger grid sizes of the data, and TV distance. Indeed, it is not dimensionality itself that is driving this behavior. For a simple PDE that shifts in mean at a constant pace, we show that the drift direction relative to the covariance of the initial distribution is the deciding factor. As dimensionality implicitly affects this, we can mitigate the CP degeneration by restricting our prediction to a subset of our dimensions. To be precise, the prediction of our model can still use the full data space as input, but we need to carefully select the dimensions for which we want prediction bands (our paper shows some examples).</p>

<figure class="viz" id="viz-drift">
<figcaption>A drift in two dimensions $(u_1, u_2)$ with correlated Gaussian initial distribution. Left: calibration (green) and test (orange) distribution. Drag the test distribution or use the sliders. Ellipses mark one and two standard deviations. Right: TV distance when we want bands for both coordinates and for $u_1$ only. A drift along the wide axis of the covariance costs little. A drift along the narrow axis costs much. Restricting to $u_1$ never increases the TV distance.</figcaption>
</figure>

<h2 id="conclusion">Conclusion</h2>

<p>In conclusion, we have shown that on a function space, non-exchangeable CP will usually fail, while in discrete space, we can get robust prediction bands for linear PDEs by simply estimating the mean and covariance of the data. However, in that restricted setting, there are usually more straightforward methods to achieve accurate predictions and uncertainty bands. Our contribution should be viewed as theoretical, and we hope to inspire future work investigating different properties of PDEs and certain subclasses of PDEs that could unlock non-exchangeable CP in that setting.</p>

<h2 id="references">References</h2>

<ul>
  <li>Auer, A., Gauch, M., Klotz, D., &amp; Hochreiter, S. (2023). <a href="https://proceedings.neurips.cc/paper_files/paper/2023/file/aef75887979ae1287b5deb54a1e3cbda-Paper-Conference.pdf">Conformal prediction for time series with modern Hopfield networks</a>. <em>NeurIPS</em>.</li>
  <li>Barber, R. F., Candès, E. J., Ramdas, A., &amp; Tibshirani, R. J. (2023). <a href="https://doi.org/10.1214/23-AOS2276">Conformal prediction beyond exchangeability</a>. <em>The Annals of Statistics</em>, 51(2).</li>
  <li>Gibbs, I., &amp; Candès, E. (2021). <a href="https://proceedings.neurips.cc/paper_files/paper/2021/file/0d441de75945e5acbc865406fc9a2559-Paper.pdf">Adaptive conformal inference under distribution shift</a>. <em>NeurIPS</em>.</li>
  <li>Oliveira, R. I., Orenstein, P., Ramos, T., &amp; Romano, J. V. (2024). <a href="http://jmlr.org/papers/v25/23-1553.html">Split conformal prediction and non-exchangeable data</a>. <em>JMLR</em>, 25.</li>
  <li>Tibshirani, R. J., Barber, R. F., Candès, E., &amp; Ramdas, A. (2019). <a href="https://proceedings.neurips.cc/paper_files/paper/2019/file/8fb21ee7a2207526da55a679f0332de2-Paper.pdf">Conformal prediction under covariate shift</a>. <em>NeurIPS</em>.</li>
</ul>

<script src="/assets/js/viz.js" defer=""></script>

<script src="/assets/js/cp-figures.js" defer=""></script>

<div class="footnotes" role="doc-endnotes">
  <ol>
    <li id="fn:exch" role="doc-endnote">
      <p>Throughout the article, I will circumvent precise notions like exchangeability to prioritize readability over exactness. <a href="#fnref:exch" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
    <li id="fn:gauss" role="doc-endnote">
      <p>In particular, we assume a Gaussian distribution on a function space, which is a bit more complicated than “normal” Gaussian distributions. For this demonstration, it suffices to imagine that we randomly pick a somewhat smooth function fluctuating around 0. <a href="#fnref:gauss" class="reversefootnote" role="doc-backlink">&#8617;</a></p>
    </li>
  </ol>
</div>]]></content><author><name></name></author><summary type="html"><![CDATA[Why non-exchangeable conformal prediction fails on function spaces, and when it works on discretized linear PDEs.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://stilljosh.github.io/assets/img/profile.jpg" /><media:content medium="image" url="https://stilljosh.github.io/assets/img/profile.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>