2015-10-13 8 views
1

Мои данные состоят из 16channelsx128samplesx400trials. Я хочу выполнить исчерпывающий выбор канала в этом наборе данных. Где я должен применять СПС?Уменьшение размерности в исчерпывающем канале/выбор функции

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 

ответ

0

PCA или любой метод уменьшения размерности следует применять с данными, которые будут проанализированы. Если мы будем оценивать производительность подмножества, соответствующего меньшим каналам (например, 1: 4), в этих данных следует применять любой метод уменьшения размерности (PCA (данные ([1: 4),:, :). Следовательно, Вариант 2 является правильным вариантом.