我有一个numpy数组,如下所示:
array([[2, 3],
[4, 6],
[6, 6]])
我对在每一行之间做点积运算很感兴趣。例如,假设我想将第一行与自身点对齐:
ans = x[0,:] @ x[0,:].T
ans = 13
第二个:
ans = x[1,:] @ x[1,:].T
ans = 52
ans = x[2,:] @ x[2,:].T
and = 72
在不使用numpy.apply_along_axis
的情况下,是否有方法对该操作进行矢量化?期望的输出是
array([13, 52, 72])
不一定是这个特定的操作。具体来说,我正在执行一个支持向量机实现,我有几个核,我想对我的m x d特征矩阵进行矢量化。我该怎么做呢?
np.square(x[:,0]) + np.square(x[:,1])
输出array([13, 52, 72], dtype=int32)
你可以做
numpy.linalg.norm(a,axis=1)**2
给出每一行的范数并对其平方