(案例):用sklearn机器学习包简单实现KNN分类检测。
导包:
from sklearn.neighbors import KNeighborsClassifier
import numpy as np
import matplotlib.pyplot as plt

构造数据集:
1.特征值数据,癌变部位大小,时间
data_canner_feature=[
[3.393533211, 2.331273381],
[3.110073483, 1.781539638],
[1.343808831, 3.368360954],
[3.582294042, 4.679179110],
[2.280362439, 2.866990263],
[7.423436942, 4.696522875],
[5.745051997, 3.533989803],
[9.172168622, 2.511101045],
[7.792783481, 3.424088941],
[7.939820817, 0.791637231]]

2.癌症目标值数据0表示未癌变,1表示癌变
data_canner_target=[0, 0, 0, 0, 0, 1, 1, 1, 1, 1]

3.待预测样本
predict_data=[[8.093607318, 3.365731514]]

数据处理:
数据转换,列表转化为矩阵向量
X=np.array(data_canner_feature)
y=np.array(data_canner_target)
x=np.array(predict_data)

绘图观察:
plt.scatter(X[y0,0],X[y0,1],color=‘g’)
plt.scatter(X[y1,0],X[y1,1],color=‘r’)
plt.scatter(x[0,0],x[0,1],color=‘b’)
plt.show()

实例化knn分类器:
knn=KNeighborsClassifier(n_neighbors=3)
#训练数据建模
knn.fit(X,y)
#预测待测对象
predict=knn.predict(x)
判断
if predict[0]==0:
print(‘经检测,该细胞属于良性’)
else:
print(‘经检测,该细胞已恶化,抓紧时间进行进一步的治疗’)
结果可视化:
机器学习之sklearn-KNN近邻算法分类小案例(癌细胞检测)
系统预测结果:
经检测,该细胞已恶化,抓紧时间进行进一步的治疗

相关文章: