4、传感器数据与特征工程:常见传感器类型、数据预处理与特征提取

在Edge Impulse平台上训练异常检测模型,核心挑战并非模型结构本身,而是如何将原始传感器信号转化为高质量、可学习的特征表示。传感器数据是物理世界的数字化投影,其质量直接决定了模型性能的上限。本章将系统梳理常见传感器类型及其数据特性,深入讲解数据预处理的关键步骤(去噪、归一化、分段),并重点剖析时域与频域特征提取的方法论与工程实践。理解这些内容,是后续阈值设置与模型调优的基石。

传感器数据 → 特征工程 → 异常检测模型 传感器数据采集 加速度计 (ACC) 陀螺仪 (GYRO) 温度/压力/磁力计 采样率: 10Hz ~ 1kHz+ 轴数: 3轴/6轴/9轴 数据预处理 ① 去噪 (滤波) ② 归一化/标准化 ③ 分段 (窗口化) 滑动窗口: 50%重叠 窗口长度: 2s ~ 10s 去噪: 低通/带通/中值 特征提取 时域特征 频域特征 (FFT) 统计特征 均值/方差/峰值/过零率 频谱质心/谱熵/主频 Edge Impulse DSP模块 异常检测 K-means GMM AE 阈值设置 关键工程链路与决策点 原始数据采集 数据清洗与去噪 窗口分段 特征计算 训练/推理 ⚠ 常见陷阱: • 采样率不匹配导致频谱混叠 • 窗口过长导致特征被平均化,丢失瞬态异常 • 归一化参数需从训练集计算,避免数据泄漏 • 忽略传感器轴间相关性(如重力分量) ✓ 最佳实践: • 使用Edge Impulse内置DSP模块自动生成特征 • 结合时域+频域特征提升鲁棒性 • 对每个轴单独提取特征,保留物理意义 • 使用验证集评估特征区分度

4.1 常见传感器类型与数据特性

异常检测任务中,传感器选型决定了可观测的物理量维度。不同传感器具有不同的采样率、量程、噪声特性和失效模式,理解这些差异是设计特征工程方案的前提。

4.1.1 核心传感器类型

传感器类型测量物理量典型采样率数据特性异常检测应用场景
加速度计 (ACC)线性加速度 (m/s²)50-1000 Hz包含重力分量 (静态偏置),高频振动敏感设备振动异常、碰撞检测、跌落识别
陀螺仪 (GYRO)角速度 (rad/s)50-1000 Hz零偏漂移,温度敏感,积分后产生角度旋转异常、姿态突变、轴承磨损
磁力计 (MAG)磁场强度 (μT)10-100 Hz易受环境电磁干扰,需要校准电机磁场异常、金属异物检测
温度传感器温度 (°C)0.5-10 Hz变化缓慢,惯性大,噪声小过热预警、散热失效、环境异常
压力传感器压力 (Pa/bar)10-100 Hz基线漂移,受温度补偿影响液压系统泄漏、气密性检测
电流/电压传感器电流 (A) / 电压 (V)1-10 kHz高频谐波丰富,瞬态冲击明显电机堵转、电源异常、电弧故障

在Edge Impulse中,传感器数据通常以时间序列形式输入。每个采样点包含一个时间戳和多个轴的数据值。例如,一个6轴IMU(惯性测量单元)的数据格式为:[timestamp, acc_x, acc_y, acc_z, gyro_x, gyro_y, gyro_z]。理解数据格式是后续处理的基础。

经验提示:对于旋转机械的异常检测,建议同时使用加速度计和陀螺仪。加速度计捕捉振动冲击,陀螺仪捕捉旋转速度的突变。两者互补,能覆盖更全面的异常模式。在Edge Impulse中,可以通过“Add New Impulse”将多个传感器数据源合并为一个数据流。

4.1.2 传感器数据的关键属性

  • 采样率与奈奎斯特频率:采样率必须大于信号最高频率的2倍,否则会产生混叠。例如,若设备振动频率最高为200Hz,采样率至少需要400Hz。Edge Impulse支持自定义采样率,但需注意内存和功耗限制。
  • 量程与分辨率:量程决定了可测量的最大物理量,分辨率决定了最小可检测的变化。加速度计量程通常为±2g到±16g,选择过大的量程会降低小信号的灵敏度。
  • 噪声基底:所有传感器都有本底噪声。加速度计的噪声密度通常在100-300 μg/√Hz。噪声过大会掩盖微弱的异常信号,因此去噪是必要的预处理步骤。
  • 轴间耦合与校准:IMU的轴间可能存在微小耦合,且受温度影响产生零偏漂移。在部署前应进行静态校准,记录零偏值并在预处理中扣除。

4.2 数据预处理:从原始信号到可用样本

原始传感器数据不能直接输入模型,必须经过一系列预处理步骤,以消除噪声、统一尺度、并切分成适合模型输入的样本窗口。Edge Impulse的预处理流程通常包括去噪、归一化和分段三个核心环节。

4.2.1 去噪(滤波)

去噪的目标是保留与异常相关的信号成分,抑制无关的噪声和干扰。常用的方法包括:

  • 低通滤波:去除高频噪声。适用于振动信号,截止频率通常设为信号最高频率的1.5-2倍。Edge Impulse内置了Butterworth低通滤波器,可配置阶数和截止频率。
  • 带通滤波:保留特定频带内的信号。例如,轴承故障特征频率通常在1kHz-5kHz,使用带通滤波可以突出该频段。
  • 中值滤波:去除脉冲噪声(尖峰)。对于传感器偶发的毛刺信号,中值滤波比均值滤波更有效,因为它不会模糊边缘。
  • 去趋势:去除信号中的缓慢漂移(如温度引起的零偏漂移)。可以使用高通滤波或减去滑动平均。
// Edge Impulse 中配置滤波器的示例(伪代码)
// 在 DSP 模块中设置
dsp_config {
  filter_type: "lowpass"
  cutoff_frequency: 100  // Hz
  order: 4
  // 或 filter_type: "bandpass", low_freq: 50, high_freq: 500
}
风险提示:过度滤波会滤除异常信号本身。例如,如果异常表现为瞬态冲击(如碰撞),低通滤波会将其平滑掉。建议先进行频谱分析,确定异常信号的频带范围,再设计滤波器。在Edge Impulse中,可以使用“Spectral Analysis”模块查看原始数据的频谱。

4.2.2 归一化与标准化

不同传感器、不同轴的数据具有不同的量纲和数值范围。例如,加速度计数值在±16g之间,而温度可能在20-80°C之间。如果不进行归一化,模型会偏向数值范围大的特征。常用的方法有:

  • Min-Max归一化:将数据缩放到[0,1]区间。公式:x' = (x - min) / (max - min)。适用于数据分布有明确上下界的情况。
  • Z-score标准化:将数据转换为均值为0、标准差为1的分布。公式:x' = (x - μ) / σ。适用于数据分布近似高斯的情况,对异常值不敏感。
  • 鲁棒缩放:使用中位数和四分位距(IQR)进行缩放,对异常值具有更好的鲁棒性。

在Edge Impulse中,归一化参数(min/max或μ/σ)必须从训练集计算,并保存用于后续的验证集和测试集。如果直接对整个数据集计算归一化参数,会导致数据泄漏,使模型评估结果过于乐观。

关键操作流程:
  1. 将原始数据划分为训练集、验证集、测试集(例如70%/15%/15%)。
  2. 仅使用训练集计算归一化参数(min/max或μ/σ)。
  3. 将相同的参数应用于验证集和测试集。
  4. 在Edge Impulse中,可以在“Create Impulse”页面设置“Calibration”参数,系统会自动处理。

4.2.3 分段(窗口化)

异常检测模型通常处理固定长度的数据窗口,而不是无限长的流数据。分段将连续时间序列切分为多个样本窗口,每个窗口独立输入模型。窗口设计直接影响模型的时间分辨率和计算开销。

  • 窗口长度:窗口应足够长以包含完整的异常事件,但又不能太长导致特征被平均化。对于振动信号,窗口长度通常为2-5秒;对于温度信号,可能需要10-60秒。Edge Impulse默认窗口长度为2秒。
  • 重叠率:相邻窗口之间可以重叠,以增加样本数量并平滑边界效应。常见的重叠率为50%-75%。重叠率越高,样本越多,但计算量也越大。
  • 滑动步长:步长 = 窗口长度 × (1 - 重叠率)。例如,窗口长度2秒,重叠率50%,则步长为1秒。
窗口长度重叠率样本数量(1分钟数据)适用场景
1s50%119快速瞬态异常(碰撞、冲击)
2s50%59振动异常、旋转机械
5s75%45缓慢变化信号(温度、压力)
10s0%6长期趋势监测

4.3 时域与频域特征提取

特征提取是将预处理后的窗口数据转换为一组数值特征,这些特征应能有效区分正常与异常状态。Edge Impulse提供了丰富的DSP模块,可以自动提取时域和频域特征。

4.3.1 时域特征

时域特征直接从原始信号的时间序列中计算,计算简单、物理意义明确。常用的时域特征包括:

  • 统计特征:均值、方差、标准差、峰峰值、均方根(RMS)。RMS对振动信号的幅值变化敏感,是轴承故障检测的经典指标。
  • 波形特征:峰值因子(峰值/RMS)、波形因子(RMS/平均绝对值)、脉冲因子(峰值/平均绝对值)。这些特征对冲击性异常敏感。
  • 过零率:信号穿越零点的次数,反映信号的频率变化。对于振动信号,过零率增加可能意味着高频成分增多。
  • 自相关函数:描述信号与其自身延迟版本的相关性,可用于检测周期性异常。

4.3.2 频域特征

频域特征通过傅里叶变换(FFT)将信号从时域转换到频域,揭示信号的频率成分。频域特征对周期性异常(如轴承磨损、齿轮故障)特别有效。

  • 频谱质心:频谱的加权平均频率,反映信号的主要频率位置。
  • 频谱带宽:频谱的扩展程度,带宽增加可能意味着能量分散到更多频率。
  • 谱熵:频谱的均匀程度。正常信号的谱熵较低(能量集中在少数频率),异常信号的谱熵可能升高。
  • 特定频带能量:计算特定频带(如1kHz-2kHz)内的能量占比。例如,轴承故障特征频率(BPFO、BPFI)处的能量增加是故障的明确信号。
  • 峰值频率:频谱中幅值最大的频率。峰值频率的偏移可能意味着转速变化或结构共振。
// Edge Impulse 中特征提取的配置示例
// 在 DSP 模块中,选择 "Spectral Features"
dsp_config {
  type: "spectral"
  fft_length: 256
  window_function: "hann"
  features: ["rms", "spectral_centroid", "spectral_entropy", "peak_frequency"]
}

4.3.3 特征选择与降维

提取的特征数量可能非常多(例如,每个轴提取10个特征,6轴IMU就有60个特征)。过多的特征会导致过拟合和计算开销增加。Edge Impulse提供了特征重要性评估工具,可以自动筛选出对分类最有贡献的特征。

  • 特征重要性排序:基于随机森林或梯度提升树,计算每个特征对分类准确率的贡献度。
  • 主成分分析(PCA):将高维特征投影到低维空间,保留主要方差。Edge Impulse内置了PCA模块,可设置保留的方差比例(如95%)。
  • 领域知识约束:根据物理意义选择特征。例如,对于旋转机械,优先选择与转速相关的频域特征(如1倍频、2倍频能量)。

4.4 案例拆解:工业风扇轴承异常检测

下面通过一个完整的案例,展示传感器数据与特征工程在Edge Impulse中的实际应用。

4.4.1 背景与目标

某工厂的冷却风扇需要24小时连续运行。轴承磨损是主要的故障模式,早期表现为微弱的振动异常。目标是在轴承完全失效前提前48小时发出预警。约束条件:使用现有的低成本IMU传感器(采样率400Hz,6轴),边缘设备计算资源有限(Cortex-M4处理器,内存256KB)。

4.4.2 数据采集与预处理

  • 数据采集:在风扇轴承座上安装IMU,以400Hz采样率连续采集加速度计和陀螺仪数据。正常运行数据采集7天,模拟故障数据通过人为注入不平衡质量块(模拟磨损)采集2天。
  • 去噪:使用4阶Butterworth低通滤波器,截止频率100Hz。因为轴承故障特征频率通常在50-200Hz之间,100Hz截止频率可以保留主要故障成分,同时滤除高频噪声。
  • 归一化:使用Z-score标准化,参数从训练集计算。加速度计和陀螺仪分别独立标准化。
  • 分段:窗口长度2秒,重叠率50%。每2秒生成一个样本,1分钟数据产生59个样本。训练集包含约5000个正常样本和1000个异常样本。

4.4.3 特征提取与模型训练

在Edge Impulse中,使用“Spectral Features”DSP模块,对每个轴提取以下特征:RMS、频谱质心、谱熵、峰值频率、特定频带能量(50-100Hz、100-150Hz、150-200Hz)。每个轴提取8个特征,6轴共48个特征。

使用K-means聚类(k=2)作为异常检测模型。训练后,模型在验证集上的F1分数为0.92。特征重要性分析显示,加速度计Z轴(垂直于轴承座)的RMS和100-150Hz频带能量是最重要的特征。

4.4.4 结果与复盘

指标训练集验证集测试集(模拟故障)
准确率98.2%95.1%93.7%
召回率(异常检出)97.5%94.0%91.2%
误报率1.1%2.3%3.5%
推理时间(Cortex-M4)--18ms

复盘经验:

  • 窗口长度的影响:尝试过1秒窗口,召回率下降至85%,因为1秒窗口无法捕捉完整的振动周期(风扇转速1200rpm,周期0.05秒,但轴承故障特征频率需要多个周期才能稳定)。
  • 归一化的关键性:如果对整个数据集(包括测试集)计算归一化参数,验证集F1分数会虚高至0.97,但实际部署时性能下降至0.88。使用训练集计算参数后,实际性能与验证集一致。
  • 特征冗余:陀螺仪的特征贡献度较低(重要性排名后10位),但保留它们并未显著增加计算开销。在资源受限时,可以移除陀螺仪特征,推理时间从18ms降至14ms。

4.5 常见误区与总结

误区1:忽略采样率与信号频率的匹配。如果采样率低于信号最高频率的2倍,频谱会发生混叠,频域特征完全失真。务必先进行频谱分析,确认信号带宽。
误区2:窗口长度设置不当。窗口过短会丢失低频信息,窗口过长会延迟异常检测的响应时间。对于旋转机械,窗口至少应包含10个旋转周期。
误区3:归一化参数计算错误。使用全数据集计算归一化参数会导致数据泄漏,使模型评估结果过于乐观。必须严格分离训练集和测试集。
误区4:特征过多导致过拟合。在样本量有限的情况下,过多的特征会使模型记住噪声。使用特征重要性评估和PCA进行降维。
总结复盘:传感器数据与特征工程是异常检测模型成功的关键。核心要点包括:①根据物理场景选择合适的传感器和采样率;②预处理必须包含去噪、归一化和分段,且归一化参数只能从训练集计算;③时域特征适合捕捉冲击和幅值变化,频域特征适合捕捉周期性异常,两者应结合使用;④特征选择应结合领域知识和数据驱动方法;⑤在Edge Impulse中,充分利用DSP模块和特征重要性工具,可以显著提升开发效率。掌握这些方法,才能为后续的阈值设置和模型调优奠定坚实基础。