A Model That Did Not Work
Time-aware neural ODEs, and what a negative result is worth
Abstract
This note is about a model of mine that did not make it. In a second published comparison of reconstruction methods over the same 521 signals [1], I built a time-aware neural ordinary differential equation. It is the only model in that paper with no row in the results table; it lives in Appendix A. The reason is more interesting than simple failure. It reconstructed the signals well, including the irregular sampling it was designed for, but it could not report its own uncertainty stably, and uncertainty was the entire point of the study. The mechanism that produced the uncertainty estimate was the same mechanism that made it unreliable. Meanwhile the paper was won by a smoothing spline.
Status of This Document
Stable. This note describes published, peer-reviewed work; the results will not change. Where this note and the paper [1] disagree, the paper is authoritative. The companion note on the earlier study is WN-002.
1. Why write this one down ¶
Papers have appendices, and appendices are where models go when they did not earn a place in the results. Almost nobody reads them. Almost nobody writes about their own work ending up there.
I am writing this one because the failure was informative in a way the successes were not. A model that wins tells you that a particular combination of choices happened to work. A model that fails for a specific, diagnosable reason tells you something about the problem itself. This one did.
A result you cannot publish is still a result you should understand.
2. The idea ¶
The setup is the one described in WN-002: a satellite watches a gamma-ray burst fade, keeps looking away, and the record comes back with holes in it. The task is to fill the holes and to say how much confidence that filling costs.
Most networks that handle sequences think in steps. You feed them observation one, then observation two, and the internal state updates once per observation. That is fine when observations arrive on a regular beat. These do not. The gap between two consecutive points might be a second or it might be a week, and a step-based model treats both gaps as one step. The irregularity, which is the defining feature of the data, is the one thing the model cannot see.
A neural ordinary differential equation takes a different view. Rather than learning what the next step looks like, it learns a rate of change: how the hidden state evolves per unit of time. To move from one observation to the next you integrate that rate forward over however much time actually elapsed. A gap of a week is not a mystery to be worked around, it is simply a larger number to integrate over.
That is a genuinely good fit for this problem, and it is why the approach was worth trying. It also removes the compromise the U-Net required, which was resampling every burst onto a fixed grid of a hundred points before it could be fed in at all.
3. What I built ¶
The model has three parts.
An encoder reads the observations and compresses them into a small hidden representation. It uses a time-aware variant of an LSTM, meaning it is explicitly told how much time passed between two observations and uses that to decide how much of the past to carry forward. An old measurement separated by a long gap should count for less than a recent one, and the network learns by how much.
A neural ODE block takes that hidden representation and evolves it continuously through time. This is the part that can be asked for the state at any moment, including moments where nothing was observed.
A decoder turns the evolved hidden state back into a brightness at whichever times you ask for.
Uncertainty came from making the encoder probabilistic. Instead of producing one hidden representation it produces a distribution over them, and each run draws a different sample. Run the whole thing many times and you get many slightly different reconstructions; the spread across those runs is the uncertainty. It is an elegant arrangement, and remembering that it is elegant matters for the next section.
- encoder
- Time-aware LSTM, given the elapsed interval between observations
- dynamics
- Neural ODE block evolving the latent state continuously
- decoder
- Reconstructs brightness at arbitrary requested times
- uncertainty
- Variational sampling of the latent state, many runs, spread across runs
- status
- Appendix A of the paper; no row in the results table
4. Why it did not make it ¶
Not because the reconstructions were bad. The paper is explicit that the model performed strongly at modelling and forecasting signals with irregular intervals, which is precisely what it was built for. Judged as a curve-filler, it worked.
It failed on three things, and the third is the one that mattered.
It was complex, with a large number of parameters, which meant it needed careful tuning to avoid fitting itself to noise. It was sensitive, in that reasonable-looking settings could produce unreasonable behaviour. And its uncertainty estimates were sometimes unstable, because they came from stochastic sampling, and the sampling did not always settle to the same answer.
Look at what that last sentence actually says. The uncertainty was unstable because of the sampling, and the sampling was the entire mechanism by which the model produced uncertainty in the first place. The feature and the defect were the same design decision seen from two directions.
Every number reported in that paper is a reduction in uncertainty. A model whose uncertainty estimate wobbles between runs cannot contribute such a number honestly, no matter how good its reconstructions look plotted on a page. There was no version of the results table it belonged in.
It was not a bad reconstructor. It was an unreliable witness to its own confidence, and confidence was the deliverable.
5. What won instead ¶
Seven new methods were tested in that paper against the same 521 signals. The winner was a quartic smoothing spline: a piece of classical statistics that fits a smooth piecewise polynomial through the data and has no learned parameters in the machine-learning sense at all.
| method | plateau end | brightness | decay slope |
|---|---|---|---|
| Quartic smoothing spline | 43.5% | 43.2% | 48.3% |
| Attention U-Net (WN-002) | 37.9% | 38.5% | 41.4% |
| Polynomial curve fitting | 20.8% | 21.6% | 27.4% |
| CNN-BiLSTM | 20.3% | 20.9% | 25.1% |
| Isotonic regression | 18.0% | 18.5% | 24.0% |
| Deep Gaussian process | 11.6% | 12.3% | 15.9% |
| Temporal convolutional net | 5.31% | 12.7% | 16.2% |
| Time-aware neural ODE | not evaluated; see Appendix A | ||
The spline beat every neural network in the study, including the attention model I had built for the previous paper, and it beat them on all three parameters at once. It is also faster, simpler, and easier to explain.
I find that genuinely useful to have watched happen. A smoothing spline was on the table the whole time. Everything about the fashion of the field points toward reaching for the deep model first, and on this problem, measured by the thing that actually mattered, the classical method was better.
6. What I took from it ¶
Judge a method by the output you will actually use. The neural ODE was excellent at the property it was designed around, handling irregular time, and that property was not what the study was measuring. Being good at the interesting part of the problem is not the same as being good at the problem.
A mechanism that provides a feature can be the same mechanism that breaks it. Stochastic sampling gave the model its uncertainty estimate and made that estimate unstable. When something is both the source of a capability and the source of a defect, tuning around it is unlikely to help; the design has to change.
Complexity has to earn its place against the simplest thing that could work. Not as a slogan, but as a procedure: fit the spline first, and let anything more elaborate justify itself against that number.
Negative results are worth recording. The paper says the approach may still prove useful in hybrid configurations, and I think that is right; the idea of integrating a rate of change across a real time interval is a good one for irregular data and I have kept reading in that direction. But it belongs in an appendix here, honestly labelled, rather than quietly dropped. This note exists for the same reason.
§ References ¶
- [1] Kaushal, A., Manchanda, A., Dainotti, M. G., Gupta, K., Nogala, Z., Madhan, A., Naqi, S., Kumar, R., Oad, V., Indoriya, N., et al. “Multi-Model Framework for Reconstructing Gamma-Ray Burst Light Curves.” Journal of High Energy Astrophysics, 51:100519, March 2026. doi:10.1016/j.jheap.2025.100519
- code
- github.com/Krishnanjan-Sil/GRB-Light-Curve-Reconstruction-2
- preprint
- arXiv:2506.23681
- sample
- 521 gamma-ray bursts, the same set used in WN-002
- my role
- Methodology, software, validation; the time-aware neural ODE
If this work is useful to you, cite the paper rather than this note:
@article{kaushal2026multimodel, author = {Kaushal, A. and Manchanda, A. and Dainotti, M. G. and others}, title = {Multi-Model Framework for Reconstructing Gamma-Ray Burst Light Curves}, journal = {Journal of High Energy Astrophysics}, volume = {51}, pages = {100519}, year = {2026}, doi = {10.1016/j.jheap.2025.100519} }
§ See Also ¶
Revision History
Typeset in Source Serif 4 and IBM Plex Mono, self-hosted. Built without a framework. The only JavaScript on this site switches the theme. No tracker, no analytics. Just documents. WN-003 · rev. 2 · 2026-08-08 · nikunjindoriya.com/research/time-aware-neural-odes/