You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何确认KNeighborsClassifier的fit方法已执行?getattr无法判断

验证KNN分类器fit方法是否执行的几种方式
  • 检查私有属性_fit_X和_y
    scikit-learn的KNeighborsClassifier执行fit后,会将训练特征和标签分别存在_fit_X和_y这两个私有属性中。未执行fit时访问这两个属性会触发AttributeError,执行后则能看到对应训练数据:

    # 执行fit后运行以下代码
    print(knn._fit_X)
    print(knn._y)
    
  • 通过预测操作验证
    未执行fit的KNN模型无法进行预测,调用predict会抛出NotFittedError。可以用异常捕获来判断:

    try:
        knn.predict(X_train.iloc[:1])
        print("fit方法已执行")
    except Exception as e:
        print("fit方法未执行,错误信息:", e)
    
  • 查看classes_属性
    执行fit后,模型会生成classes_属性,存储训练数据中所有唯一的标签值。未执行fit时访问该属性会报错:

    print(knn.classes_)
    

内容的提问来源于stack exchange,提问作者Miguel_s

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 02:15:25