1.一种基于句法分析的微博情感分类方法,包含以下步骤:
S1:获取用于情感分析的微博短文本,根据情感极性进行文本类别标注并划分为训练集和测试集;具体包含:S11:在新浪微博社交平台上,通过爬虫软件爬取一定数量且包含不同情感类别的微博短文本数据;
S12:将获取的文本数据进行数据清洗:删除空文本的无效样本数据,并通过正则表达式剔除微博短文本中包含表情、链接、图片的噪声数据;
S13:根据微博文本内容,对每个微博样本的情感正负倾向性进行类别标注,微博情感主要划分为积极、中性以及消极三种情感类别;
S14:将微博短文本数据按3:1划分为训练集和测试集,训练集用于训练分类模型,测试集用于验证分类模型的有效性;
S2:分别对训练集和测试集进行数据预处理,包括中文分词、去停用词;具体包含:S21:利用中文分词工具,分别对训练集和测试集进行中文分词处理,并标注词性;
S22:根据预先建立的停用词表,剔除文本数据中出现的停用词,即一些无实际意义的字词、标点以及特殊符号;
S3:对预处理后的每个样本进行依存句法分析,得到依存句法树;根据所述依存句法树采用基于句法路径的匹配算法进行微博情感特征选择,提取出具有明显情感倾向性的词汇作为初始特征集合,并结合外部情感特征词典构建特征词库;具体包含:S31:训练集数据以句子为单位,利用句法分析工具进行句法依存分析,得到文本的句法依存结构即依存关系,以及依存句法树;
S32:根据句法依存关系采用基于句法路径的匹配算法进行微博情感特征选择,提取出具有明显情感倾向性的词汇作为初始特征集合;
S33:结合外部情感特征词典,利用初始特征集合构建情感特征词库,用于扩展微博短文本的情感特征;
S4:根据预先构建的情感特征词库,分别对训练集和测试集的初始特征集合进行特征扩展,使用TFIDF计算每个特征词的特征权值并向量化表示文本;具体包含:S41:根据所述预先构建的情感特征词库,分别对训练集和测试集的初始特征集合进行特征扩展;
S42:使用TFIDF对扩展后的训练集和测试集计算每个特征词的特征权值,TFIDF的具体计算公式为:其中nij表示某一类别dj中字词wi出现的次数,而 表示在该类dj中所有字词出现的次数之和,|D|表示语料库中的类目总数,|{j:wj∈dj}|表示包含字词wi的类目数;
S43:根据所述特征权值即ITIDF值,将训练集和测试集文本以向量化形式进行文本表示;
S5:根据所述扩展后的训练样本集训练贝叶斯分类器,得到贝叶斯分类模型;根据所述贝叶斯分类模型对扩展后的测试样本进行分类操作,得到微博情感分类结果;具体包含:S51:通过扩展后的训练样本集训练贝叶斯分类器,得到贝叶斯分类模型;
S52:根据所述分类模型对扩展后的测试样本进行分类操作,得到微博情感分类结果。
2.一种基于句法分析的微博情感分类系统,其特征在于:包括:
(1)数据获取模块,用于在新浪微博社交平台上利用爬虫软件获取微博文本数据,根据微博内容进行情感标注并划分为训练集和测试集;数据获取模块具体包括:微博短文本数据爬取子模块:在新浪微博社交平台上,通过爬虫软件爬取一定数量且包含不同情感类别的微博短文本数据;
文本数据清晰子模块:将获取的文本数据进行数据清洗:删除空文本的无效样本数据,并通过正则表达式剔除微博短文本中包含表情、链接、图片的噪声数据,为保证样本的多样性,处理后的样本数量不少于10000条;
微博样本的情感正负倾向性类别标注子模块:根据微博文本内容,对每个微博样本的情感正负倾向性进行类别标注,微博情感主要划分为积极、中性以及消极三种情感类别;
训练集和测试集划分子模块:将微博短文本数据按3:1划分为训练集和测试集,训练集用于训练分类模型,测试集用于验证分类模型的有效性;
(2)数据预处理模块:用于对微博文本数据进行预处理,包括文本清洗、中文分词以及去停用词;数据预处理模块具体包含:中文分词处理子模块:通过jieba分词工具分别对训练集和测试集进行中文分词处理,并标注词性;
停用词剔除子模块:根据预先建立的停用词表,剔除文本数据中出现的停用词,即一些无实际意义的字词、标点以及特殊符号;
(3)特征提取模块:用于分别对训练集和测试集进行特征提取,主要包括:句法依存分析子模块:用于利用句法分析工具分别对训练集和测试集进行句法依存分析,获取依存句法树;句法依存分析子模块具体包括:训练集数据以句子为单位,利用Stanford句法分析工具进行句法依存分析,得到文本的句法依存结构以及依存句法树;依存结构即依存关系;
依存句法通过词汇之间的依存关系表达整个句子结构,这些依存关系表达了句子各成分之间的语义依赖关系;所有词汇之间的依存关系构成一颗句法树,树的根节点为句子核心谓词,用来表达整个句子的核心内容;
特征选择子模块:根据依存句法树,采用基于句法路径的匹配算法进行情感特征提取,选择具有明显情感倾向性的词汇作为初始情感特征集合;
特征词库构建子模块:结合外部情感特征词典,以及所述初始情感特征集合构建情感特征词库,用于扩展短文本的情感特征;
(4)特征扩展模块:用于根据所述特征词库对文本进行特征扩展,使用IFTIDF计算特征权值并向量化表示文本;特征扩展模块具体包括:特征扩展子模块:根据所述预先构建的情感特征词库,分别对训练集和测试集的初始特征集合进行特征扩展;
特征权值计算子模块:使用TFIDF对扩展后的训练集和测试集计算每个特征词的特征权值,TFIDF的具体计算公式为:其中nij表示某一类别dj中字词wi出现的次数,而 表示在该类dj中所有字词出现的次数之和,|D|表示语料库中的类目总数,|{j:wj∈dj}|表示包含字词wi的类目数;
文本表示子模块:根据所述特征权值即ITIDF值,将训练集和测试集文本以向量化形式进行文本表示:文本d可以表示为若干个情感特征及其权值的集合d=(w1,w2,…,wn),wi为情感特征词w的特征权值;
(5)情感分类模块:用于通过扩展后的训练集训练分类器,得到贝叶斯分类模型,再对扩展后的测试集进行分类操作得到微博情感分类结果;情感分类模块具体包括:朴素贝叶斯分类器训练子模块:通过扩展后的训练样本集训练朴素贝叶斯分类器,得到微博情感分类模型;
测试样本分类子模块:根据所述分类模型对扩展后的测试样本进行分类操作,得到微博情感分类结果。