【发布时间】:2021-02-24 17:54:39
【问题描述】:
我正在尝试为包含 25000 行的数据集 A 找到最近的邻居,为此,我正在尝试将数据集 B 拟合到 KNN 模型由 1300 万行组成,目标是找到与数据集 A
相似的 s 25000 行数据集 Bmodel_knn= NearestNeighbors(n_neighbors=10, algorithm = 'kd_tree')
model_knn.fit(B)
knn_distances,knn_indices=model_knn.kneighbors(A.values, n_neighbors=10)
在这里,当我将 B 拟合到 600000 行时,没有问题
model_knn.fit(knn_test_pd[:600000])
超过 600000 模型不拟合,没有错误,但拟合 600000 需要 2 秒超过 600000 所需时间,我拟合的数据是缩放数据
我尝试拆分数据框并对其进行拟合,这是正确的方法吗?那么模型也需要数小时才能适应
splited_B=np.array_split(B, 113)
model_knn= NearestNeighbors(n_neighbors=10, algorithm = 'kd_tree')
for df in splited_B:
model_knn.fit(df)
我应该怎么做才能让这些大数据适合knn?或者有没有其他类似 knn 的模型可以接受大数据集?
【问题讨论】:
-
请不要引用格式您的文本(已编辑)。
-
“不合适”是什么意思?你有什么错误吗?请编辑和更新您的帖子以澄清。
-
没有错误,但拟合 600000 需要 2 秒超过 600000 小时数,并且数据是缩放数据
标签: python pandas machine-learning scikit-learn knn