我有这个代码,它正在执行以下操作:将numpy向量乘以矩阵并在此行中获取topN元素。
import bottleneck as bn
import numpy as np
res_row = np.array(np.dot(row, q_matrix))
topn_elements = bn.argpartition(-1 * res_row, top_n)[0][:N] # -1 to get N largest values
我不想做的事情:我不想在多重和部分排序之间存储数组,在我的例子中它是res_row
。也许,有一些方法可以生成堆并添加每个生成的乘法元素?