首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >学习pairwise_distances是不精确的吗?

学习pairwise_distances是不精确的吗?
EN

Stack Overflow用户
提问于 2014-10-31 10:45:41
回答 1查看 729关注 0票数 0

pairwise_distances提供了与数组X的距离矩阵,但是对于某些输入,结果似乎并不精确。

示例:

代码语言:javascript
复制
from sklearn.metrics.pairwise import pairwise_distances
X = [[-0.903858372568, -0.5521578], [-0.903858372568, -0.55215782]]
print pairwise_distances(X)

给出以下输出:

代码语言:javascript
复制
[[ 0.  0.]
[ 0.  0.]]

虽然距离是0.00000002。

第二个例子:

代码语言:javascript
复制
X = [[-0.903858372568, -0.5521578], [-0.903858372568, -0.552157821]]

给出

代码语言:javascript
复制
[[  0.00000000e+00   2.10734243e-08]
[  2.10734243e-08   0.00000000e+00]]

这里有一个距离,但只有第一个数字是正确的。

对于我的应用程序来说,如果输出可以是零,尽管有一段距离,这是不可取的。有什么提高精度的好方法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-31 11:37:09

我没有探究为什么科学知识给出如此不精确的结果,但它似乎更准确。试试这个:

代码语言:javascript
复制
from scipy.spatial.distance import pdist, squareform
squareform(pdist(X))

例如,

代码语言:javascript
复制
X = [[-0.903858372568, -0.5521578], [-0.903858372568, -0.552157821]]

给出

代码语言:javascript
复制
array([[  0.00000000e+00,   2.10000000e-08],
       [  2.10000000e-08,   0.00000000e+00]])
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26672791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档