问题标签 [pdist]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
304 浏览

matlab - 如何分别计算不同维度的欧几里得距离?

使用时遇到一个问题pdist,如果您能给我一些建议,将非常感谢。pdist(D)通常给出多维距离的总和,但是,我想单独获得距离。例如,我有S一个 10*2 矩阵的数据集,我正在使用pdist(S(:,1))pdist(S(:,2))分别获取距离,但是当数据有很多维度时,这似乎非常低效。有没有其他方法可以更有效地实现这一目标?提前致谢!

0 投票
4 回答
1041 浏览

python - 从一个点到所有其他点的距离之和

我有两个清单

available_points = [[2,3], [4,5], [1,2], [6,8], [5,9], [51,35]]

solution = [[3,5], [2,1]]

我试图弹出一个点available_points并将其附加solution从该点到所有点的欧几里得距离之和solution最大的地方。

所以,我会得到这个

solution = [[3,5], [2,1], [51,35]]


我能够像这样选择最初的 2 个最远点,但不知道如何继续。

这给了我

solution = array([[1, 2], [51, 35]])

0 投票
1 回答
171 浏览

matlab - 使用 matlab matconvnet 训练网络

我想使用 matlab 和 matconvnet-1.0-beta25 训练我的网络。我的问题是回归,我使用pdist损失函数来获取 mse。输入数据为56*56*64*6000,目标数据为56*56*64*6000,网络架构如下:

我将(我的名字)中的getSimpleNNBatch(imdb, batch)功能更改ncnn_train如下:

因为我的标签是多维的。我也从更改errorFunction为:cnn_trainmulticlassesnone

并将error变量从:

至:

我的第一个问题是为什么res(end).x上面命令中的第三维是 1 而不是 64?这是56*56*1*100(100 是批次)。

我犯错了吗?

这是结果:

这是我的网络架构图像

0 投票
3 回答
379 浏览

matlab - 绘制点之间的距离matlab

我做了一个10分的情节

10 10 248,628959661970 66,9462583977501 451,638770451973 939,398361884535 227,712826026548 18,1775336366957 804,449583613070 683,838613746355 986,104241895970 783,736480083219 29,9919502693899 534,137567882728 535,664190667238 885,359450931142 87,0772199008924 899,004898906140 990 990

第一列作为 x 坐标,另一列作为 y 坐标

导致以下情节:使用以下代码:scatter(Problem.Points(:,1),Problem.Points(:,2),'.b') 阴谋

然后我还使用计算了欧几里得距离Problem.DistanceMatrix = pdist(Problem.Points); Problem.DistanceMatrix = squareform(Problem.DistanceMatrix);

当距离大于某个值时,我将距离替换为 1*10^6。这导致下表:

欧几里得距离

然后,我想绘制对应点之间的线,最好是它们的距离,但前提是距离< 1 * 10 ^ 6。

具体来说,我想绘制线 [1,2] [1,4] [1,7] [2,4] 等。

我的问题是,这可以做到吗?怎么做?

0 投票
1 回答
489 浏览

python - 2 组不相等的点之间的最小距离

我希望能够找到 xy 平面中两组点之间的最小距离。假设第一组点集 A 有 9 个点,第二组点集 B 有 3 个点。我想找到将集合 A 中的每个点连接到集合 B 中的点的最小总距离。显然会有一些重叠,甚至可能集合 B 中的一些点没有链接。但是集合 A 中的所有点都必须有 1 个并且只有 1 个链接从它到集合 B 中的一个点。

如果两个集合的点数相等,我已经找到了解决这个问题的方法,这里是它的代码:

0 投票
2 回答
191 浏览

python - 如何找到大于某个余弦距离值的值对?

我有一个数组:

我用“pdist”计算了它的余弦距离,cosine_distance=1-pdist(array, metric='cosine')得到了距离数组:

现在,我只想得到余弦距离大于 0.4 且小于 0.49 的那些对。我已经计算出大于 0.4 的值的数量number_points=len([1 for i in cosine_distance if i >= 0.4])。但无法得到那些对。

0 投票
0 回答
122 浏览

matlab - Matlab内存不足。使用 pdistmex 时出错

我有一个大小为 (262322x4) 的矩阵 M。在运行 knn 插补时:

我收到以下错误:

此错误是由于内存限制还是其他原因?

(注:内存大小:8GB)

0 投票
0 回答
229 浏览

matlab - 具有 3D 坐标的两个矩阵之间的最小距离

我有两个带有坐标的矩阵((intx(i),inty(i),intz(i))和Ceres(j)),我需要找到彼此最接近的两个点。从 MATLAB 代码中,我希望得到第一个矩阵中的点之间的距离,即最接近第二个矩阵 Ceres 上的点。

但是,我没有在 disttemp 中将这个最小值作为单个数字获取,而是得到了一个长度数组(ceres_lim)。

我究竟做错了什么?

0 投票
1 回答
65 浏览

python - scipy pdist 只得到两个最近的邻居

我一直在用 scipy 计算成对距离,我正试图获得到两个最近邻居的距离。我目前的工作解决方案是:

但是,在我的情况下,方形方法在空间上非常昂贵并且有些多余。我只需要两个最近的距离,而不是全部。有简单的解决方法吗?

谢谢!

0 投票
1 回答
263 浏览

python - 为 Scipy 的 cdist(或 pdist)使用具有自定义功能的附加 kwargs?

我正在使用带有 scipy 的cdist函数的自定义度量函数。自定义功能类似于

其中 k 是任意系数。

理想情况下,我希望在像这样调用 cdist 时将 k 作为参数传递: d_ar = scipy.spatial.distance.cdist(arr1, arr2, metric=cust_metric(k=7)) 但是,这会引发错误。

我想知道是否有一个我可能会丢失的简单解决方案?一个快速但不优雅的解决方法是将 k 声明为全局变量并在需要时对其进行调整。