机器学习入门KNN近邻算法(一) (6)

机器学习入门KNN近邻算法(一)

# 创建多个算法模型,采用不同的参数,查看回归的结果 knn1 = KNeighborsRegressor(n_neighbors=1) knn2 = KNeighborsRegressor(n_neighbors=7) knn3 = KNeighborsRegressor(n_neighbors=21) knn1.fit(x.reshape(-1,1),y) knn2.fit(x.reshape(-1,1),y) knn3.fit(x.reshape(-1,1),y) y1_ = knn1.predict(X_test) y2_ = knn2.predict(X_test) y3_ = knn3.predict(X_test) # 拟合度过高,称为过拟合,对数据分析的过于在意局部特征 plt.plot(X_test,y1_,color='orange',label='n_neighbors=1') # 拟合度刚好,称为最佳拟合,这是机器学习的终极目标,调参就是为了达到这个目的 plt.plot(X_test,y2_,color='cyan',label='n_neighbors=7') # 拟合度太差,称为欠拟合,对数据特征分析不透彻,数据有效特征太少,样本数量太少 plt.plot(X_test,y3_,color='red',label='n_neighbors=21') plt.scatter(x,y,color='blue',label='true-data') plt.legend()

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zyyjwd.html