csdn_black 2018-02-28 02:50 采纳率: 50%
浏览 3704
已采纳

sk-learn中KNN算法能动态的构建ball-tree吗

比如我用100个训练集去训练,训练完后我用一个数据的测试集去测试,测试完后我希望将这一个测试集加到训练集中去,必须重新构建这棵ball-tree吗(假设用的是这个树)??
我看了ball-tree的那个5种构建树的论文:Five Balltree Construction
Algorithms。论文中是说这5种构建树,其中2种是online,但sk-learn不知道怎么用
跪求大神指导!!万分感谢

贴上代码:
X1=[[0,0],[2,4],[5,5],[10,10],[15,15]]
Y1=[0,1,1,0,0]
clf = neighbors.KNeighborsClassifier(algorithm="ball_tree", metric='euclidean',n_neighbors=5)
clf.fit(X1,Y1)
a=clf.predict([[1,3]])
print(a)

就是我想预测完[1,3]之后,希望将它加到之前构建的ball_tree中,而不是将[1,3]再加到X中重新fit,不知道有没有办法,求指教,急急急。万分感谢

  • 写回答

3条回答 默认 最新

  • Boover 2018-02-28 04:12
    关注

    sklearn 的 KNN 不能使用 incremental learning,每次训练都需要重新构建ball-tree。
    在ipython中,运行"knn.fit??"可以查看fit的具体实现。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题