Validation and interpretation
validation.RmdWhat a check establishes
Interpreting a decomposition involves distinct questions: whether its outputs reconstruct the input, whether a component meets a method’s conditions, whether it recovers a known oscillation, and whether that interpretation is stable when the data or controls change. A successful check answers its own question, not all of them.
| Question | Observable | Meaning |
|---|---|---|
| Did the numerical iteration accept its result? |
converged and the method’s stopping diagnostics |
Acceptance by the specified rule; separate from physical accuracy |
| Do the components reconstruct the input? | Difference between the input and the sum including its declared remainder | Additive consistency; a mixed or fragmented component can still pass |
| Does a component approximately meet the EMD IMF conditions? | assessIMF() |
Counting and envelope-mean diagnostics with the supplied tolerances and boundary rule |
| Does an estimate recover a known component? |
measureQRF() with a matched reference |
Error relative to that reference, which must be supplied |
| Is a mode unusual under a noise model? |
assessWhiteNoise() or
assessFractionalNoise()
|
A comparison conditional on the model and its normalization |
An observed signal need not come with clean reference components. Similarity to that signal, small cross products or exceeding a noise threshold cannot replace such a reference when claiming recovery of a physical oscillation.
Component diagnostics
assessIMF() provides numerical diagnostics of the
intrinsic mode function conditions for each column of a mode matrix. Its
count result checks that the numbers of extrema and zero
crossings differ by at most one; deviation evaluates the
envelope mean relative to its amplitude using thresholds,
fraction and boundary. A
deviation value of NA means that the boundary
rule left the column without envelopes.
The ideal envelope condition is a zero mean at each point; the
numerical test uses tolerances. Other methods define components through
different operations, such as a bandwidth objective or a filter.
Applying assessIMF() to those outputs gives an additional
diagnostic, not a test of the conditions that define those methods.
The component measures below accept finite numeric inputs, with
samples in rows and components in columns. Functions that compare a
signal with modes require the same number of samples;
measureQRF() instead accepts an estimate and a reference as
vectors of equal length.
| Operation | Interpretation and limits |
|---|---|
measureOrthogonality() |
Returns pairwise inner products and signed cosines. Inner products omit the sampling interval; cross products account for the difference between the energy of the sum and the sum of component energies. A zero-norm column is rejected. |
measurePMSI() |
Returns the positive part of a normalized inner product for each
adjacent pair of columns. The required denominator is
"homogeneous" or "regularized"; the latter
adds the absolute constant 1e-8 to the denominator. A
zero-energy pair is rejected under the homogeneous form. |
measureFCF() |
Returns a normalized inner product between a signal and each mode. Means are retained, so this differs from centered correlation for inputs with nonzero means. A zero-norm signal or mode is rejected. |
measureQRF() |
Compares an estimate against a nonzero reference using the reference
norm relative to the error norm, in dB. Identical vectors return
Inf. |
measureDTW() |
Returns a dynamic time warping distance from the signal to each mode, in signal units. The distance uses squared local costs and is not normalized by path length. Work grows quadratically with the number of samples per mode. |
The sum of modal energies is not generally the energy of their sum: cross products also contribute. Cancellation between positive and negative cross products can make their total small. Consequently, neither an energy balance nor a zero PMSI establishes independence or absence of mode mixing. A high similarity to a contaminated record can also reflect its contamination.
In the record interface, measureModesTSL() reports
crossFraction as the input-energy fraction left after
subtracting modal and remainder energies. It represents normalized cross
products when the components and remainder reconstruct the input. If
they do not, the difference also reflects the reconstruction
discrepancy. EEMD with divisor = "realizations", for
example, reconstructs the input plus meanNoise when all
modes and the residue are retained.
Noise-model diagnostics
The noise comparisons use reference distributions for the energy of components obtained from a specified noise model. Their normalization and calibration matter: a threshold is not a universal boundary between physical signal and noise. A component above the threshold can contain both, and a component below it is not thereby proved irrelevant to the phenomenon.
assessWhiteNoise() compares mode energies with
white-noise bounds at each mode’s mean period. The input is the
component matrix of a signal normalized by the caller. The required
controls are two ordered probabilities between zero and
one, a bound of "gaussian" or
"chiSquare", and rescalingMode:
NULL for no rescaling or the index of the component whose
energy is placed on the upper bound.
The reference distribution is conditional on the noise model, normalization and EMD procedure. Rescaling assumes that the chosen component is dominated by noise; its mode index does not establish that assumption.
The returned energy is the mean-square value, adjusted
when rescaling is selected; that adjustment applies to every mode. The
period is in samples, and lower and
upper are the bounds at that period. A mode has
outside = TRUE when its energy falls below the lower bound
or exceeds the upper bound. A zero-energy column is rejected.
The input to assessFractionalNoise() is a matrix of
exactly 2048 samples, at least two intrinsic mode functions in
extraction order, and no residue. The required hurst is
0.2, 0.5 or 0.8, and
probability is 0.95 or 0.99. The
function uses tabulated coefficients without interpolating to other
Hurst exponents or recalibrating for other lengths.
The first intrinsic mode function supplies the noise scale under the
assumption that it carries mainly noise; the function does not verify
this assumption and rejects a first component of zero energy. The output
contains energy, reference, upper
and outside. Here outside means that energy
exceeds the upper threshold; reference, upper
and outside are NA for the first
component.
The noise model must apply to the quantity being decomposed. In particular, integration changes the noise in an acceleration record. A white-noise interpretation for acceleration does not transfer unchanged to modes obtained from integrated displacement. The seismic guide explains the distinction between those quantities.
Ensemble dispersion
measureDispersion() accepts an array with dimensions
samples, modes and realizations, with at least two realizations. Mode
columns follow extraction order, with absent modes filled with zeros. It
returns matrices of sample variance between members
(variance) and a variance estimate for their mean
(meanVariance), both in squared signal units. The first
describes between-member dispersion; the second describes the Monte
Carlo precision of the mean under the assumptions below.
The formula divides the sample variance by the number of realizations. Its interpretation as an estimated variance of the average assumes comparable components and, in the stated ensemble model, independent realizations with a common mean and a common finite covariance. Opposite perturbations within a complementary pair are dependent, so counting both signs as independent realizations does not justify that interpretation.
The function computes the supplied array; it does not establish those statistical assumptions or physical correspondence between equal mode indices. The dispersion concerns the perturbations applied to the fixed observed record. A small value does not quantify all uncertainty in the physical signal, and increasing the ensemble size does not remove bias in the decomposition.
From measures to selection
Selection specifies which components enter a reconstruction. Energy, frequency, similarity and significance under a noise model summarize different properties; no one of them identifies a clean physical component in general. A retained mode can still contain noise, while a physical oscillation can occupy more than one mode.
selectModesEnergy() orders modes by decreasing energy
and returns the column indices before the largest consecutive energy
drop, most energetic first. It requires at least two columns and rejects
a largest drop that is zero or not unique. This is a different rule from
the explicit minimum energyFraction criterion of
selectModesTSL(). The record
workflow describes declared selection and reconstruction of
time-series records.
The intended retained contribution and the reason for the selection are therefore part of the analysis. The helpers implement the declared rule and preserve its selection record; they do not infer a physical noise model or choose a scientifically justified threshold from the input alone.