相关疑难解决方法(0)

如何将numpy.linalg.norm应用于矩阵的每一行?

我有一个2D矩阵,我想采取每行的规范.但是当我numpy.linalg.norm(X)直接使用时,它需要整个矩阵的范数.

我可以通过使用for循环然后取每个行的规范来获取每行的范数X[i],但是因为我有30k行所以需要很长时间.

有什么建议可以找到更快的方法吗?或者是否可以应用于np.linalg.norm矩阵的每一行?

python numpy

62
推荐指数
4
解决办法
4万
查看次数

如何提高这个微距离Python函数的性能

当使用自定义距离度量函数进行聚类算法时,我遇到了性能瓶颈sklearn.

Run Snake Run显示的结果如下:

在此输入图像描述

显然问题在于dbscan_metric功能.该功能看起来非常简单,我不太清楚加速它的最佳方法是:

def dbscan_metric(a,b):
  if a.shape[0] != NUM_FEATURES:
    return np.linalg.norm(a-b)
  else:
    return np.linalg.norm(np.multiply(FTR_WEIGHTS, (a-b)))
Run Code Online (Sandbox Code Playgroud)

任何关于导致它变慢的想法都会受到高度赞赏.

python optimization numpy scikit-learn

5
推荐指数
1
解决办法
378
查看次数

标签 统计

numpy ×2

python ×2

optimization ×1

scikit-learn ×1