Python算法练习(四)// 算法:KNN,数据集:DatingTestSet

本次练习利用了KNN算法对DatingTestSet数据集中异性魅力度标签做多分类。先探索数据,画图查看不同标签下特征的分布情况,初步认识特征对标签的影响。该数据集包含3个特征,存在明显的数据量纲差异,于是用标准化方法对数据进行预处理。最后,建立模型,并利用学习曲线和交叉验证的方法寻找最佳n-neighbors。利用该模型,对新增的异性样本做魅力度分类预测,为寻找心动异性提供决策参考。

一、导入数据
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第1张图片
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第2张图片
二、探索数据
1、异常值判断
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第3张图片
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第4张图片
2、单个特征与标签的关系
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第5张图片
注:蓝色(魅力十足)、黄色(有点魅力)、绿色(不喜欢)
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第6张图片
3、特征间的关系
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第7张图片
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第8张图片
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第9张图片
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第10张图片
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第11张图片
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第12张图片
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第13张图片
三、数据预处理
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第14张图片
四、模型构建与评估(用3个特征)
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第15张图片
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第16张图片
五、预测
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第17张图片
六、模型构建与评估(用2个特征,效果更好!)
Python算法练习(四)// 算法:KNN,数据集:DatingTestSet_第18张图片

你可能感兴趣的:(Python)