📄 knnaba.m
字号:
k = 3; % k in "KNN"
fprintf('%g-NNR for the abalone data set:\n', k);
load abalone.dat;
data = abalone;
data_n = size(data, 1);
fprintf('Sample data is odd-indexed.\n');
sample = data(1:2:data_n, :);
fprintf('Test data is even-indexed.\n');
test = data(2:2:data_n, :);
%fprintf('Remap data''s outputs to [1, class_n] ...\n');
%[sample, test] = maplabel(sample, test);
fprintf('Feature-wise normalization...\n');
sample_feature = sample(:, 1:end-1);
test_feature = test(:, 1:end-1);
[new_sample_feature, mu, sigma] = normal(sample_feature);
new_test_feature = normal(test_feature, mu, sigma);
sample = [new_sample_feature, sample(:, end)];
test = [new_test_feature, test(:, end)];
output = knn(sample, test, k);
correct_count = sum(output == test(:, end));
test_n = size(test, 1);
recog_rate = correct_count/test_n*100;
fprintf('Recognition rate = %g/%g = %5.2f%%\n', correct_count, test_n, recog_rate);
fprintf('Root-mean-squared error = %5.2f years\n', sum(abs(output-test(:,end)))/size(test,1));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -