Kernel KNN函数
代码
knn.m
function [ y ] = knn( X, X_train, y_train, K)
%KNN K-Nearest Neighbors Algorithm.
%
% INPUT: X: testing sample features, P-by-N_test matrix.
% X_train: training sample features, P-by-N matrix.
% y_train: training sampele labels, 1-by-N vector.
% K: take k in k-Nearest Neighbors.
% OUTPUT: y: predicted labels, 1-by-N vector.
%Author: X-Lion
%Date: 20150807
[~,N_test] = size(X);
predicted_label = zeros(1,N_test);
for i = 1:N_test
% calculate the K nearest neighbors and the distance
[dists,neighbors] = top_K_neighbors(X_train,y_train,X(:,i),K);
% recognize