Point prediction · scalar PLS baseline
Mean absolute error: average distance from measured weight. Every evaluated cycle counts equally; 167 represented-condition cycles versus 829 cycles across three whole-experiment holdouts.
Manufacturing data science · Portfolio case study
Can injection-molding telemetry estimate a completed part’s weight—and remain reliable when process conditions change?
Accurate on familiar conditions. Unreliable on an omitted experiment.
Detailed pressure/flow signals and more complex models did not consistently solve the transfer problem. This study does not justify skipping physical weight measurements.
Mean absolute error: average distance from measured weight. Every evaluated cycle counts equally; 167 represented-condition cycles versus 829 cycles across three whole-experiment holdouts.
Share of measured weights inside intervals intended to cover 90.0%. This branch selects scalar PLS or LightGBM using development data; it is a separate analysis from the PLS baseline.
These are separately fitted retrospective benchmarks. Their gap describes performance under two evaluation designs; it is not a paired causal estimate of process shift. No authoritative product tolerance is available.
01 · Contribution
I implemented the source adapter, source audit, evaluation memberships, model and signal comparisons, uncertainty checks, predictive explanations, and the local dashboard and static report. Bogedale et al. collected and released the source measurements; the modeling libraries supply the estimators.
The adapter verifies pinned source bytes and joins each machine cycle to its measured part. It preserves native timestamps, nulls and field lineage. Ninety-two released signal-only cycles have no supported weight target, so they remain outside the prediction study.
Fixed row memberships separate fitting, tuning, calibration and evaluation. Scaling and signal compression learn only from permitted training rows. Weight and experimental context do not enter the predictors.
Mean, Ridge and partial least squares (PLS) establish scalar baselines. Engineered summaries and compressed pressure/flow traces test signal shape. LightGBM tests a nonlinear model family without expanding the search after evaluation.
Prediction intervals test uncertainty. A development-only distance screen checks whether unfamiliar inputs can rank prediction errors well enough to study selective measurement. The screen failed; that next study was skipped.
Engineering evidence: implementation, synthetic regression tests, and locked-environment checks. These links show the work; they do not establish factory deployment.
02 · Study design
The study uses 829 labeled cycles across 3 controlled experiments from scatimdata Dataset 2. A stacking-box part was molded from glass-fiber-reinforced nylon 6 (PA6-GF30). Each cycle provides 16 scalar machine measurements and pressure/flow traces with 2,048 samples per channel. Physical weight in grams is the reference outcome.
| Experiment | Labeled cycles | Mean part weight (g) | Controlled source context |
|---|---|---|---|
| 15 | 303 | 115.956 | Moisture-content experiment |
| 20 | 223 | 115.237 | Moisture-content experiment |
| 23 | 303 | 114.308 | Mold-temperature experiment |
A scalar is one number, such as peak pressure or injection time. A trajectory is the sequence recorded during the cycle. Prediction occurs after the machine cycle is complete; this is a study of virtual measurement, not early-cycle control.
70.45% of observed weight variation lay between the three groups. Their separation can make pooled scores look strong when all groups are represented. It motivates the harder whole-experiment benchmark.
The initial audit inspected all three experiments before the later evaluation scope was fixed. The grouped benchmark is retrospective cross-validation, not an untouched prospective test. Adjacent cycles and three specific experiments do not support a universal factory claim.
Pressure and flow amplitudes remain in unresolved source-native units; elapsed time is in seconds. Moisture settings for experiment 15 disagree with the paper in two places. Mold-temperature units are inferred as °C. Geometry fields are retained but deferred because their scale and mapping are unresolved. There is no authoritative wall-clock chronology or part-weight specification.
The source paper studied random cross-validation within the available mixture of conditions. This implementation asks a different transfer question and uses different features and models. It is an extension, not an exact replication or a contradiction of the paper.
See the dataset contract and feature and evaluation contract.
03 · Prediction
The scalar PLS baseline reached 0.114 g pooled MAE for represented conditions and 0.523 g across the omitted experiments. Its predefined scientific summary gives each experiment equal weight: 0.503 g MAE. The pooled value instead gives every evaluated cycle equal weight.
The error was systematic for experiment 23. PLS underpredicted all 303 held-out parts by an average of 0.798 g. That directional bias is evidence of a model failure in this population; it does not identify a physical cause.
| Experiment | Evaluation population | Cycles (n) | MAE (g) | Signed bias (g) |
|---|---|---|---|---|
| 15 | Represented conditions | 61 | 0.109 | -0.027 |
| 15 | Unseen experiment | 303 | 0.421 | +0.420 |
| 20 | Represented conditions | 45 | 0.150 | +0.010 |
| 20 | Unseen experiment | 223 | 0.289 | +0.089 |
| 23 | Represented conditions | 61 | 0.091 | +0.002 |
| 23 | Unseen experiment | 303 | 0.798 | -0.798 |
Signed bias is mean(predicted − measured): a negative value means underprediction. The represented-condition rows share one fitted pipeline; whole-experiment rows use a separate pipeline for each omitted experiment.
Some pressure/flow representations improved the aggregate error, but every augmented representation was worse than scalars on at least one omitted experiment. LightGBM’s summary features gave a small aggregate improvement; compression did not improve its aggregate result. Scalar PLS had the lowest equal-experiment MAE among the predefined comparisons. No deployment model was selected from those outer scores.
| Predictor representation | Ridge MAE (g) | LightGBM MAE (g) |
|---|---|---|
| A · Scalars only | 0.919 | 0.635 |
| B · Scalars + trajectory summaries | 1.457 | 0.624 |
| C-PCA · Scalars + PCA signal components | 1.047 | 0.638 |
| C-PLS · Scalars + supervised PLS signal components | 0.704 | 0.649 |
Each value averages the MAE of the three held-out experiments equally. Ridge uses linear regression with coefficient shrinkage. Principal component analysis (PCA) compresses signal variation without weight labels; supervised PLS compression uses weight labels only within its training partition. LightGBM combines decision trees. These are bounded benchmark comparisons, not proof of an optimal model.
Trajectory methods and per-experiment results · LightGBM comparison
04 · Reliability and decision limits
A separate uncertainty branch chooses scalar PLS or LightGBM on development data, then uses reserved calibration cycles to estimate a split-conformal error margin. The margin defines an interval around each prediction. For whole-experiment evaluation, neither fitting nor calibration sees the omitted experiment.
Calibration learns an error margin from familiar conditions. It does not automatically enlarge that margin when a new condition causes larger errors. Split-conformal coverage relies on statistically interchangeable calibration and future examples—the exchangeability assumption. These process changes do not establish that assumption.
| Evaluation population | Selected family | Cycles (n) | Coverage | Mean width (g) | MAE (g) |
|---|---|---|---|---|---|
| Represented conditions · pooled | LightGBM | 167 | 86.2% (144/167) | 0.194 | 0.052 |
| Unseen experiment · pooled | LightGBM / PLS | 829 | 5.2% (43/829) | 0.342 | 0.735 |
| Unseen experiment · experiment 15 | LightGBM | 303 | 0.0% (0/303) | 0.188 | 0.869 |
| Unseen experiment · experiment 20 | LightGBM | 223 | 18.8% (42/223) | 0.269 | 0.469 |
| Unseen experiment · experiment 23 | PLS | 303 | 0.33% (1/303) | 0.550 | 0.798 |
The model is chosen separately for each evaluation setup. These point errors belong to the uncertainty branch, not the scalar PLS comparison above. Interval width is constant within a fitted fold. Calibration-set coverage is not reported as evaluation performance.
The study tested one fixed distance score: the average distance to five nearby training cycles after rescaling the scalar features using training data. Keeping the closest 75% of development predictions had to reduce MAE by at least 10% in every held-out-experiment setup.
| Experiment excluded | Screening experiments | Mean relative MAE reduction | Criterion met? |
|---|---|---|---|
| 15 | 20 and 23 | 19.7% | Yes |
| 20 | 15 and 23 | 4.3% | No |
| 23 | 15 and 20 | 16.3% | Yes |
One setup failed, so the selective-measurement study was skipped. These are development-screen results on the listed experiments, not screening performance on the excluded experiment. Model selection reused the development labels, so the screen is selection-affected and may be optimistic. No measurement savings or safe measurement-skipping policy was demonstrated.
Permutation importance asks how much prediction error changes when a feature’s values are shuffled. The leading feature changed across evaluated populations, and correlated temperature channels often acted as condition proxies. Marginal training-range departures describe unfamiliar inputs. Neither diagnostic establishes a universal sensor ranking, a causal mechanism, or a validated drift detector.
Decision implication: retain physical measurement. A follow-up should collect labeled examples across a broader operating envelope—the combinations and ranges of supported process conditions—and evaluate complete conditions, lots or machines prospectively. This study did not compare data-collection strategies or validate that proposed workflow.
Weight is one quality characteristic. Without authoritative tolerances, MAE cannot establish product conformance or production adequacy. The study covers three controlled transfer scenarios, not arbitrary future factory changes.
05 · Inspection and reproduction
This file contains the report, styles, aggregate charts and tables. It opens offline and requires no account or Python environment. Supporting repository and source links need internet access. The local Streamlit dashboard offers additional views of saved evidence.
Per-experiment MAE, bias, selection boundaries and limitations.
Coverage, calibration, development populations and the stopping rule.
Population-specific associations and marginal input support.
Locked dependencies, source acquisition and saved-evidence commands.
After producing the saved study artifacts, regenerate the report from the repository root:
uv run python scripts/render_portfolio_report.py
Rendering checks existing source/membership lineage, aggregates saved outputs, and writes this HTML. It does not fit models, acquire data, retune candidates or reopen evaluation. A fresh clone contains this report and maintained milestone summaries; raw/prepared data and full numeric run artifacts remain local and ignored. The tracked audit notebook has no saved outputs.
To reproduce the analysis, follow the README sequence. That route acquires the pinned public Dataset 2 archive and runs the predefined experiments. The repository’s synthetic tests check source and modeling contracts; they do not independently reproduce this real-data study or establish production readiness.
Source measurements: Bogedale et al., scatimdata Dataset 2, associated with Online Prediction of Molded Part Quality in the Injection Molding Process Using High-Resolution Time Series (2023), licensed CC BY 4.0.
The source data were joined into English-named canonical tables and analyzed by this project. Charts and tables are this project’s derived summaries, not publisher figures. Project code and report prose use the MIT license; the underlying source retains its attribution requirements.
Source commit: 7bd35941d75c97a3f276439377dc430ab47402be
Source archive SHA-256: 69294087889a52791c296734051d6b21b30847c2859613e4178074182150c491
Evaluation memberships SHA-256: 3b10bfdb4672e42790b632913d0b8ffa123d54d91e93a4e1885b12238f7b0c59
Pinned source manifest · Data licensing and rendered-evidence policy