当我在我的代码中评估执行时间时,我发现以下三行代码占用了几乎 99% 的运行时间,所以我的目标是优化这三行代码。
以下代码的细节是:R,P,Q都是稀疏矩阵,我使用scipy.sparse.lil_matrix,数据类型是np.float64,而alpha,beta只是float常量。
eij = R[i, j] - np.dot(P[i, :], Q[:, j]) (~9s)
for k in range(K): (~11s)
P[i, k] += alpha * (2 * eij * Q[k, j] - beta * P[i, k])
Q[k, j] += alpha * (2 * eij * P[i, k] - beta * Q[k, j])
我怎样才能让他们跑得更快!!!???