sklearn_k邻近分类_KNeighborsClassifier
# coding:utf-8
import numpy as np
import matplotlib.pyplot as plt
from sklearn.neighbors import KNeighborsClassifier # 1、数据读取
x_tain =[]
x_test =[]
y_tain=[]
y_test=[]
for i in range(0,10):
for j in range(1,501):
if j < 451: #将数据保存到训练数据中
x_tain.append(plt.imread('./data/%d/%d_%d.bmp'%(i,i,j)).reshape(-1) ) #reshape 可以降维也就是矩阵变化
y_tain.append(i) #append 是读进来的数据进行存储的意思
else: #保存到预测数据中
x_test.append(plt.imread('./data/%d/%d_%d.bmp'%(i,i,j)).reshape(-1))
y_test.append(i) # 2、数据转换成
x_tain,y_tain= np.array(x_tain),np.array(y_tain)
# print(x_tain.shape,len(y_tain),len(x_test)) # 3、机器学习
knn = KNeighborsClassifier() #构造分类器
knn.fit(x_tain,y_tain)
y_ = knn.predict(x_test) #进行预测的结果 # print(len(y_[::10]),'\n',y_test[::10]) gl=knn.score(x_test,y_test)
print('准确率为:',gl) # 3、图片绘制
plt.figure(figsize=(13,15))
img = x_test[::10]
img1 = y_test[::10]
yimg = y_[::10] for i in range(50):
plt.subplot(5,10,i+1)
plt.imshow(img[i].reshape(28,28),cmap='gray')
plt.title('预测数据:%d'%(yimg[i])+'\n真实数据:%d'%(img1[i])) plt.rcParams['font.sans-serif'] = ['SimHei'] # 设置字体为SimHei显示中文
plt.rcParams['axes.unicode_minus'] = False # 设置正常显示符号
plt.show()
sklearn_k邻近分类_KNeighborsClassifier的更多相关文章
- sklearn_k邻近分类
# K邻近分类#--------------------------------# coding:utf-8 import pandas as pd from sklearn.neighbors im ...
- 数学建模:2.监督学习--分类分析- KNN最邻近分类算法
1.分类分析 分类(Classification)指的是从数据中选出已经分好类的训练集,在该训练集上运用数据挖掘分类的技术,建立分类模型,对于没有分类的数据进行分类的分析方法. 分类问题的应用场景:分 ...
- 监督学习-KNN最邻近分类算法
分类(Classification)指的是从数据中选出已经分好类的训练集,在该训练集上运用数据挖掘分类的技术建立分类模型,从而对没有分类的数据进行分类的分析方法. 分类问题的应用场景:用于将事物打上一 ...
- K最邻近分类
最邻近分类是分类方法中比较简单的一种,下面对其进行介绍 1.模型结构说明 最邻近分类模型属于"基于记忆"的非参数局部模型,这种模型并不是立即利用训练数据建立模型,数据 ...
- KNN邻近分类算法
K邻近(k-Nearest Neighbor,KNN)分类算法是最简单的机器学习算法了.它采用测量不同特征值之间的距离方法进行分类.它的思想很简单:计算一个点A与其他所有点之间的距离,取出与该点最近的 ...
- K邻近分类算法
# -*- coding: utf-8 -*- """ Created on Thu Jun 28 17:16:19 2018 @author: zhen "& ...
- CNN for Visual Recognition (02)
图像分类 参考:http://cs231n.github.io/classification/ 图像分类(Image Classification),是给输入图像赋予一个已知类别标签.图像分类是计算机 ...
- 数学建模:1.概述& 监督学习--回归分析模型
数学建模概述 监督学习-回归分析(线性回归) 监督学习-分类分析(KNN最邻近分类) 非监督学习-聚类(PCA主成分分析& K-means聚类) 随机算法-蒙特卡洛算法 1.回归分析 在统计学 ...
- matlab中的knn函数
knn 最邻近分类 Class = knnclassify(test_data,train_data,train_label, k, distance, rule) k:选择最邻近的数量 distan ...
随机推荐
- PHP 配置默认SSL CA证书
1.从CURL 官网下载CA 证书(当然也可以选择自己创建SSL CA证书,详情参考 https://blog.csdn.net/scuyxi/article/details/54898870 ,或自 ...
- IPV6的链路本地地址和站点本地地址的不同
转帖 中关村 http://ask.zol.com.cn/x/2230274.html IPV6涉及到一个概念,link-local address, 中文叫“链路本地地址”,它的前缀是FE80::/ ...
- 微信小程序 功能函数 手机号验证*
// 登录手机验证 loginPhone: function (e) { var phone = e.detail.value; if (!(/^1[34578]\d{9}$/.test(phone) ...
- poj 3067 Japan(树状数组求逆序数)
链接:http://poj.org/problem?id=3067 题意:左边有n个城市,右边有m个城市,建k条道路,问有这k条道路中有多少个交点. 分析:将城市按x和y从小到大排序,对于每条道路,求 ...
- ACM数论之旅13---容斥原理(一切都是命运石之门的选择(=゚ω゚)ノ)
容斥原理我初中就听老师说过了,不知道你们有没有听过(/≧▽≦)/ 百度百科说: 在计数时,必须注意没有重复,没有遗漏. 为了使重叠部分不被重复计算,人们研究出一种新的计数方法. 这种方法的基本思想是: ...
- java 基础 --静态
1. 静态变量和静态代码块是在JVM加载类的时候执行的(静态变量被赋值,以后再new时不会重新赋值),执行且只执行一次2. 独立于该类的任何对象,不依赖于特定的实例,被类的所有实例(对象)所共享3. ...
- java static{}块
java中static{}块只有在类加载是才会被调用. 这说明:static只有可能被调用一次. 原因:首先理解什么是类加载,区分类加载和申明对象的区别. public class StaticTes ...
- C#:文件/注册表/线程的操作
文件的操作:(file与fileinfo,前者是静态方法,执行安全检查,适合对一个的操作) 1.1.create: using System; using System.Collections.Gen ...
- hao123劫持主页
转自:https://www.zhihu.com/question/39881858 第一步 Firefox.打开Firefox,按Alt+H弹出帮助菜单,点“故障排除信息” 第二步 点“配置文件夹” ...
- 分享关于js解析URL中的参数的方法
function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&] ...