机器学习 2 (KNN实例:预测年收入、保存模型)

1、预测年收入

首先我们准备一个带有年收入信息的表
机器学习 2 (KNN实例:预测年收入、保存模型)
这个表里面自带每年收入值

1.1、导入需要的包

机器学习 2 (KNN实例:预测年收入、保存模型)
读取文件
机器学习 2 (KNN实例:预测年收入、保存模型)
机器学习 2 (KNN实例:预测年收入、保存模型)

1.2、准备数据y和目标值X

y:我们选取salary(这个salary是前面的取变量名)的最后一列数据salary(这个salary是列名)

X:目标值
机器学习 2 (KNN实例:预测年收入、保存模型)
查看X每列的数据类型 :我们发现里面含有str类型的数据,是不能计算距离的
机器学习 2 (KNN实例:预测年收入、保存模型)

1.3、转换str类型的数据

先查看X【“workclass”】里面有哪些数据
机器学习 2 (KNN实例:预测年收入、保存模型)
先给不同的值组合一个索引
机器学习 2 (KNN实例:预测年收入、保存模型)
数据转换:根据提供的索引做映射
机器学习 2 (KNN实例:预测年收入、保存模型)
机器学习 2 (KNN实例:预测年收入、保存模型)
通过查看表我们发现从第三列开始到倒数第二列都需要转换数据
机器学习 2 (KNN实例:预测年收入、保存模型)
接下来将这些需要修改数据类型的列进行批量修改

机器学习 2 (KNN实例:预测年收入、保存模型)
查看修改后的X
机器学习 2 (KNN实例:预测年收入、保存模型)

1.4、分割数据

导包
机器学习 2 (KNN实例:预测年收入、保存模型)
切割X、y
机器学习 2 (KNN实例:预测年收入、保存模型)

1.5、训练数据并测试

机器学习 2 (KNN实例:预测年收入、保存模型)
提高邻居数量试试
机器学习 2 (KNN实例:预测年收入、保存模型)

1.6、数据归一化

1.6.1、数据归一化手动写代码

数据归一化:消除差异性
机器学习 2 (KNN实例:预测年收入、保存模型)

数据归一化:https://blog.****.net/haoji007/article/details/81157224

机器学习 2 (KNN实例:预测年收入、保存模型)
将归一化的数据进行训练和预测:准确率明显提高
机器学习 2 (KNN实例:预测年收入、保存模型)
数据归一化第二种方法
机器学习 2 (KNN实例:预测年收入、保存模型)
机器学习 2 (KNN实例:预测年收入、保存模型)
机器学习 2 (KNN实例:预测年收入、保存模型)

1.6.2、数据归一化包

导包
机器学习 2 (KNN实例:预测年收入、保存模型)
Z-score归一化
机器学习 2 (KNN实例:预测年收入、保存模型)

min-max归一化机器学习 2 (KNN实例:预测年收入、保存模型)

2、保存模型

机器学习 2 (KNN实例:预测年收入、保存模型)
保存
机器学习 2 (KNN实例:预测年收入、保存模型)
加载看看
机器学习 2 (KNN实例:预测年收入、保存模型)
测试数据准确率
机器学习 2 (KNN实例:预测年收入、保存模型)
参数comress压缩级别
机器学习 2 (KNN实例:预测年收入、保存模型)

本文学习笔记截至P515,18:12