平时ML的编程作业,python编写 数据说明: 数据为产品评论信息,目的是识别评论的情感(正负两类) 数据包含训练集&测试集,训练集为有标签的数据(1000条),测试集为无标签(200条) 每条评论信息除了包含需要识别情感的主评论信息之外,还包含了评论该条信息的作者对其它产品的评论(可以间接反映该用户评论特点)以及该产品其它用户的评论(可以间接反映该产品的特点) 目的: 识别主评论的情感 输出结果: 共200行,与tests_text.txt顺序一一对应,每行为0(neg)/1(pos).
这次作业主要用了朴素贝叶斯方法和K近邻方法编写 文本处理使用了nltk库进行分词,停用词过滤,词形还原等等,去除标点使用正则表达式。 文本向量化方面使用布尔权重。KNN方法中特征选择使用了皮尔森系数法,距离使用余弦相似度
从实验结果看,贝叶斯方法的效果更好