当前位置: 首页 > news >正文

网站建设合同违约企业网站托管外包平台

网站建设合同违约,企业网站托管外包平台,重庆网站建设运营,adc网站建设前言 KNN算法是机器学习中较为简单的入门算法#xff0c;其主要思想是选取k个与待预测点相近的数据#xff0c;观察他们的类别#xff0c;本着离谁近就更像谁的思路对于待预测点进行预测#xff0c;本文将针对使用sklearn进行KNN算法的使用进行详解 数据预处理 在正式开…前言 KNN算法是机器学习中较为简单的入门算法其主要思想是选取k个与待预测点相近的数据观察他们的类别本着离谁近就更像谁的思路对于待预测点进行预测本文将针对使用sklearn进行KNN算法的使用进行详解 数据预处理 在正式开始之前我们先要进行数据预处理 数据预处理有两种常见的方式MinMaxScaler和StandardScaler MinMaxScaler: −()()−()\frac{−()}{()−()}Xmax(X)−min(X)X−max(X)​ StandardScaler: −()()\frac{−()}{()}Xstd(X)X−mean(X)​ from sklearn.preprocessing import MinMaxScaler, StandardScalerminmaxscaler MinMaxScaler() standardscaler StandardScaler()鸢尾花数据集 从sklearn.datasets中我们可以加载一些数据集其中包含鸢尾花数据集 from sklearn import datasets ​ # 加载数据集 iris datasets.load_iris() X iris.data[:,2:] # 这里为了画图方便只取最后两个维度的信息 y iris.target # 数据标签 X.shape, y.shape((150, 2), (150,)) 模型训练 从sklearn.neighbors我们引出KNeighborsClassifier分类器直接调用KNN算法进行训练我们在数据加载时选用sklearn.model_selection中提供的train_test_split来直接划分数据集 from sklearn.neighbors import KNeighborsClassifier from sklearn.model_selection import train_test_split ​ X_train, X_test, y_train, y_test train_test_split(X, y, test_size0.2, random_state42) # 以20%作为测试数据随机数为42进行随机选取数据 ​ X_train_std standardscaler.fit_transform(X_train) # 数据预处理 X_test_std standardscaler.fit_transform(X_test) # 数据预处理 ​ # 实例化k值为3的knn模型即n_neighbors3即选取最近的三个临近的点 knn_clf KNeighborsClassifier(n_neighbors3) knn_clf.fit(X_train_std, y_train) knn_clf.score(X_test_std, y_test)1.0 超参数选择 k值 对于KNN任务来讲k值越小越容易过拟合k值越大越容易欠拟合所以对于k值的选用要特别注意 绘制子图 我们在这里编写了一个函数来绘制我们用于测试k值时需要画的图 def plot_decision_boundary(model,k, sub, X, y):# 用于画图的函数x0_min, x0_max X[:,0].min()-1, X[:,0].max()1 # 获取x0最小值和最大值x1_min, x1_max X[:,1].min()-1, X[:,0].max()1 # 获取x1最小值和最大值x0, x1 np.meshgrid(np.linspace(x0_min, x0_max, 100), np.linspace(x1_min, x1_max, 100)) # 以x0和x1的最小值和最大值生成100个二维网格数据Z model.predict(np.c_[x0.ravel(), x1.ravel()]) # 对生成的数据进行预测Z Z.reshape(x0.shape)# plt.contourf是用来绘制等高线的函数给定二维坐标和高度值可以画出等高线x0, x1为二维坐标Z为高度plt.subplot(sub[0], sub[1], sub[2]) # 绘制子图plt.contourf(x0, x1, Z, cmapplt.cm.Spectral) # 预测数据的等高线plt.ylabel(x1)plt.xlabel(x0)plt.xticks([])plt.yticks([])plt.title(k{:d}.format(k))plt.scatter(X[:,0], X[:,1],cnp.squeeze(y)) # 原数据选择不同的k值并画图 for k in range(1, 90, 10):knn_clf KNeighborsClassifier(n_neighborsk) # 选择不同的k值knn_clf.fit(X_train_std, y_train)plot_decision_boundary(knn_clf, k, (3, 3, k // 101), X_train_std, y_train) plt.show()其他参数 我们可以通过help来获取knn分类器的其他参数 help(knn_clf) # 查看KNN分类器的参数可以看到Parameters下全是参数以及可选范围的介绍我们随便选用几个进行尝试 网格搜索 由于每个参数及其组合我们一个个的去试效率太低所以我们使用网格搜索来进行我们在前面使用help已经知道了分类器的参数以及可选的值了这里我们只需要先设置一个由字典组成的列表并将他和模型一起传到GridSearchCV的实例化中再次进行GridSearchCV的训练就可以得到最佳参数了在由字典组成的列表中每一个字典是选用不同的参数组合字典的key是参数名字典的value是要进行网格搜索的值这里的值一定要满足help中规定的值 from sklearn.model_selection import GridSearchCV ​ # 使用网格搜索寻找最佳参数 param_grid[{weights:[uniform],n_neighbors:list(range(1, 11))},{weights:[distance],n_neighbors:list(range(1, 11)),p:list(range(1, 6))} ] ​ knn_clf KNeighborsClassifier() grid_search GridSearchCV(knn_clf, param_grid) grid_search.fit(X_train, y_train) GridSearchCV最佳准确率 grid_search.best_score_ # 最好的准确率是0.95833333333333340.9583333333333334 最佳参数 grid_search.best_params_ # 最好准确率对应的参数是{n_neighbors: 1, weights: uniform}{‘n_neighbors’: 1, ‘weights’: ‘uniform’}
http://www.hkea.cn/news/14267077/

相关文章:

  • 拱墅区做网站合肥网站建设培训中心
  • 云南省安宁市建设厅官方网站专业网站建设品牌
  • oppo官方网站教育app开发费用
  • 做外贸网站需要注意哪些常德论坛
  • 昆明手机网站推荐河海大学学风建设网站
  • 找外包做网站18.ppt网站是谁做的
  • 外贸网站设计案例h5商城和小程序商城的区别
  • 做网站广告经营者h5响应式网站源码下载
  • 企业网站源码是什么微网站制作公司
  • 常用的网站建设技术有什么软件如何免费自己做个网站
  • 做电力招聘的有哪些网站免费网站建设哪个最好
  • 崇左北京网站建设公司招牌制作价格
  • 商城网站建设注意什么秦皇岛网站推广报价
  • 网站开发 哪些文档电商网站建设前的市场分析内容
  • 南京知名网站建设公司优化科技
  • 有那些网站做结伴旅游的上海人才网官网招聘招聘
  • 公司网站链接怎么弄东莞营销
  • 攻略类型网站如何做产品营销一个域名解析多个网站
  • 巩义网站建设方案书建立个人博客wordpress
  • 厦门做企业网站找谁一步一步教你做网站
  • 百度网站建设的目的化妆品网站开发的背景
  • 南京网站设公司百度是门户网站吗
  • 网站导航如何用响应式做wordpress财务会计系统
  • 外国做网站的平台废旧回收做哪个网站好
  • 湖北省建设安全管理协会网站网站做抢红包活动广告语
  • 建设银行甘肃兰州分行网站电子商务网站 技术方案
  • 网站建设入门基础个人网站名称大全
  • 长春网站建设4435怎样做网站卖手机号
  • 建设外贸网站公司简介烟台环保网站建设
  • 上海崇明林业建设有限公司网站网站开发的风险与风险管理