基于MiniRocket算法的航空维修数据集二分类复现

张开发
2026/4/18 11:48:28 15 分钟阅读

分享文章

基于MiniRocket算法的航空维修数据集二分类复现
一.问题概述与思路阐释:问题背景:在通用航空中维修问题是重大安全风险问题。预测性维护可以通过数据驱动的方法(如剩余使用寿命预测)提前发现部件故障但缺乏真实、大规模、带标签的数据。同时也可以采用基于模型的办法但是往往对应的数学模型不好建立。论文 《 A Large-ScaleAnnotatedTimeSeriesMultivariateAviationMaintenance Dataset from the NGAFID 对此基于数据驱动的方法提出了两种基准测试本次笔者将对文中提到的MiniRocket模型进行复现。解决思路:1.理清MiniRocket模型的基本原理与其变种模型2.针对原文作者在Github上四年前的代码进行维护(在AI协助下)本文工作:作者原文代码和数据集在https://github.com/hyang0129/NGAFIDDATASET.笔者将维护好的代码保存在了如下的链接上:https://colab.research.google.com/drive/1pMzMtUGQZy5bZ9zrDK4XQ1vmEGgtRLA1?uspsharing.同时将以AI协作日志的形式展现整个复现(或维护)过程。原文代码的问题:1.环境不适配:原文代码发布在2022年。作者提到可在Colob云端上一键运行但是由于Python的版本更迭需要对原文代码的环境组件进行升级。2.数据集访问受阻:因为不明原因(可能只有我的电脑有这个问题)代码无法将作者发布在Github上的数据集上传到Colob云端需要自己手动上传(需要自己在Github上把数据集下载下来然后手动上传后文将提到相关方法)二、Al协作日志:AI工具:Gemini31.输入:imp组件缺失Prompt:详细解释一下imp组件缺失问题并给出简洁可行的解决方案输出:imp组件是Python3.7版本的组件在Python3.12中已经移除。可以通过更改Python版本或者升级相关组件来解决问题。结果:我先选择更改版本的方案但是我在更改了Python版本后依然会有缺失imp组件的报错那我就理解了可能Colob云端的环境就没有imp这个组件。二次Prompt:根据报错升级相关组件输出!git clone https://github.com/hyang0129/NGAFIDDATASET.git!(cd NGAFIDDATASET ; git checkout main; git reset --hard HEAD; git pull)!(cd NGAFIDDATASET ; pip install -r requirements.txt -q)!pip install tsai -q结果:在这段代码运行完成后会有一段报错但这无关大雅因为用不到报错的内容2.输入:无法从Github上下载数据集(原代码运行后的报错)Prompt:请给出其他将数据集导入的方案输出:建议手动上传您可以在左侧列表的最下方文件那里手动上传文件结果:因为网络原因无法上传完整数据集(原数据集有1G大小产生网络波动就会导致上传失败)二次Prompt:如何避免本地上传因为网络波动导致不成功的问题输出:建议您使用谷歌云盘您可以在谷歌云盘上先上传数据集然后从谷歌云盘那里获得访问权限然后将数据集下载到Colob中。结果:我根据AI生成的授权代码成功将谷歌云盘上的数据集导入到Colob中但我意识到数据集上传完成之后还需要解压于是让AI生成了更加完整的代码。三次Prompt:请生成包含解压的更加完整的代码输出:import osimport sysimport zipfileimport pickleimport numpy as npimport pandas as pd......限于篇幅就展示这些3.输入:数据集格式有问题Prompt:请解释报错并在报错的基础上给予切实可行的方案。输出:根据报错内容有相关代码将数据集格式进行了调整结果:在重新加载数据集之后代码运行时依然有报错提示相关数据集的路径找不到。二次Prompt:请根据报错修改问题。输出:根据报错内容添加了相关路径结果:运行时报错提示运行代码和数据集代码维度不匹配。三次Prompt:考虑到可能会有水多加面面多加水的问题我让AI直接审视数据集加载和运行代码给出简介可行的方案。结果:这次直接一次成功没有报错问题。4.输入:RAM不足导致程序崩溃Prompt:请调低相关参数降低RAM占用输出:相关调低参数的代码结果:初期的RAM占用降低了但是依然会累积崩溃。二次Prompt:请尽可能降低RAM的占用调整相关参数。输出:求生版代码结果:初期的RAM占用极大的降低了但是依然会累积崩溃。总结这是一次略显失败的复现因为MiniRocket会对数据卷积产生10752个维度但免费版Colob提供的RAM只有大概13GB完整运行可能需要16GB的RAM所以这段代码无法在免费版的Colob上运行。但是我相信这段代码可以在合适的地方运行。如果您有意愿运行这段代码。下面我将阐述您在运行时的要点:1.您需要通过Colob取得谷歌云端访问权限后将提前上传到谷歌云盘上的数据集导入到Colob中。笔者维护的代码因为首次上传成功将相关代码删除了您可以借助AI生成相关代码或者先直接手动上传到Colob中。2上传基准测试用的数据集即可上传成功后运行出现:即代表上传成功。代码建议一段一段运行。

更多文章