数据工程:风电数据清洗与预处理、特征工程与标注策略
各位搞风电的朋友,大家好。今天咱们聊聊数据工程。说实话,很多做预测的团队,模型调得再花哨,最后死就死在数据上。我见过太多项目,算法选型没问题,算力也够,结果预测准确率就是上不去。一查,数据质量一塌糊涂。所以这一章,咱们把数据工程这块硬骨头啃下来。
一、风电数据清洗与预处理
风电数据,说白了就是脏。传感器漂移、通信中断、风机停机检修……各种情况都会让数据出现异常。我个人习惯,拿到数据第一件事不是建模,而是先做数据体检。
1.1 缺失值处理
风机SCADA系统采集的数据,缺失率通常在5%-15%之间。我遇到过最夸张的一次,某个测风塔的数据缺失率高达40%,原因是通信模块坏了三个月没人发现。
处理缺失值,我一般分三步走:
- 判断缺失类型:是随机缺失还是系统性缺失?如果是风速传感器在特定风向角下频繁失效,那就是系统性缺失,需要特别处理。
- 插补方法选择:短时间缺失(<30分钟)用线性插值;长时间缺失用前后向填充或基于相似日的插补。
- 标记缺失区间:我建议保留一个缺失标记列,方便后续分析。
核心原则:不要盲目删除缺失样本。风电数据本身样本量有限,删除太多会导致模型泛化能力下降。
1.2 异常值检测与处理
风电数据里的异常值,主要有三类:
- 物理限值异常:风速超过切出风速还发电?功率超过额定功率?这些明显不合理。
- 突变异常:前一秒风速5m/s,下一秒跳到25m/s,然后又回到6m/s。这通常是传感器故障。
- 停机数据:风机维护、故障停机期间的数据,不能用于正常工况建模。
我曾经处理过一个项目,某台风机功率曲线异常分散。排查了三个月,最后发现是桨距角传感器零点漂移。你想想看,一个传感器的小问题,能让整个预测模型失效。
避坑指南:我曾经用3σ原则直接剔除异常值,结果把正常的高风速段数据也删了。后来改用四分位距法(IQR),配合业务规则,效果好了很多。
二、特征工程:时域与频域特征
特征工程做得好,模型效果差不了。风电数据特征,我习惯分成时域和频域两大类。
2.1 时域特征
时域特征,说白了就是直接从时间序列里算出来的统计量。常用的有:
- 滑动统计量:均值、标准差、最大值、最小值、峰度、偏度
- 变化率特征:风速变化率、功率变化率、桨距角变化率
- 累积特征:累计发电量、累计运行时间
- 时序滞后特征:前1小时、前2小时的风速和功率
我个人经验,变化率特征往往比原始值更有预测价值。比如风速变化率,能反映湍流强度,对齿轮箱轴承寿命预测特别重要。
2.2 频域特征
为什么要做频域分析?因为很多故障信号在时域里看不出来,但在频域里一目了然。比如齿轮箱的啮合频率、轴承的故障特征频率。
常用的频域特征提取方法:
- FFT(快速傅里叶变换):提取主要频率成分
- 功率谱密度:分析能量在不同频段的分布
- 小波变换:同时分析时域和频域信息,适合非平稳信号
实战经验:我在做主轴轴承预测时,发现时域特征准确率只有70%左右。加入频域特征后,准确率提升到了88%。说白了,频域特征能捕捉到早期故障的微弱信号。
三、数据标注策略
数据标注,是风电预测里最费时费力的环节。我见过有的团队花80%的时间在标注上。标注质量直接决定模型上限。
3.1 标注类型
| 标注类型 | 适用场景 | 标注难度 |
|---|---|---|
| 故障标签 | 故障预测、剩余寿命预测 | 高(需要专家判断) |
| 工况标签 | 正常/异常工况分类 | 中(可基于规则自动标注) |
| 事件标签 | 变桨事件、启停机事件 | 低(可从SCADA日志提取) |
| 退化标签 | 性能退化评估 | 高(需要长期跟踪) |
3.2 标注策略建议
标注不是越多越好,而是要精准。我建议采用以下策略:
- 半自动标注:先用规则自动标注,再由人工复核。比如功率曲线偏离超过20%的,自动标记为异常。
- 多专家交叉验证:同一个样本由至少两位专家独立标注,不一致的讨论确定。
- 标注一致性检查:定期抽查标注结果,计算标注者间一致性(如Cohen's Kappa系数)。
- 标注版本管理:标注结果要版本化,方便回溯和修正。
重要提醒:标注标准一定要文档化。我曾经吃过亏,不同标注员对“轻微异常”的理解不一样,导致模型训练数据不一致。后来我们制定了详细的标注手册,附上典型样本截图,才解决了这个问题。
四、数据工程整体流程
下面这张图,是我总结的数据工程整体流程。从原始数据到可用特征,每一步都马虎不得。
这张图展示了数据工程的核心流程。从原始SCADA数据开始,经过清洗、特征提取、标注,最终得到可用的特征数据集。每一步之间都有严格的依赖关系,跳步或者简化都会影响最终效果。
个人建议:数据工程不要追求一步到位。我习惯先做一个小规模的试点,验证流程可行后再推广到全部数据。这样能及时发现流程中的问题,避免大规模返工。
好了,数据工程这块就聊到这儿。记住一句话:数据质量决定了模型的天花板,算法只是逼近这个天花板的手段。下一章咱们聊聊具体的模型选型和训练策略。