PHM task set: RUL records are graded against C-MAPSS specs, including for bearing datasets with no run-to-failure data
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 48/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- huggingface, python
- 领域
- data, machine-learning
调研方向
Start by reading data/task/phm_utterance.jsonl and inspect the referenced pdm_rul_*, pdm_cost_benefit_002, and pdm_safety_007 records, comparing each utterance with its characteristic_form. Check which named datasets provide run-to-failure data and whether their grading targets match those sources. Done means the mismatched specs and unsupported RUL tasks are corrected or reclassified, with the affected records validated for consistency.
由索引模型根据 Issue 内容生成。
描述
Summary
In the Hugging Face dataset ibm-research/AssetOpsBench, config prognostics_and_health_management (data/task/phm_utterance.jsonl, 75 records), several RUL Prediction records are graded against a characteristic_form that describes a different dataset than the utterance asks about — in most cases a C-MAPSS turbofan spec attached to a bearing-dataset prompt. A related group asks for remaining-useful-life prediction from bearing datasets whose public releases contain no run-to-failure data and therefore no RUL labels.
Every record referenced below carries "deterministic": true, i.e. it is declared exactly verifiable against ground truth.
Issue 1 — characteristic_form names a different dataset than the utterance
| id | utterance asks about | characteristic_form specifies |
|---|---|---|
pdm_rul_008 |
Paderborn | CMAPSS_FD003 |
pdm_rul_011 |
IMS | CMAPSS_FD001 |
pdm_rul_012 |
HUST | CMAPSS_FD002 |
pdm_rul_013 |
MFPT | CMAPSS_FD003 (MFPT is never named in the spec) |
pdm_rul_014 |
Paderborn | CMAPSS_FD004 |
Two of these contradict themselves within a single sentence:
pdm_rul_014: "The process initiates by usingload_datasetto acquire the CMAPSS_FD004 training and test splits from the Paderborn dataset"pdm_rul_008: "The evaluation workflow for multimodal sensor analysis on the CMAPSS_FD003 dataset … begins with data ingestion usingload_datasetto import the Paderborn multimodal training and test sets"
And pdm_rul_012: "The workflow begins by using load_dataset to access the CMAPSS_FD002 HUST train and test splits".
Issue 2 — RUL is requested from datasets with no run-to-failure data
CWRU, Paderborn (KAT) and MFPT are published as fault-classification benchmarks. Their releases are short recordings at fixed speed/load with a known pre-existing defect, labelled by damage type and severity — not continuous degradation trajectories, and with no per-unit time-to-failure label:
- CWRU: single-point faults introduced by electro-discharge machining at defined diameters (0.007″–0.040″), ~10 s records at 12 kHz / 48 kHz, motor load 0–3 hp, near-constant shaft speed.
- Paderborn (KAT): 32 bearings — 6 healthy, 12 artificially damaged, 14 damaged in accelerated lifetime tests — distributed as repeated 4 s measurement segments per operating point. Lessmeier et al. (PHM Europe 2016) present it explicitly as a benchmark for data-driven classification. The lifetime tests themselves are not released as per-unit life trajectories. The same file acknowledges this framing in
pdm_fault_006, which asks the agent to distinguish artificial from natural damage. - MFPT: baseline, outer-race and inner-race fault conditions under varying load, plus three real-world fault cases. No life trajectories.
Records requiring RUL from these sources:
| id | dataset | what the spec requires |
|---|---|---|
pdm_rul_002 |
CWRU | train_rul_model → predict_rul → load_ground_truth → plot_degradation_trends; MAE/RMSE against "actual failure times" |
pdm_rul_007 |
MFPT | train_rul_model → predict_rul → load_ground_truth; MAE/RMSE |
pdm_rul_008 |
Paderborn | same, plus a per-sensor RUL ablation |
pdm_rul_013 |
MFPT | same |
pdm_rul_014 |
Paderborn | same |
pdm_cost_benefit_002 |
CWRU | "RUL prediction generation to quantify operational risk across all test units" |
pdm_safety_007 |
CWRU | predict_rul for all test units; MAE 10–25, RMSE 15–30 |
The run-to-failure sources in the same file (XJTU-SY, FEMTO/PRONOSTIA, IMS, C-MAPSS) can support RUL tasks; Issue 2 is specific to the classification-only sources.
Evidence that pdm_rul_002 (CWRU) carries a C-MAPSS ground truth
pdm_rul_002 never names C-MAPSS, but its grading targets trace back to one:
- Target
MAE16.2–32.3 andRMSE21.6–43.1 appear in exactly two records in the file:pdm_rul_002(CWRU) andpdm_rul_012— whose own spec namesCMAPSS_FD002. - The expected top-5 risk units, "units such as 6, 10, 43, 176, and 210", are identical in
pdm_rul_002(CWRU) andpdm_rul_007(MFPT), and all five appear inpdm_rul_012's enumeratedCMAPSS_FD002test ids ("6, 10, 43, 176, 210, 115, 123, 137, 89, and 101"). Unit indices up to 210 are consistent with C-MAPSS FD002's 259 test units; CWRU has no comparable set of life-tracked units. - The spec trains on features named
vibration_horizontalandvibration_vertical. A horizontal/vertical accelerometer pair is the layout of the run-to-failure rigs (XJTU-SY, PRONOSTIA/FEMTO), not of CWRU, whose channels are drive-end, fan-end and base accelerometers (DE,FE,BA) mounted at the 12 o'clock position.
Why this matters
- With
deterministic: trueon a target that the named dataset cannot produce, an agent cannot pass by behaving correctly — the reachable ceiling is emitting CWRU "RUL" numbers that happen to land in a C-MAPSS FD002 error band. - The correct behaviour — declining to regress RUL from a seeded-fault dataset and explaining why — scores as failure. These records invert the signal for precisely the physical-validity reasoning the benchmark aims to measure.
- Comparability: scores on the PHM config mix well-posed prognostics tasks with ones whose ground truth belongs to a different dataset.
Suggested resolution
- Retarget the CWRU / Paderborn / MFPT RUL records to a run-to-failure source (XJTU-SY, FEMTO/PRONOSTIA, IMS, NASA/IMS bearing), or reclassify them as fault classification, severity estimation, or health-index tasks.
- Rebuild the five mismatched
characteristic_formentries from the dataset each utterance actually names, dropping the carried-overFD00xerror bands and unit ids. - Replace the horizontal/vertical channel names in
pdm_rul_002with the channels of whichever dataset the record ends up targeting. - Consider a validation check over
phm_utterance.jsonlasserting that (a) a record'scharacteristic_formnames only the dataset itstextnames, and (b)category: RUL Predictionis paired only with a run-to-failure source.
Questions
- Is the PHM harness published anywhere? The tools these specs reference (
load_dataset,load_ground_truth,train_rul_model,predict_rul,verify_ground_truth,calculate_mae,plot_degradation_trends) do not appear inIBM/AssetOpsBenchonmainor on any of the 149 remote branches as of 2026-10-25. If the config is currently spec-only, that would explain why these records have not surfaced in execution. - Dataset identification.
pdm_rul_009/pdm_rul_015refer to "the Mendeley dataset". Mendeley Data is a host, not a dataset;pdm_rul_015's spec resolves it to FEMTO, whilepdm_rul_009describes bearings under 600–1800 RPM speed sweeps, which does not match FEMTO. Similarly, could you confirm which HUST datasetpdm_rul_006/pdm_rul_012target? The commonly used HUST bearing set is also a classification dataset, which would place those two records under Issue 2 as well.
Happy to open a PR against phm_utterance.jsonl for whichever direction you prefer — retargeting the datasets or recategorising the tasks.
- 主要语言
- Python
- 星标
- 2.4k
- 派生
- 360
- 平均合并
- 5 小时 52 分钟
- 30 天内合并 PR
- 34
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
IBM/AssetOpsBench 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 76/100
IBM/AssetOpsBench#645 ·
维护者通常 1 天内回复
-
难度 4/5 3-5 天 新手友好度 25/100
IBM/AssetOpsBench#657 ·
维护者通常 1 天内回复
-
Refresh the main branch with aafeedback branch可能已有人在做 @ShuxinLin 于 15 天前认领。 未关闭
IBM/AssetOpsBench#644 · 已指派 1 人 ·
维护者通常 1 天内回复
-
ci: discuss a lightweight Python smoke check for pull requests可能已有人在做 @yousseffaouzi 于 17 天前认领。 未关闭
难度 2/5 1-3 小时 新手友好度 35/100
IBM/AssetOpsBench#632 · 4 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
-
Add few scenarios in lite configuration for mea可能重新可做 @ShuxinLin 于 33 天前认领,目前没有进行中的 PR。 未关闭stale
IBM/AssetOpsBench#582 · 1 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
查看 IBM/AssetOpsBench 的全部 Issue
相似的 Issue
-
PluginProvider.storeInstance races and clobbers the dedup cache for concurrent loads可能已有人在做 @Wilson0511 今天认领。 未关闭needs-triage
难度 2/5 1-3 小时 新手友好度 62/100
维护者通常 2 天内回复
-
community documentation good first issue
难度 2/5 1-3 小时 新手友好度 75/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
-
难度 2/5 1-3 小时 新手友好度 62/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 85/100
kagent-dev/kagent#3462 ·
维护者通常 1 天内回复