创新点:这篇文献的创新点在于马尔可夫场(MTF)与卷积神经网络(CNN)相结合,融入多头注意力机制,实现故障分类。本程序将原文中的马尔可夫场改进为递归图(RP),RP将一维信号转换为二维特征图,而CNN可以对这些特征图进行自适应的特征提取和分类,融合多头注意力机制有效把握提取特征的贡献程度,实现了故障的准确分类。
故障识别流程:https://mbd.pub/o/bread/ZZmVm5du
RP-CNN-Attention进行故障识别的方法具有几个创新性的方面:
输入数据格式:(一行一个样本,最后一列表示故障所属类别标签)
训练曲线:准确率和损失变化图
% 获取数据集的样本数量和每个样本的长度
[numSamples, sampleLength] = size(data);
% 循环处理每个样本数据
for sampleIdx = 1:numSamples
%% 生成数据
% 从data中获取当前样本数据
featureData = data(sampleIdx, 1:end - 1);
% 归一化数据到 [0, 1] 范围
normalizedData = (featureData - min(featureData)) / (max(featureData) - min(featureData));
numDataPoints = length(normalizedData);
%% 生成递归图RP
% 转换为相空间,每个元素为当前位置和下一个位置的高度
phaseSpace = [normalizedData(1:end - 1)', normalizedData(2:end)'];
% 计算距离矩阵R
R = zeros(numDataPoints - 1, numDataPoints - 1);
for i = 1:numDataPoints - 1
for j = 1:numDataPoints - 1
R(i, j) = sum((phaseSpace(i, :) - phaseSpace(j, :)) .^ 2);
end
end
R = (R - min(min(R))) / (max(max(R)) - min(min(R))) * 4;
欢迎感兴趣的小伙伴点击左下角“阅读原文”或上方链接获得完整版代码哦~,关注小编会继续推送更有质量的学习资料、文章程序代码~