目 录
1 绪 论 1
1.1 研究背景及意义 1
1.2 国内外研究综述 1
1.2.1 网络暴力语言国内文献综述 1
1.2.2 情感分析国内外文献综述 2
1.2.3 主要存在的问题 3
1.3 组织结构及成果 3
1.3.1 本文结构 3
1.3.2 主要成果 4
2 朴素贝叶斯分类器 5
2.1 分类器 5
2.2 朴素贝叶斯理论 5
2.3 朴素贝叶斯的优缺点 6
3 整体框架 7
3.1 主要步骤 7
3.2 数据获取 7
3.3 数据清洗 7
3.4 分词 7
3.5 贝叶斯分类器构建 8
4 数据处理 10
4.1 实验平台以及数据介绍 10
4.2 数据清洗 11
4.2 分词 12
4.2 稀疏表示 14
5 模型建立 15
5.1 建立朴素贝叶斯分类模型 15
5.2 模型评价 16
5.3 比较实验 17
结 论 18
参考文献 19
附 录 21
致 谢 28
图目录
图3.1 基于贝叶斯分类器的网络暴力评论甄别器整体设计流程 9
图4.1 实验平台 10
图4.2 微博内容 10
图4.3 采集到的数据 11
图4.4 含有特殊字符以及表情符号的原始评论数据 11
图4.5 精确分词后结果 13
图4.6 清理后数据词云图 14
图5.1 数据分布图 15
图5.2 测试集特征词云图 15
图5.3 10次预测结果 16
表目录
表4.1 定义去除的中文符号、数字、英文符号以及表情 12
表4.2 文本清洗例子 12
表4.3 三种不同模式的对比 13
表4.4 词典稀疏表示 14
表5.1 各比较实验参数设置 17
表5.2 各比较实验结果 17
1.2.3 主要存在的问题
综上所述,国内更多关注的是网络暴力语言的特点,并没有给出太多具体的运用,另一方面,国外对于情感分析有相对丰富的研究资料,但是由于语言本身的不同,中文和英文的表达方法、语法以及句子构成有很大差别,在文本预处理方面就有很大的不同。另外一方面,缺少公开的中文网络暴力语料库。针对上述的不足,本文首先采集了微博评论数据,然后给出了具体的文本预处理步骤与方法,最后构建了基于朴素贝叶斯分类器的网络暴力语言甄别器,并对构建出的贝叶斯分类器进行了客观地评价。
1.3 组织结构及成果
1.3.1 本文结构
本文第一章介绍了选题的背景意义以及国内外关于网络暴力和情感分析研究的发展和趋势,说明基于机器学习的网络暴力分类器将会是一个主流。针对国内外对网络暴力研究的不足设计实验撰写了本论文。接下来给出了本文的总体结构。第二章介绍了有关的朴素贝叶斯分类器的理论基础知识。第三章给出了应用朴素贝叶斯分类器进行网络暴力分类器构建的总体流程框架,包括数据采集、文本清洗、结巴分词、分类器的构建以及评价方法。第四章给出了具体的实验步骤,主要是数据的清洗、分词和稀疏表示。第五章进行了模型的建立以及评价。最后给出了本文的结论以及对未来工作的展望。
1.3.2 主要成果
本文的主要成果可以总结如下:(1)整理了国内外对基于机器学习对网络暴力进行甄别的参考文献,总结了国内外现有参考文献的优缺点,给接下来的研究者提供参考。(2)给出了基于朴素贝叶斯网络暴力甄别分类器的全部详细步骤,包括数据清洗,构建词典,分类器构建以及评价预测。(3)建立了分类暴力词典。
本文给出了文本分析的所有步骤,包括数据的采集、清洗,文本的分词以及模型的建立、评价,所建立的模型能够对中文文本进行准确地暴力识别,具有很好的现实应用意义。
#Import and select the needing column
import pandas as pd
content=pd.read_csv("./data .csv")["评论内容"]
#content.to_csv('./context.txt',index=None)
label=pd.read_csv("./data .csv")["标注"]
#Create the new data frame including the content and the conresponding label
new_data=pd.DataFrame()
new_data["content"]=content
new_data["label"]=label
new_data.info() #11509
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test = train_test_split(new_data["content"],label, test_size=0.2, random_state=42)
#Save the trainand test data into txt
X_train.to_csv('./train.txt',index=None)
X_test.to_csv('./test.txt',index=None)
mport matplotlib
import matplotlib.pyplot as plt
import numpy as np
import codecs,sys
from string import punctuation
import re
from pylab import mpl
mpl.rcParams['font.sans-serif']=['SimHei']
labels = ["training set","testing set"]
men_means =[4808,4399]
women_means =[1208,1094]
x = np.arange(len(labels)) # the label locations
width = 0.35 # the width of the bars















本文探讨了网络暴力语言的研究现状,指出国内对此的关注点较少且缺乏具体应用,而国外虽有情感分析的研究,但语言差异导致难以直接应用。作者构建了一个基于朴素贝叶斯分类器的网络暴力评论甄别器,详细描述了数据采集、清洗、分词和模型构建过程,提出了一种有效的中文文本预处理方法,实验证明了模型在中文文本识别中的有效性。
1457

被折叠的 条评论
为什么被折叠?



