用KNN算法诊断乳腺癌
1.读取数据集,并进行处理,删除带有缺失值的样本,把文件中的数据转化为数值型的数据,将数据进行标准化 2.有毒胶囊创建训练数据集和测试数据集
删除带有缺失值的样本后,剩余683个样本
训练集:1:583
测试集100个样本:584:683
tmis4.评估模型的性能
上图左上角表示真阴性,分类器结果和临床结果一致认为是良性,即100个样本中,有79个肿块为良性,右下角就是真阳性结果,分类器和临床一致认为是恶性,即100个样本中有20个被标识为恶性。左下是假阴性,预测为良性实际是恶性,即有1个恶性样本被标识为良性。右上角是假阳性,预测是恶性实际是良性。计算得到模型的准确率为99%。 5.提高模型性能
(1)不同k值
因为样本数量为683个,尝试k=25
李嘉图等价
这个结果显示kNN对测试数据全部预测正确
白头
(2)z-score标准化
其结果显示预测全部正确
史学理论研究6.注意
简单的延时电路(1)缺失值:KNN算法需要计算距离,数据集中不能包含缺失值
(2)数据处理:KNN函数调用前需要标准化数据,在进行标准化时要使每个特征都是nu
meric值
(3)最优K值确定:k过小,噪声对分类的影响就会变得非常大,K过大,很容易误分类