Sign In Join Early Access
Back to Blog
Engineering

What Makes a Good Biosensor Training Dataset for Hormonal Inference

What Makes a Good Biosensor Training Dataset for Hormonal Inference

Dataset quality is probably the most discussed limitation in the wearable physiological inference space, and it is almost always framed as a scale problem: not enough participants, not enough cycles, not enough demographic diversity. Those are real issues. But in our experience building the Clair Health model, the more fundamental quality factors are not about scale at all. A small dataset with high-quality labels and appropriate sampling design will outperform a large dataset with poor labels and convenience sampling almost every time for this class of problem.

This post is about what we look for in a training dataset and where we think the gaps in publicly available data are most consequential.

Label quality: the property that matters most

For cycle phase modeling, the label is the cycle phase on each day of the dataset. Cycle phase is not directly observable from a wrist sensor; it has to come from an external reference. The three main sources of phase labels used in the literature are: self-reported menstruation dates, LH urine strip test results, and serum hormone measurements from blood draws timed within the cycle.

These three label sources have very different quality characteristics.

Self-reported menstruation dates give you menstrual phase onset with reasonable precision, but they do not tell you when ovulation occurred. Without ovulation timing, you cannot reliably label periovulatory or early luteal phase. A dataset labeled only from self-reported period dates will systematically underperform on the phase transitions that matter most for clinical applications, because those transitions are not anchored to anything the label can actually observe.

LH urine strips give you a much better ovulation anchor. A positive LH test is typically 24-36 hours before ovulation and allows you to label the periovulatory window and calculate luteal day from ovulation rather than from the next period's start. The limitation is that LH strips require participant compliance: someone has to test daily or twice-daily around mid-cycle, which creates a compliance-based sampling gap in the datasets that use them. Participants who test inconsistently introduce noise into the ovulation timing label even when they do test.

Serum hormone measurements provide the gold standard label. A day-7-post-ovulation serum progesterone draw that confirms ovulation occurred, combined with serum estradiol at two or three points in the follicular phase, gives you a hormonally anchored phase map that is dramatically more useful than either of the self-report alternatives. The cost and participant burden are substantially higher, which is why most publicly available datasets do not have it.

In our internal pilot data collection, we prioritized LH-strip ovulation confirmation supplemented by targeted salivary estradiol sampling for a subset of participants. We are not claiming our dataset is large; it is not. But the label precision in it gives us substantially better signal for training the phase-transition boundaries than an order-of-magnitude larger dataset with only self-reported period dates would.

Sampling density: continuous beats spot measurements

The second most important quality dimension is temporal sampling density. For physiological time-series inference, the ideal is continuous sampling (or close to it) throughout the entire cycle, not periodic spot measurements at selected time points.

Some publicly available wearable datasets were collected as observational studies where participants wore a device for a limited observation window, often 1-2 weeks, rather than throughout a complete cycle. These datasets are useful for many physiological signal characterization questions but are not well suited to cycle phase modeling because you cannot reliably observe the follicular-to-luteal transition pattern in a two-week window that may have started at an arbitrary cycle day.

For our purposes, a minimum useful dataset entry is one complete 28-35 day cycle with continuous wear data (ideally 18+ hours per day, with clearly flagged wear gaps). The phase transition patterns that the LSTM learns are time-extended features: the follicular rise, the periovulatory shift, the luteal plateau and late-luteal decline. These features span 5-14 days each. A model that only ever sees partial cycles during training will not learn to recognize the full feature shape.

Demographic representation: the gap that matters for generalizability

Most publicly available wearable biosensor datasets were collected from convenience samples that are demographically narrow in predictable ways: predominantly young adult, predominantly white or East Asian, predominantly healthy and regularly cycling, predominantly from high-income countries. This creates a generalizability problem that is not just a diversity concern; it is a model accuracy concern.

Skin tone affects photoplethysmography (PPG) signal quality, which in turn affects heart rate and HRV measurement accuracy in a systematic way. Wrist optical sensors were largely designed and calibrated on lighter skin tones. Darker skin tones absorb more light at the wavelengths used by most consumer PPG sensors, which can reduce signal amplitude and increase noise. A model trained on a dataset that underrepresents darker skin tones will perform worse on those users even if the model architecture is identical, because the input signal characteristics are different.

Similarly, cycle patterns in regularly cycling young adults differ from cycle patterns in people with PCOS, perimenopause-adjacent biology, or thyroid function variation. A model trained only on textbook regular cycles will not handle the patterns that show up in a substantial fraction of potential users. We currently see meaningful performance degradation on highly irregular cycles in our own preliminary validation, and addressing this requires training data that includes those patterns in sufficient volume, not just model architecture improvements.

What exists publicly and what does not

A number of research datasets have been made publicly available that include wearable biosensor data with menstrual cycle information. Some of these are useful for specific questions. The gaps we observe most consistently are:

Confirmed ovulation timing is missing in most public datasets. The majority use self-reported period dates as the only label. This limits how useful they are for training periovulatory-phase classifiers.

Long continuous wear data is uncommon. Most public datasets have gaps from device removal that are not consistently documented. For training a gap-aware model, knowing whether a gap is a charging gap (predictable, short) or a non-compliance gap (variable, possibly systematic) matters for how we impute or down-weight those periods.

Correlated clinical data alongside the wearable stream is extremely rare. The most valuable thing a dataset can contain alongside the wearable signals is a handful of timed blood or salivary hormone measurements that let you validate what the wearable signals were doing at known hormonal states. This data almost never appears in publicly available datasets because of the added participant burden and privacy considerations around hormone data.

What this means for how we train

We are not going to pretend we have access to a dataset that solves these problems. We do not. What we have is a modest internally collected dataset with higher label quality than most public options, augmented with carefully selected subsets of public data where the label quality is adequate for the specific model component we are training.

We use public data primarily for pre-training the signal representation layers of the model, where the label requirement is less stringent. We use our internal higher-quality data for the final phase-classification layers, where label precision is the binding constraint on performance.

As we grow the early access program, we will have access to more real-world data from actual users, which addresses the ecological validity gap even if it does not fully solve the label-quality gap. Users who optionally provide LH strip timing or period date logs give us weak labels that are still more informative than no labels. The product improving over time is not just a product roadmap statement; it is a data flywheel that depends on users engaging with optional confirmation inputs.

The broader field needs better public datasets for this class of problem. A dataset with 300 fully confirmed cycles from a demographically diverse participant pool, with continuous wearable data and LH-strip ovulation timing, would be more valuable for advancing wrist-based cycle inference than most of the large-scale datasets that exist with weaker labels. That is the kind of infrastructure gap that slows progress more than compute or algorithm improvements do.