最近由于公司的一个CASE,用朴素贝叶斯在做一个文本分类。所以拿出来和大家分享一下。
(以下数据:来源于网上天猫商品评论)
1. 爬虫
要进行文本分类,首先要有文本,我在网上爬了点公共的数据,天猫上的商品—某品牌羽绒服的评论数据。
爬虫不是这篇的重点,感兴趣的小伙伴们可以去简书上找找,有很多爬虫的小栗子。
接下来就默认有商品评论数据啦
打标签
人工打标签,对数据进行分类。对于羽绒服的评论,描述包括“暖和”,“质量好”,“不错”等字眼,均标记为1,其他如“太差了”,“不要买”等字眼,均标记为0.朴素贝叶斯分类
第一步,数据处理
加载数据,利用jieba进行分词,并设置停用词,去掉非汉字
import numpy as np
import jieba
def loadDataSet():
file=open('train_message.csv').read().strip().split('\n')
postingList_1=[]
for i in range(len(file)):
result=[]
seg_list = jieba.cut(file[i])
for w in seg_list:
result.append(w)
postingList_1.append(result)
stopwords =[]
postingList = []
st = open('stopwords.csv').read().strip().split('\n')
for line in st:
line = line.strip()
stopwords.append(line)
for singletext_result in postingList_1:
delstopwords_singletx