Python 不拟合模型进行预测(knn)
当我在下面的代码中注释Python 不拟合模型进行预测(knn),python,machine-learning,scikit-learn,Python,Machine Learning,Scikit Learn,当我在下面的代码中注释knn.fit(x\u tr,y\u tr)并运行时,它给出了一个错误notfitteError:这个KNeighborsClassifier实例还没有安装。使用此方法之前,请使用适当的参数调用“fit”。 knn = KNeighborsClassifier(n_neighbors=1) print(knn) # knn.fit(x_tr, y_tr) # print(knn) pred = knn.predict(x_cv) acc = accuracy_score(y
knn.fit(x\u tr,y\u tr)
并运行时,它给出了一个错误notfitteError:这个KNeighborsClassifier实例还没有安装。使用此方法之前,请使用适当的参数调用“fit”。
knn = KNeighborsClassifier(n_neighbors=1)
print(knn)
# knn.fit(x_tr, y_tr)
# print(knn)
pred = knn.predict(x_cv)
acc = accuracy_score(y_cv, pred, normalize=True) * float(100)
我的缺点是我没有在任何变量中保存knn.fit(…)
,程序如何知道我没有安装
另外,当我在启动和安装后打印模型时,它完全相同
KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',
metric_params=None, n_jobs=None, n_neighbors=1, p=2,
weights='uniform')
KNeighborsClassifier(algorithm='auto', leaf_size=30, metric='minkowski',
metric_params=None, n_jobs=None, n_neighbors=1, p=2,
weights='uniform')
如果查看
KNeighborsClassifier
code,knn
实例将在self
中存储经过训练的参数/信息。这就是程序知道的原因
有关详细信息,请在触发knn.predict
时查看
- 它首先在中调用
neigh\u dist,neigh\u ind=self.kneighbors(X)
(第175行)sklearn\neights\\u classification.py
- 接下来,它在
(第585行)中调用sklearn\neights\\u base.py
check\u is_fitted(self)