示例代码:
import numpy as np
from scipy.spatial import distance
face_models = np.random.randn(1000000,256)
face_labels = np.random.randn(1000000)
score = distance.cdist(face_models, np.random.randn(256))
这段代码有效地计算了余弦距离得分,唯一的问题是,对于更大的矩阵,会发生memoryError,这是正常的,我也尝试使用Dask,但是使用Dask时,这个问题更糟,这时我不断更新face_models和face_labes。有什么方法可以计算矩阵中每个矢量的余弦距离,例如Dask-bag或其他任何选项?