《表1 改变n和d时各算法运行时间比较 (单位:s)》

《表1 改变n和d时各算法运行时间比较 (单位:s)》   提示:宽带有限、当前游客访问压缩模式
本系列图表出处文件名:随高清版一同展现
《基于CUDA的KNN算法并行化研究》


  1. 获取 高清版本忘记账户?点击这里登录
  1. 下载图表忘记账户?点击这里登录

本实验采用模拟数据,设定测试集的大小m为1200,训练集n的大小为210到215,这样可以方便线程的访问,测试集与训练集的维度d相同,k的值设为25.由于k值较小,所以经过评估后算法采用基于k次最小值查找的最近邻选择.选择了两种算法来与GS_KNN算法作对比.第一种算法选用了基于CPU的超快近似最近邻搜索算法库,即ANN-C++[16],另一种选用了BF-CUDA算法.改变n和d的大小,实验结果如表1所示,可以看出GS_KNN算法在相同数据集上的性能上要优于ANN-C++算法和BF-CUDA算法,并且随着训练集大小和维度的增加,GS_KNN算法相较于这两个算法的加速比也越来越高,当n等于215,d等于256时,GS_KNN算法相对于ANN-C++算法的加速比为145,相对于BF-CUDA算法的加速比为2.8.