1.一种基于MPI并行化的参考点k近邻分类方法,其特征在于:该方法包括以下步骤:S1:基于参考点的k近邻算法利用样本点到若干参考点的距离来度量彼此间的位置差异,定义位置差异因子LDBF,设样本点X属于n维空间Rn,设第i个样本则两个样本xi和yi之间的LDBF定义为:计算训练样本到参考点的相似度,并产生有序的相似度序列;
S2:根据测试样本与参考点的相似度从有序序列中搜索训练集中近似近邻样本;
S3:从搜索到的近似近邻样本中计算与测试样本的确切相似度,从而找到k个近邻样本并判断类别;
所述步骤S2‑S3具体为:首先将训练数据集均匀分配到每个处理器,即每个进程拥有的训练集Ti为原始的1/p,p为进程序号,并将待分类样本ci逐个传递给各个进程,同时进程根据本地训练集对传给它的样本搜索本地k近邻Ni,并将Ni和前一个进程传给它的k近邻N′i+1综合比较,从而获得近似k近邻N′i,并传递给下一个进程;最后一个进程p‑1将前一个进程传给它的k近邻与计算获得的本地k近邻进行比较和选择,最终获得准确k近邻并进行分类。
2.根据权利要求1所述的一种基于MPI并行化的参考点k近邻分类方法,其特征在于:所述基于参考点的k近邻算法具体为:S101:给定数据集D属于d维空间Rd,任取一样本点A∈D,k是要查找的近邻数,参考点Oi的第i个维度的值为1,其他维度的值为0;参考点数N=logd,ε=logn,其中d为训练集的维度,n为训练集的容量;
S102:对数据集合归一化并计算所有样本点相对于第i个参考点的LDBFi,其中1≦i≦N;
S103:根据LDBFi对所有样本点进行排序;
S104:第i个有序序列产生一个以A为中心的子序列,子序列的长度为2k*ε;N个子序列构成一个大的子序列,长度为N*2*k*ε;
S105:在大的子序列中计算所有点到A点的欧式距离,k个最小欧式距离所对应的样本点即是A的k近邻样本;
S106:A的预测标签即为k近邻中出现最多的标签;
S107:若所有样本点的近邻都被查找到,则终止算法;否则更新样本点,并转到步骤S106。