以下X
是训练矩阵,test_feature
是测试数组。
squared_euclidian = np.sum(np.square(X - test_feature), axis=1)
squared_euclidian
是Squared Euclidian distance
对于具有完整numpy矩阵的输入数组中的欧几里德距离
dist = np.sqrt(squared_euclidian)
和RBF(高斯)内核按this幻灯片5
test_sigma = np.square(np.std(test_feature))
dist = np.exp(-1 * (squared_euclidian / test_sigma))
我在2000个实例的数据集上测试了这些函数,其中我对欧几里得的准确率为91%,而另一个则为54%。
RBF内核的公式是错误的吗?
答案 0 :(得分:0)
这不是我在幻灯片5中看到的正确公式吗?
repr
查看有关dist = np.exp(-.5 * squared_euclidian / np.square(test_feature.std()))
的估算偏差的说明here