【机器学习 3】KNN算法实现梳理- Be based on“约会对象”、“手写识别”
2018-01-31 10:26
603 查看
• (1)收集数据
• 提供的文本文件
• (2)准备数据
• 格式转换
• 将源文件格式化处理为可处理的向量,如:手写识别系统
• 处理源文件格式,比如存在大量空格、杂乱符号等,需要进行去除、重新排序
• 例:strip()-删除空格,并在删除点处进行标记;split(“\t”),在删除点处用空格进行划分
• 文件读取
• int/float等数字格式的文本文件
• 创建同形状的返回矩阵(0矩阵……),readlines逐行逐元素填充
• pandas库,pd.read_*(filename)函数
• table, txt, csv, excel, sql, json……etc
• str文本文件
• Pandas读取
• 读取方法(假设有特征和index,table格式)
• df=pd.read_table(‘gini_disitionTree.txt’) # 读取
• data=df.values[:,1:].tolist() #.tolist() 将DataFram转化为List
• labels=df.columns.values[1:-1].tolist() # 掐头去尾,保留中部标签
• (3)分析数据
• 检查数据是否符合我们的要求
• 当数据量极大时,剔除那些显而易见的无用特征值
• (4)训练算法
• 此步骤不适用与k-邻近算法
• (5)测试算法
• classify(datingTest,dataSet,labels,k),选取数据集中的部分数据用来测试或是寻找其他测试集
• 测试算法的正确率
• (6)使用算法
• 略
• 提供的文本文件
• (2)准备数据
• 格式转换
• 将源文件格式化处理为可处理的向量,如:手写识别系统
• 处理源文件格式,比如存在大量空格、杂乱符号等,需要进行去除、重新排序
• 例:strip()-删除空格,并在删除点处进行标记;split(“\t”),在删除点处用空格进行划分
• 文件读取
• int/float等数字格式的文本文件
• 创建同形状的返回矩阵(0矩阵……),readlines逐行逐元素填充
• pandas库,pd.read_*(filename)函数
• table, txt, csv, excel, sql, json……etc
• str文本文件
• Pandas读取
• 读取方法(假设有特征和index,table格式)
• df=pd.read_table(‘gini_disitionTree.txt’) # 读取
• data=df.values[:,1:].tolist() #.tolist() 将DataFram转化为List
• labels=df.columns.values[1:-1].tolist() # 掐头去尾,保留中部标签
• (3)分析数据
• 检查数据是否符合我们的要求
• 当数据量极大时,剔除那些显而易见的无用特征值
• (4)训练算法
• 此步骤不适用与k-邻近算法
• (5)测试算法
• classify(datingTest,dataSet,labels,k),选取数据集中的部分数据用来测试或是寻找其他测试集
• 测试算法的正确率
• (6)使用算法
• 略
相关文章推荐
- 学习笔记——《机器学习实战》KNN算法实现 约会网站测试,手写数字识别,代码,注释,错误修改
- 【机器学习】Knn算法实现手写数字识别
- 机器学习实战(①)——KNN算法改进约会网站的配对效果和手写字识别系统
- 机器学习-KNN算法应用-手写数字识别( hand-written digits)
- python3与机器学习实践---2、KNN实现手写数字识别
- 机器学习深度学习基础笔记(2)——梯度下降之手写数字识别算法实现
- 【机器学习实战-kNN:手写识别】python3实现-书本知识【3】
- 使用Knn算法实现手写数字识别系统(附带jpg转txt代码)
- 机器学习01-KNN算法的python实现及手写体数字的识别
- 机器学习(4)——KNN算法及手写数字的识别(二)
- 【机器学习算法实现】kNN算法__手写识别——基于Python和NumPy函数库
- 机器学习-kNN实现简单的手写数字识别系统
- [机器学习]kNN算法python实现(实例:数字识别)
- 机器学习(3)——KNN算法及手写数字的识别(一)
- 机器学习笔记2-基于KNN算法的手写字识别程序
- knn算法实现的数字手写识别
- 【机器学习算法实现】kNN算法__手写识别——基于Python和NumPy函数库
- 【机器学习算法实现】kNN算法__手写识别——基于Python和NumPy函数库
- knn-2 利用knn算法实现手写数字识别
- 机器学习(10.2)--手写数字识别的不同算法比较(2)--KNN算法