我正在构建一个K-最近邻分类器,我想让我的距离计算一次完成(这也有帮助,因为非负载版本需要花费很长时间才能运行)。
我有一个大小为28000个示例x 784个特征的测试数据集,我有一个大小为42000个示例x 784个特征的训练数据集。回答我的问题的代码应该产生一个大小为28000 x 42000的矩阵,其中每一行都包含从该测试示例到42000个训练样例中的每一个的距离。
我提出的最好的方法是使用sum和bsxfun为每个测试示例一次计算所有距离,但我仍然需要遍历所有28000个示例,正如我之前所说,它需要一段时间。
答案 0 :(得分:2)
pdist2(A, B)
将完全按照您的需要进行操作,其中A
和B
分别是您的训练和测试数据集。这是参考:
http://www.mathworks.com/help/stats/pdist2.html