今天完成了机器学习中的KNN算法建模
其中首先是数据集的获取
本次的数据集是一个网上的一个新闻文本的一个数据集
他是一个EXCEL文件的形式
其中有ID 标题 分类 内容
其中有多个sheet表
进行了分类
其中首先是对数据的获取
数据的转化
由excel文件转化成一个txt文件
txt文件包含一则新闻
一个文件夹代表一个类别
一个类别中包含有多个txt文件
然后数据的预处理
其中数据的预处理包括分词和去除停用词
其中数据的分词是用的jieba分词
停用词选用一个停用词表
其中都是在原txt文件中进行预处理
然后进行数据的划分
由于是数据集的格式不一样
无法在sklearn库中直接进行测试集和训练集的划分
所以选用了手动的划分
也就是单纯的进行文件的划分
然后进行训练集和测试集的一个连接
将所有类别的文件一行一则新闻的形式合成一个txt文件
另一个文件是分类的合成txt文件
其中也是一行代表一则新闻的类别
其中用一个词典的方式进行类别的一个转化
然后数据的预处理完成
然后是数据的抽取
直接pandas库进行文件的读取
然后进行数据的一个特征抽取
其中要注意就是
数据的抽取是首先从总的文档
也就是总的新闻文件中获取一个字典
然后分别对训练集和测试集的文字特征进行抽取
其中选用的是CountVectorizer 和 Tiidf 词袋式的特征抽取方法
然后进行KNN算法的建模
其中设置多个KNN算法中的一个邻近值比较正确率
得出各个结果
分类至此完成