Skip to main content
Reading viewAll insights →
BLOG6 min read

Implicit Neural Fields for 3-D Anisotropic Velocity Models

Implicit Neural Fields for 3-D Anisotropic Velocity Models
Tannistha Maitiby Tannistha MaitiCo-founder & Head of Engineering · 29 Oct 2026
Share

A velocity model stored as the weights of a coordinate network is continuous, compact and differentiable, which removes three problems that voxel grids create. It also changes where the uncertainty hides. A queried slice looks equally solid whether the value came from your data or from the network's own smoothness prior, and the parameterisation sharp enough to hold a Moho is the one that reaches least far from its constraints.

A seismic velocity model is almost always a voxel grid or a spline mesh, and that choice carries three costs that have nothing to do with the geology. Resolution is fixed at inversion time. Querying between nodes requires interpolation, which invents structure that no datum supports. Memory scales with the cube of resolution, which is what makes fine 3-D models expensive to hold at all.

An implicit neural representation removes all three by changing what is stored. A coordinate network f(x, y, z) returning local Vs holds the model as weights rather than as values on a lattice [1,2]. The model becomes continuous, so any point at any scale is one forward pass. Storage becomes the weight count, independent of the resolution anyone later queries at. And because the field is differentiable, sensitivity kernels come from automatic differentiation exactly, instead of from finite-difference bookkeeping around a grid.

What the representation actually changes

Three properties follow from the swap, and they are worth separating because only the first is about compression.

A ray can be sampled anywhere along its path without interpolating between stored voxels, because there are no voxels. Rendering a depth slice is a batch of forward passes on a plane of coordinates. The gradients needed for gradient-based tomography, both the spatial derivatives of Vs and the derivatives of the data misfit with respect to the weights, are autograd outputs of the same object.

Anisotropy fits this shape naturally. Extra output heads carry the additional parameters, whether Thomsen-style ε, δ and γ [4] or the orientation of a hexagonal symmetry axis, so one continuous object holds the whole 3-D anisotropic model rather than a stack of co-registered grids that have to be kept consistent by hand.

The bandwidth to represent a sharp gradient, a Moho or a lithosphere-asthenosphere boundary, is not automatic. It comes from positional encoding [3] or from periodic activations [2], and that choice turns out to carry a cost that is not usually stated alongside it.

Two purchases that are easy to confuse

Share of the slice the prior supplied
The setting that sharpens the step shrinks the reach of every constraint.
0%with 29% of the discontinuity recovered
A queried slice of an implicit field drawn as a relief, 20 by 20 nodes, with a glass canopy held over it on one pin per constraint. Coverage: moderate coverage, one every 4 nodes. Parameterisation: with positional encoding (Fourier features). 0% of the slice lies under no canopy and is amber, set by the network's prior; the rest is aqua, set by the data. The scarp at the discontinuity reproduces 29% of the true step, which runs as a white line along the measured column.
Prior-led share of the slice
0%
Discontinuity recovered
29%
Error against the synthetic truth
0.14
Plain MLP, sparse to dense
13%, 12%, 12%
How densely the data constrain the field
What the parameterisation can represent
data-led: a constraint set this valueprior-led: the network set this valuea constraint on its pin, and the reach of its datathe synthetic true step, on the measured column
29% of the discontinuity is recovered here, and 0% of the queried slice is amber, which is the share whose value the prior supplied rather than the data. Error against the synthetic truth is 0.14.
A synthetic, dimensionless field: a demonstration of the mechanism, not a published velocity model.
Every setting, computed from the model file on the synthetic field. Dimensionless throughout.
coverageparameterisationprior-led sharediscontinuity recoverederror
sparseplain0%13%0.212
sparseencoded28%32%0.148
sparsesiren57%71%0.115
moderateplain0%12%0.212
moderate (shown)encoded0%29%0.14
moderatesiren6%88%0.063
denseplain0%12%0.212
denseencoded0%29%0.136
densesiren0%94%0.024
A queried slice of an implicit neural field on a synthetic, dimensionless test, drawn as a relief: a first-order discontinuity stands as a scarp and two anomalies as a mound and a pit. Each constraint stands on a pin under a glass disc that reaches as far as its data set the value. Aqua ground lies under a disc; amber ground lies under none, where the network's own smoothness prior set the value, and it is drawn just as solidly. With a plain coordinate MLP the discontinuity stays near 12 percent recovered however dense the coverage, because constraints cannot buy a frequency the field cannot represent. Switch to periodic activations at sparse coverage and the discontinuity reaches 71 percent while 57 percent of the slice turns amber. Drag to turn, pinch or hold Ctrl and scroll to zoom, double-click to reset.

Set the parameterisation to a plain coordinate MLP and move the coverage control across its whole range, from one constraint every 7 nodes to one every 2. The recovered discontinuity does not move: 13%, then 12%, then 12%, and the error against the synthetic truth sits at 0.212 at every coverage. This is the first thing the exhibit is for. Constraints cannot buy a frequency the field has no way to represent, so a programme that responds to a blurred Moho by acquiring more data is answering a question the model was not asking.

Now switch to periodic activations and leave the coverage sparse. The discontinuity jumps to 71% recovered. The image gets visibly, satisfyingly sharper. At the same moment 57% of the queried slice turns amber, which is the share of nodes whose value the network's prior supplied rather than the data.

That is the trade, and it is the reason to be careful with a rendered slice. A field that can hold high frequencies generalises a shorter distance from each constraint, so the parameterisation that finally resolves the discontinuity is also the one that hands the largest fraction of the volume to its own prior. Sharpest-looking and most-invented are the same setting, and nothing in the rendering distinguishes them: the amber ground in the exhibit is drawn exactly as solidly as the aqua, because that is what a query returns. Only the canopy over it, which no rendered slice carries, shows where each constraint stops reaching.

The honest reading of a slice therefore needs a second number beside it. Not a smoothness parameter and not a training loss, but the share of the queried region where the prior, rather than a datum, set the value. It is computable for any coordinate field, from the same constraint geometry the inversion already knows.

Limitations worth stating in the paper, not the appendix

The smoothness bias is the first one. Without positional encoding or periodic activations, first-order discontinuities are over-smoothed, and the exhibit puts a number on how badly. Expressiveness is bounded by capacity and encoding bandwidth, so very sharp, thin layers may need targeted encodings rather than more of the same.

Interpretability falls. The model lives in weights, not in values on a grid, so quality control and comparison against legacy models mean re-querying to a grid anyway, which returns some of the ground the representation was meant to take.

Training is per-model. Unlike an amortised operator that has learned a family, a field fitted to one dataset is one object, and the next dataset starts again. And physical constraints such as positivity, or velocity increasing monotonically with depth, do not come free: they have to be enforced by how the outputs are parameterised.

Pairing the field with an explicit learned prior, as the model parameterisation a diffusion sampler denoises, is the direction that addresses the largest of these, because it replaces an implicit spectral prior nobody chose with an explicit one that can be examined and argued with.

Key takeaways

  1. Storing a velocity model as the weights of a coordinate network makes it continuous, memory-independent of query resolution, and differentiable for exact autograd sensitivity kernels.
  2. Encoding bandwidth and data coverage are separate purchases. A plain coordinate MLP recovers about 12% of a first-order discontinuity whatever the coverage, because constraints cannot buy a frequency the field cannot represent.
  3. The parameterisation sharp enough to hold the discontinuity generalises a shorter distance from its data: at sparse coverage it recovers 71% of the jump while 57% of the queried slice is set by the prior.
  4. A queried slice renders prior-led and data-led values with identical apparent confidence, so sharpness is not evidence of support.
  5. Report the prior-led share of a queried region beside any rendered slice. It is computable from the constraint geometry the inversion already has.
  6. Anisotropy fits the representation cleanly through extra output heads, giving one continuous object instead of co-registered grids kept consistent by hand.

References

  1. B. Mildenhall, P. P. Srinivasan, M. Tancik, et al. NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis. ECCV 2020. arXiv:2003.08934
  2. V. Sitzmann, J. N. P. Martel, A. W. Bergman, et al. Implicit Neural Representations with Periodic Activation Functions (SIREN). NeurIPS 2020. arXiv:2006.09661
  3. M. Tancik, P. P. Srinivasan, B. Mildenhall, et al. Fourier Features Let Networks Learn High Frequency Functions in Low Dimensional Domains. NeurIPS 2020. arXiv:2006.10739
  4. L. Thomsen. Weak elastic anisotropy. Geophysics, 1986. doi:10.1190/1.1442051
  5. J. J. Park, P. Florence, J. Straub, et al. DeepSDF: Learning Continuous Signed Distance Functions for Shape Representation. CVPR 2019. arXiv:1901.05103
Tannistha Maiti
Tannistha Maiti

Co-founder & Head of Engineering

More from EarthScan

Related research

All insights →
32 Synthetic Models Beat 1,000 Stations
Insight

32 Synthetic Models Beat 1,000 Stations

The 21-Number Problem: Teaching a Net About Symmetry
Insight

The 21-Number Problem: Teaching a Net About Symmetry

Neural-Operator Surrogates for Receiver-Function Forward Modelling
Research

Neural-Operator Surrogates for Receiver-Function Forward Modelling

Stay ahead

EarthScan insights, in your inbox.

Field-tested research on subsurface and energy-transition AI. About twice a month. No noise.

We use your email only for this newsletter. Unsubscribe anytime Privacy.