Skip to main content
Case studya major operator in Oman

From One Well to Fourteen: The Data-Scarcity Journey Behind a Working Fracture Detector

Read the whole engagement as one line: model quality plotted against the number of wells fed in. Fracture recall at 5 cm climbed 10% -> 40% -> 75% as the training set grew from three wells to sixteen, and vugs accuracy tracked the same shape from a 10% vendor baseline to 70%. Most of the accuracy arrived early. The turning point was late and counterintuitive: the fifteenth well dropped validation F1 from 60% to 57%. Data scarcity, not architecture, was the plot of the entire project.

28 Jul 20268 min read
From One Well to Fourteen: The Data-Scarcity Journey Behind a Working Fracture Detector

If you want to understand this engagement, do not start with the model. Start with a count. Plot the number of wells we had on the horizontal axis and the quality of the detector on the vertical, and the whole two-year story falls onto a single climbing line. The architecture barely moves along that line. What moves it is wells: how many we had, whose hand picked the ground truth in each, and the exact point where one more well stopped helping. This is the milestone recap of that climb, told as the plot it actually was.

The reservoir is a fractured carbonate in Oman, imaged with two microresistivity tools, FMI and CMI. The task was to detect fractures and beddings on the unwrapped image logs and read their depth, dip, and azimuth directly, then do the same for vugs. Everything downstream, the transformer, the augmentation, the well-to-well correlation, existed to work around one fact: a producing-field operator hands you a handful of wells at a time, and no amount of cleverness manufactures the fifteenth.

The climb, plotted

The spine of the project fits in one exhibit. Pick the metric and watch the same shape appear.

THE PLOT IS A WELL-COUNT CLIMB75%fracture recall@5cm at 16 wellsFrom one well and a handful of sinusoids to a 14-well detectorMost of the accuracy arrives early; the turning point is where more wells stopped helping.CLIMB PLOTTEDFracturesVugsMILESTONE LADDER3 wells10%8 wells40%14 wells60%15 wells57%16 wells75%The 15th well DROPPED F160% -> 57% val: more data hurt.QUALITY vs WELLS FED INquality (percent)0204060803691215number of wells fed into training10%40%60%57%75%Jan 2023: an 11-well model on a ~92k overlapped set dropped;the fix was doubling the stride, not adding wells.WHERE IT PEAKSpeak quality75%at16 wells15th well-3 pts60% -> 57% val F1@5cm.A clean well, picked in adifferent hand.
The whole engagement as one climb: model quality plotted against the number of wells fed into training. For fractures, recall/F1 at 5 cm climbs 10% -> 40% -> 75% across 3, 8 and 16 wells, with the Phase-2 to Phase-3 jump of 40% to 75% inside it; the toggle swaps in the vugs climb, 10% (the prior vendor's thresholding baseline) to 37% to 70%. Most of the accuracy arrives early. The one orange element is the turning point: adding the fifteenth well dropped validation F1 at 5 cm from 60% to 57%, because that well's ground truth was picked in a different hand, so more data hurt. The in-plot note records the parallel Jan-2023 lesson from the model-selection ledger: an 11-well model trained on a roughly 92k overlapped-and-augmented set lost performance and was fixed by doubling the stride rather than by adding wells. All plotted numbers are sourced from the Phase-3 progress bundle and the exec review decks; none are illustrative. The percentages mix recall and F1 at the 5 cm depth criterion as the sources report them, so read the shape of the climb, not a single unified metric.

Two climbs, one geometry. Fracture recall at the 5 cm depth criterion went 10% at three wells, to 40% at eight, to 75% at sixteen. Vugs accuracy went 10% at the prior vendor's thresholding baseline, to 37% under adaptive filtering, to 70% once mode-subtraction and contrastive filtering matured. Both curves are steep at the start and flat by the end. The first few wells buy most of the accuracy. The last few buy very little, and one of them, as the orange segment shows, bought us a loss.

Three wells, and a detector that was wrong about everything

The first supervised runs trained on three wells. The detector scored roughly 10% recall, which is a polite way of saying every sinusoid it drew was in the wrong place. The cold start is its own story, told in "From One Well and 32 Sinusoids to a Production Fracture Detector": a single well, 32 hand-picked sinusoids, 236 patches, and the augmentation-and-overlap machinery that grew that seed into a real training corpus. We will not re-derive it here. The point for the timeline is that three wells was not a training set, it was a proof that the pipeline ran end to end and produced numbers we could be honestly ashamed of.

The escalation from that period was blunt. For five straight weekly reviews in the second half of 2022, one slide carried an all-caps line: the work had hit the wall, and the wall was well data. True-dip labels without the tool-angle and well-deviation corrections capped what any model could learn, no matter how many patches augmentation invented. We pivoted to public data to keep the well-to-well line moving, and waited for wells.

Eight wells, and the first real number

When the count reached eight usable wells, the detector cleared 40% F1 at 5 cm. That is the Phase 2 milestone, and it is the first number that meant something. It is also where two wells got thrown away rather than added. Ten wells arrived; two were excluded on a pixel-range defect that made their static images unusable, an episode with its own writeup, so eight is the number that trained the Phase 2 model. The exclusions matter to the plot. The climb is drawn against wells we could actually use, not wells we were sent, and the gap between those two counts was a recurring tax.

Between Phase 2 and Phase 3 the same detector, fed more diverse wells, went from 40% to 75% F1 at 5 cm. That jump, 40 to 75, is the single largest lift in the project, and it came from data, not from a new head or a heavier network. We had already learned that a light ResNet-10 backbone beat deeper ResNet variants on this small a dataset, so the architecture was settled early and stayed settled. Wells did the rest.

Fourteen wells, and the moment more wells stopped helping

By the mid-teens the curve had flattened. A well-count ablation, reported in full in "How Many Wells Is Enough? A Well-Count Ablation for Fracture Detection", pinned the plateau precisely: on the Hungarian-matched class-error metric, quality bottomed at eleven wells and did not improve past it. We will not repeat that ablation. What the milestone recap adds is the beat after the plateau, which is where the plot turns.

We added a fifteenth well to a fracture set that was already working, and validation F1 at 5 cm fell from about 60% to about 57%. The well was not corrupt. The pipeline was not broken. Its ground truth had been picked with a different emphasis, fractures favoured over beddings, with pick gaps running to 175 m, and the extra rows dragged the label distribution off the style the model had settled on across the first fourteen. The full diagnosis lives in "The 15th Well Made Our Model Worse"; the fix was to stop pooling and train style-consistent, per-class models. For this recap, the fifteenth well is the orange segment, and it is the whole thesis in one dip: past a threshold, how a well was picked matters more than that it exists.

The parallel lesson: the model that drowned in its own data

The same beat showed up inside the model-selection ledger in January 2023, in a different key. We tracked five model configurations side by side. Model 3 added two wells to Model 2 for a slight gain. Model 4 jumped to eleven wells but was trained on a roughly 92,000-patch overlapped-and-augmented dataset, and it dropped performance rather than gaining it. The ledger records the fix in one plain line: too much synthetic data was decreasing the model's performance, so decrease the augmentation and increase the stride as more wells come in. Model 5 doubled the stride and recovered. The mechanics of that over-synthesis trap are covered separately in the data-centric writeups and not re-derived here.

Read the two events together and they are the same finding twice. The fifteenth well hurt because it added inconsistent real labels. Model 4 hurt because it added redundant synthetic ones. In both cases the honest move was to add less, not more, and in both cases we only saw it because we were plotting quality against data volume and watching the line bend down.

What the climb taught the engagement

The delivery timeline and the well count are the same axis. Every milestone maps onto a well count, and the shape of that map is what an operator needs to hear before signing a data-sharing schedule. Diversity buys accuracy fast, then saturates. Beyond saturation, the return on another well depends entirely on whether it was picked in the same hand as the wells before it. That is a project-planning result more than a machine-learning one, and it is why we now interrogate the pick style of a new well before we let it near the training set.

The architecture was chosen in the first quarter and never seriously revisited. The two years went into wells: acquiring them, excluding the broken ones, correcting their labels, and, twice, learning to leave data out. The one line to carry out of this engagement is the line in the exhibit above, and the moment it dips.

Limitations

These numbers come from a single confidential carbonate reservoir in Oman and one operator's wells; the climb shape is ours, not a benchmark to quote against a different field. The plotted percentages mix recall and F1 at the 5 cm depth criterion as the source reports state them, so the exhibit argues the shape of the climb rather than a single unified metric. The fifteenth-well regression and the Model 4 over-synthesis drop are validation-set findings under our own train/validation partitioning; blind-well performance is reported separately and is lower in absolute terms. The mechanics behind the cold start, the well-count ablation, the label-consistency fix, and the synthetic-overload trap are each treated in full in the linked pieces and are only summarised here.

References

  1. Phase-3 progress bundle (monthly reports, January to July 2023) and the executive review decks, internal engagement archive: fracture recall and F1 at 5 cm evolution (10% -> 40% -> 75% at 3 -> 8 -> 16 wells), the vugs accuracy evolution (10% -> 37% -> 70%), the Phase-2 to Phase-3 F1 jump (40% -> 75%), the 14-to-15-well validation regression (60% -> 57%), and the January 2023 model-selection ledger (Model 4 drop on a ~92k overlapped set, Model 5 stride fix); data and code withheld under operator confidentiality.
  2. "From One Well and 32 Sinusoids to a Production Fracture Detector", EarthScan, 2024, for the cold-start and augmentation mechanics.
  3. "How Many Wells Is Enough? A Well-Count Ablation for Fracture Detection", EarthScan, 2023, for the Hungarian class-error ablation and the eleven-well plateau.
  4. "The 15th Well Made Our Model Worse: Label Consistency Beats Data Volume", EarthScan, 2025, for the full label-consistency diagnosis and the per-class fix.
Narendra Patwardhan
Narendra Patwardhan

Research Collaborator

Discuss a programme
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.