详尽 channel/feature 选择中的降维
Dimensionality reduction in exhaustive channel/feature selection
我的数据包含 16 个通道 x 128 个样本 x 400 个试验。我想在此数据集中执行详尽的频道选择。我应该在哪里应用PCA?
unsortedChannelIndices = [1:16]
sortedChannelIndices = [];
%Option 1
reducedData = PCA(data, classIndeces)
for chIdx = 1:length(unsortedChannelIndices)
for c=1:length(unsortedChannelIndices)
thisChannel = unsortedChannelIndices(c)
thisChannelSet = [sortedChannelIndices, thisChannel];
%Option 1
thisData = reducedData(thisChannelSet,:,:);
%Option 2
thisData = PCA(data(thisChannelSet, classIndeces)
thisPerformance(c) = eval_perf(thisData);%crossvalidation
end
[performance(chIdx),best] = max(thisPerformance);
sortedChannelIndices = [sortedChannelIndices,unsortedChannelIndices(best)];
unsortedChannelIndices(best) = [];
end
PCA 或任何降维技术应应用于将要分析的数据。如果我们想要评估对应于较少通道(例如1:4)的子集的性能,则应在该数据(PCA(数据([1:4]),:,:)中应用任何降维技术。因此,选项2是正确的选项。
我的数据包含 16 个通道 x 128 个样本 x 400 个试验。我想在此数据集中执行详尽的频道选择。我应该在哪里应用PCA?
unsortedChannelIndices = [1:16]
sortedChannelIndices = [];
%Option 1
reducedData = PCA(data, classIndeces)
for chIdx = 1:length(unsortedChannelIndices)
for c=1:length(unsortedChannelIndices)
thisChannel = unsortedChannelIndices(c)
thisChannelSet = [sortedChannelIndices, thisChannel];
%Option 1
thisData = reducedData(thisChannelSet,:,:);
%Option 2
thisData = PCA(data(thisChannelSet, classIndeces)
thisPerformance(c) = eval_perf(thisData);%crossvalidation
end
[performance(chIdx),best] = max(thisPerformance);
sortedChannelIndices = [sortedChannelIndices,unsortedChannelIndices(best)];
unsortedChannelIndices(best) = [];
end
PCA 或任何降维技术应应用于将要分析的数据。如果我们想要评估对应于较少通道(例如1:4)的子集的性能,则应在该数据(PCA(数据([1:4]),:,:)中应用任何降维技术。因此,选项2是正确的选项。