updated niche/functional

This commit is contained in:
tekhnofiend
2008-02-17 22:42:37 +00:00
parent f745abd4b1
commit 799ff2a3d7
+59 -47
View File
@@ -7,48 +7,13 @@ load gene_results;
g1_indices = find(phases == g1_phase);
nong1_indices = find(phases ~=g1_phase & phases ~= unknown_phase);
used_scores = pc_scores;
used_scores = ic_scores;
used_scores = used_scores([1],:);
svm_data = [used_scores(:,g1_indices) used_scores(:,nong1_indices)]';
svm_labels = [1 * ones(length(g1_indices),1);
-1 * ones(length(nong1_indices),1)];
%{
correct = 0;
same_p = 0;
for i = 1:size(svm_data, 1)
train_data = svm_data([1:(i-1) (i+1):end]);
train_labels = svm_labels([1:(i-1) (i+1):end]);
g1_mu = mean(train_data(find(train_labels == 1)));
g1_sigma = std(train_data(find(train_labels == 1)));
nong1_mu = mean(train_data(find(train_labels == -1)));
nong1_sigma = std(train_data(find(train_labels == -1)));
p_g1 = normpdf(svm_data(i), g1_mu, g1_sigma);
p_nong1 = normpdf(svm_data(i), nong1_mu, nong1_sigma);
if svm_labels(i) == 1
if p_g1 > p_nong1
correct = correct + 1;
end
else
if p_nong1 > p_g1
correct = correct + 1;
end
end
if p_g1 == p_nong1
same_p = same_p + 1;
end
end
correct / size(svm_data,1)
%}
@@ -58,27 +23,22 @@ svmlwrite('funknet', svm_data, svm_labels);
% set initial svm options %
svm_options = ...
svmlopt('Kernel', 2, 'KernelParam', 3, 'C', .2, 'ComputeLOO', 1, ...
'ExecPath','/home/niche/matlab/toolboxes/svml');
'ExecPath','../../../../matlab/toolboxes/svml');
% let's do a retarded random sampling of sigma and C on a grid!
num_sigma_epochs = 75;
%100;
sigma_init = 1e-3;
%1e-4;
num_sigma_epochs = 100;
sigma_init = 1e-4;
sigma_grow = 1.1;
%num_order_epochs = 4;
%order_init = 1;
%order_inc = 1;
num_C_epochs = 3;
%81;
C_init = 30;
%1e-2;
C_grow = 1 + 1/3;
%1.1;
num_C_epochs = 81;
C_init = 1e-2;
C_grow = 1.1;
@@ -142,3 +102,55 @@ end
% find a way to do fPCA/fICA using multiple sets of curves
%{
correct = 0;
same_p = 0;
for i = 1:size(svm_data, 1)
train_data = svm_data([1:(i-1) (i+1):end]);
train_labels = svm_labels([1:(i-1) (i+1):end]);
g1_mu = mean(train_data(find(train_labels == 1)));
g1_sigma = std(train_data(find(train_labels == 1)));
nong1_mu = mean(train_data(find(train_labels == -1)));
nong1_sigma = std(train_data(find(train_labels == -1)));
p_g1 = normpdf(svm_data(i), g1_mu, g1_sigma);
p_nong1 = normpdf(svm_data(i), nong1_mu, nong1_sigma);
if svm_labels(i) == 1
if p_g1 > p_nong1
correct = correct + 1;
end
else
if p_nong1 > p_g1
correct = correct + 1;
end
end
if p_g1 == p_nong1
same_p = same_p + 1;
end
end
correct / size(svm_data,1)
%}