使用knn和logsitic对make_blobs数据集进行分类
来源:互联网 发布:淘宝上回收电脑靠谱吗 编辑:程序博客网 时间:2024/06/01 09:13
1.导入模块
import numpy as npimport pandas as pdfrom pandas import Series,DataFrame#机器学习模型from sklearn.linear_model import LogisticRegressionfrom sklearn.neighbors import KNeighborsClassifier#导入make_plobs聚类数据生成器from sklearn.datasets import make_blobs#绘图import matplotlib.pyplot as plt%matplotlib inline
2.获取训练数据和测试数据
获取训练数据
train,target=make_blobs(n_samples=150,n_features=2,centers=[[1,3],[4,1],[6,5]])#训练数据X_train = trainY_train = target
说明:make_blobs方法常被用来生成聚类算法的测试数据,make_blobs会根据用户指定的特征数量、中心点数量、范围等来生成几类数据,这些数据可用于测试聚类算法的效果。
参数:
- n_samples是待生成的样本的总数。
- n_features是每个样本的特征数。
- centers表示类别数。
- cluster_std表示每个类别的方差,例如我们希望生成2类数据,其中一类比另一类具有更大的方差,可以将cluster_std设置为[1.0,3.0]。
获取测试数据
#获取x、y轴取值范围xmin,xmax = train[:,0].min()-0.5,train[:,0].max()+0.5ymin,ymax = train[:,1].min()-0.5,train[:,1].max()+0.5#生成x、y两个列表,做网格化处理x = np.arange(xmin,xmax,0.05)y = np.arange(ymin,ymax,0.05)xx,yy=np.meshgrid(x,y)#测试数据x_test=np.c_[xx.ravel(),yy.ravel()]
3.确定学习模型
#knn模型knnclf = KNeighborsClassifier()#logistic模型logistic = LogisticRegression()
4.用训练数据对模型进行训练
knnclf.fit(X_train,Y_train)logistic.fit(X_train,Y_train)
5.用训练后的模型进行预测
y_pre_knn = knnclf.predict(x_test)y_pre_logistic = logistic.predict(x_test)
6.绘图,展示效果
- 设置颜色
from matplotlib.colors import ListedColormapcmap = ListedColormap(['r','g','b'])
- 绘制knn模型预测效果图
plt.scatter(x_test[:,0],x_test[:,1],c=y_pre_knn)plt.scatter(train[:,0],train[:,1],c=target,cmap=cmap)
- 绘制logistic回归预测效果图
plt.scatter(x_test[:,0],x_test[:,1],c=y_pre_logistic)plt.scatter(train[:,0],train[:,1],c=target,cmap=cmap)
阅读全文
0 0
- 使用knn和logsitic对make_blobs数据集进行分类
- iris数据集进行KNN分类
- 使用KNN对MNIST数据集进行实验
- 使用Orange进行数据挖掘之分类(2)------KNN分类
- 使用python对高光谱数据进行处理和分类
- 使用PCA + KNN对MNIST数据集进行手写数字识别 python
- 对数据进行分类
- 使用CountVectorizer和TfidfVectorizer对fetch_20newsgroups数据进行分类,并对是否使用停用词进行对比(精确度)
- caffe对自定义数据集进行分类
- knn进行二维样本集分类
- python中利用KNN实现对iris进行分类
- 利用贝叶斯分类器对fetch_20newsgroups数据集进行分类
- SQL使用操作符对数据进行分类
- 使用SVM对多类多维数据进行分类
- 使用不同的SVM对iris数据集进行分类并绘出结果
- 使用K近邻(KNN)对鸢尾花分类
- 使用cxGrid对数据集进行Sort和Locate操作
- 虚拟机Ubuntu14.04+Caffe+libsvm对数据集进行分类
- Java | 协变返回类型学习时的一个例子
- Android init.rc 进程启动详解
- IOS Realm数据库的使用
- Spring boot的优点吧
- stm32 驱动DS18B20温度传感器
- 使用knn和logsitic对make_blobs数据集进行分类
- 如何实现左边为导航栏点击后右边为连接页面
- ubuntu下搭建android开发环境(四)核心篇安装AndroidStudio、sdk、jdk
- Hbase之RIT
- Java问题——路径问题
- Weex的JS缓存实现
- SQLite(6) 知识点小结
- 在Ubuntu下的virtualenv创建的虚拟环境下安装mysqldb
- 二进制 (Po学校 计算机科学 笔记整理 )