我正在使用 umap-learn 0.5.3 对 Numpy 数组进行降维。 该数组(如 arrival_tfidf)的形状为 (7898, 2969),是 7898 条消息的 TF-IDF 转换,包含 float64 元素。运行以下代码片段时
import umap.umap_ as umap
umap_embeddings = (umap.UMAP(n_neighbors=15,
n_components=4,
metric='cosine',
random_state=42)
.fit_transform(arrival_tfidf))
我收到以下错误
ValueError: cannot assign slice from input of different size
但是,当使用相同形状的随机 Numpy 数组时,
random_df = np.random.rand(7898, 2969)
而不是arrival_tfidf
,一切正常。
我注意到 arrival_tfidf 相当稀疏,即大约 100.000 个元素。
我将 pynndescent 降级到 0.5.8,这有帮助