CN112949713B - 一种基于复杂网络的集成学习的文本情感分类方法 - Google Patents
一种基于复杂网络的集成学习的文本情感分类方法 Download PDFInfo
- Publication number
- CN112949713B CN112949713B CN202110227294.1A CN202110227294A CN112949713B CN 112949713 B CN112949713 B CN 112949713B CN 202110227294 A CN202110227294 A CN 202110227294A CN 112949713 B CN112949713 B CN 112949713B
- Authority
- CN
- China
- Prior art keywords
- text
- feature
- document
- complex network
- weight
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000008451 emotion Effects 0.000 title claims abstract description 31
- 238000004458 analytical method Methods 0.000 claims abstract description 13
- 230000000694 effects Effects 0.000 claims abstract description 9
- 238000012549 training Methods 0.000 claims description 29
- 238000004422 calculation algorithm Methods 0.000 claims description 23
- 230000006870 function Effects 0.000 claims description 22
- 230000002776 aggregation Effects 0.000 claims description 15
- 238000004220 aggregation Methods 0.000 claims description 15
- 238000012360 testing method Methods 0.000 claims description 14
- 238000007781 pre-processing Methods 0.000 claims description 10
- 238000011156 evaluation Methods 0.000 claims description 8
- 238000004140 cleaning Methods 0.000 claims description 7
- 230000011218 segmentation Effects 0.000 claims description 6
- 230000007423 decrease Effects 0.000 claims description 4
- 230000004927 fusion Effects 0.000 claims description 2
- 238000012804 iterative process Methods 0.000 claims description 2
- 238000010606 normalization Methods 0.000 claims description 2
- 230000009467 reduction Effects 0.000 claims description 2
- 238000003860 storage Methods 0.000 claims description 2
- 238000000605 extraction Methods 0.000 abstract description 12
- 238000010187 selection method Methods 0.000 abstract description 7
- 238000002474 experimental method Methods 0.000 abstract description 6
- 238000004364 calculation method Methods 0.000 description 12
- 230000005484 gravity Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 108010015046 cell aggregation factors Proteins 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000009193 crawling Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 101150104604 SEPTIN2 gene Proteins 0.000 description 1
- 101150047992 SEPTIN3 gene Proteins 0.000 description 1
- 238000013398 bayesian method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于复杂网络的集成学习的文本情感分类方法,结合现有的特征提取方法和基于复杂网络的特征选择方法,提高了对中文文本的情感分析的准确率。本发明通过实验使用集成学习结合朴素贝叶斯分类器验证了可行性,对比现有的特征提取技术和情感分类方法,本发明的分类准确率有明显的提高,得到了更好的文本情感分类效果。
Description
技术领域
本发明属于机器学习分类技术领域,具体涉及一种基于复杂网络的集成学习的文本情感分类方法。
背景技术
随着信息科技的飞速发展,越来越多的互联网应用已经渗入到人们生活的方方面面。普通用户与网络应用之间的交互也越来越频繁,互联网用户群体的角色逐渐从互联网内容信息的浏览者演变为创造者。在这一过程中,用户可以在媒体平台提出情感态度型的观点和评论,对其进行检测和分类不仅可以产生巨大的商业价值,还可以维护互联网环境的安全。其中由于微博人口基数大,涉及话题广泛的特点,对人们的日常生活产生了不可估量的影响,而对微博的情感分析,更是有着十分重要的意义。近年来,随着复杂网络的兴起,国内外学者开始研究利用复杂网络来表示文本,根据其小世界特性进行文本挖掘,主要集中在文本的关键词提取领域。Zhu等通过构建词同现网络,利用节点缺失对网络中平均最短路径长度的影响来提取中文文本关键词。Liu等利用基于知网的词语语义相似度构建中文文本网络,结合复杂网络理论和统计方法来进行关键词提取。Huang等利用词语的句法关系建立文本复杂网络来进行关键词抽取。赵鹏等综合考虑文本语言网络中的节点度与聚集系数进行关键词抽取。在文本分类领域,赵洋等将复杂网络的分析理论引入到分类器。
复杂网络就是结合网络的视角和基本原理的复杂系统,语言复杂网络就是用复杂网络视图研究的语言结构。Sole认为语言在各个层次上都体现了复杂网络的性质,包括语音、词法、句法和语义。语言复杂网络通常是将语言中的语素(字、词)定义为节点,将语素间的关系定义为边,常见的连接关系有:共现关系(语素同时出现在句子或单词中),概念同义,句法关系等。
语言网络既不是完全随机的,也不是完全规则的,它也具备复杂网络的小世界特性。复杂网络的如下重要统计特性对于语言网络同样适用:
1.度与度分布。在复杂网络中,节点的度是指与该节点相连接的节点的数目。度分布函数则反映了网络的统计特性。
2.聚集系数。聚集系数是用来衡量网络的集团化程度,节点i的聚集系数C指与该节点邻接的节点之间实际相连接的边数与最大可能连接边数的比值:
其中,k表示节点i的度数,e表示节点i的邻接节点间实际存在的边数,称为聚集度。所有节点的聚集系数平均值即为该网络的聚集系数。聚集系数体现了节点的局部聚集密度及网络的聚集特性。
3.介数。介数包括节点介数和边介数。节点的介数指网络中任意两点间的最短路径通过该节点(边)的比例。介数在一定程度上可以体现节点对整个网络信息流动的影响。除此之外,复杂网络还有平均最短路径、正负匹配度等统计特性。
特征选择(Feature Selection)的目的是为了在文本预处理的基础上提高文本内容的类别区分能力和减少计算复杂度而对原始特征集合的降维过程。从而减少系统计算的复杂度和提高分类的准确率。常用的特征选择方法有以下几种:特征频度法(TF)、文档频率法(DF)、互信息(MI)、信息增益(IG)、期望交叉熵等。这些现有方法一般以文档频率、词频等统计信息为基础来进行特征词的选取,而忽略了文本中词汇间的语义关联关系,使得特征词的选取结果不能令人满意,从而影响了文本分类的效果。
在文本中,离散的字、词语之间通过一定的相互关系组合在一起形成句子,从而构成了语义丰富的文本。基于语言复杂网络的文本特征选择方法结合语义学和句法学的理论、利用汉语词同现网络中的小世界特性,首先通过构造文本加权复杂网络以保留文本中的语义信息及其结构信息,然后利用节点的综合特性寻找关键节点(即中心词语),以此来作为文本的特征词,而去除那些信息量较少的词,以降低文本复杂网络的节点数目,达到降低复杂性的目的。基于复杂网络的特征选择方法考虑了词汇间的语义关联关系,但没有考虑词频等统计信息。
发明内容
本发明要解决的技术问题是:提供一种基于复杂网络的集成学习的文本情感分类方法,用于提高对文本情感分析的准确率。
本发明为解决上述技术问题所采取的技术方案为:一种基于复杂网络的集成学习的文本情感分类方法,包括以下步骤:
S0:采集数据并对数据进行预处理得到原始特征集;
S1:通过现有信息增益方法对原始特征集进行特征选择,得到第一特征选择结果集;
S2:基于复杂网络综合特性对原始特征集进行特征选择,得到第二特征选择结果集;
S3:去除第一特征选择结果集与第二特征选择结果集的重复项,取并集融合得到最终特征选择结果集;
S4:采用TF-IDF方法对最终特征选择结果集中的特征进行权重计算;
S5:配置环境构建分类训练模型,利用集成学习加强朴素贝叶斯方法对数据进行分类训练并输出结果。
按上述方案,所述的步骤S0中,具体步骤为:
S01:创建并运行爬虫程序,基于urllib标准库读取URL标签,利用requests库对服务器发送请求对象,利用BeautifulSoup库解析网页,获得文本数据;
S02:对文本数据进行包括清洗、分词的预处理工作得到原始特征集,并以txt格式存储为文本文档;文本文档包括停用词表、评论文本、分词后的数据,文本文档的保存格式为编号-文本-类别;
S03:采用SQL语句根据查询分析需求对评论文本进行ID编号,通过MySQL数据库对原始特征集增加主键约束。
按上述方案,所述的步骤S2中,具体步骤为:
S21:以特征词为节点,连接句子中共现跨度小于或等于2的特征词,合并处在不同句子中的相同特征词节点,根据复杂网络的综合特性对预处理后的文本数据构建加权复杂网络;
S22:分别计算节点ni的加权度、加权聚集系数和节点介数,并分别进行归一化处理;构造评估函数CF,以函数值作为节点ni的综合特征值;
S23:对节点的函数值进行排序,选取函数值较大的前m个节点对应的特征词作为文本的关键词。
进一步的,述的步骤S21中,具体步骤为:
用加权复杂网络的节点代表特征词,设节点的集合为:
N={n1,n2,n3,...,nk};
用加权复杂网络的边代表特征词之间的包括共现和邻接位置的语义相关关系,设经过预处理之后的原始特征词为n,复杂网络中的结点个数为k,加权复杂网络中边的集合为:
E={ei,j=(ni,nj)|ni,nj∈N};
用边的权值代表特征词的语义相关关系的程度,权值越大,表明特征词之间语义相关关系越紧密,设边eij的权重为wij,边的权重集合为:
W={w12,w13,...,wij,...};
则将文本表示成加权的复杂网络为:
G=(N,E,W)。
进一步的,所述的步骤S22中,具体步骤为:
设节点ni的各部分的权重βi(1≤i≤3)是可调节的参数,则:
β1+β2+β3=1;
设节点ni与所有邻居节点nj的边的权值为Wij,则用于反映节点nj与其他节点的连接强度的加权度WDi为:
设用于表示节点ni邻接节点间边的权重和的节点ni的加权聚集度为WKi,节点ni的度数为ki,则加权聚集系数为:
设节点ni的介数为pi,以评估函数CF的函数值作为节点ni的综合特征值,则:
CFi=β1WDi+β2WCi+β3Pi。
进一步的,所述的步骤S3中,具体步骤为:
定义信息增益是信息熵的差值,是移除某个变量的不确定性之后的信息量;采用信息增益算法IG计算特征项的不确定性造成的信息熵的差值,用于评价特征项对文档的重要程度,则信息增益公式为:
IG(X,Y)=E(X)-E(X|Y);
设包含特征项w的文档的概率为P(w),不包含特征项w的文档的概率为属于Ci类的文档的概率为P(Ci),包含特征项w且属于Ci类的文档的概率为P(Ci|w),不包含特征项w且不属于Ci类的文档的概率为/>语料库中文档类别的个数为n,则Ci类文档中是否包含特征项w的信息增益为:
按照信息增益值的降序排列特征项,提取排列靠前的一定数量的词语作为全局特征词,并保存特征词文本文件。
进一步的,所述的步骤S4中,具体步骤为:
对最终特征选择结果集中的特征词进行排序,将正类放在前面,负类放在后面;
采用TF-IDF算法计算特征词在不同类别中的权重,或通过SQL语句计算每一类特征的总权重;
设ni,j表示词ti在文档dj中出现的次数,表示文档dj中所有k个词次数的总和,定义词频TF是特征词ti在文档dj中出现的频率,频率越高对文档越重要,则词频TF的表达式为:
设|{j:ti∈dj}|表示词ti的文档数,定义逆文档频率IDF是包含特征词ti的文档占总文档D的比重的倒数,用于避免出现频率高但对文档分类作用小的词获得高权重,则逆文档频率IDF的表达式为:
则通过表达式:
TF-IDF=tfi,j·idfi,
表示词语对于文本的重要性随词频的增大而增大、随文档频率的增加而减小;在当前文本中出现的次数多,并且在别的文本中出现的次数少的词语对于文本有意义;均匀出现在各个文本中的词语对文本的意义小。
按上述方案,所述的步骤S5中,具体步骤为:
S51:配置环境,确定待分类项组成的测试集,对测试集数据进行包括清洗、分词的预处理,并对测试集的每条文本进行id编号;
S52:假设各特征条件相互独立,对待分类项求解各类别出现的概率并记录为已知概率,构建包括多变量伯努利模型和多项式模型的分类训练模型;
S53:利用集成学习加强朴素贝叶斯方法对测试集数据进行分类训练,根据已知概率提取和计算待分类项的特征属于某一类别的概率,取概率最大的类别为待分类文本的所属类别并输出结果,实现对文本的情感分类。
进一步的,所述的步骤S53中,集成学习融合AdaBoost算法,通过提高前一轮分类器分类错误的样本的权值,降低分类正确的样本权值,产生多个弱分类器;通过多数加权投票组合弱分类器,加大误差率小的分类器,减少误差率大的分类器,提高分类的准确率和效率。
进一步的,所述的步骤S53中,具体步骤为:
S531:输入数据集T={(x1,y1),(x2,y2),...,(xn,yn)},xi∈X,X表示训练样本集空间,Yi∈Y={1,2}是某一类别集;每次迭代的索引为t=1,2,...,T,通过AdaBoost算法为每个训练样本分配权重初始时,对所有i都有/>
S532:将AdaBoost算法用于朴素贝叶斯算法;在迭代过程中若训练样本xi被错误分类,则权重增加;若训练样本xi被正确分类,则权重/>减少;将训练样本的权重为/>引入到参数P(Xk|Cj),则朴素贝叶斯公式变为:
样本权重、朴素贝叶斯的先验概率和后验概率随着AdaBoost的迭代而更新,对朴素贝叶斯分类器的分类产生扰动,增加了朴素贝叶斯分类器的相异性。
本发明的有益效果为:
1.本发明的一种基于复杂网络的集成学习的文本情感分类方法,结合现有的特征提取方法和基于复杂网络的特征选择方法,提高了对中文文本的情感分析的准确率。
2.本发明通过实验使用集成学习结合朴素贝叶斯分类器验证了可行性。
3.对比现有的特征提取技术和情感分类方法,本发明的分类准确率有明显的提高,得到了更好的分类效果。
附图说明
图1是本发明实施例的流程图。
图2是本发明实施例保存的数据预处理的文本文档示意图。
图3是本发明实施例的测试结果对比图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明实施例针对微博文本的情感分析进行了研究,结合现有的特征提取方法和基于复杂网络的特征选择方法,首先利用传统的信息增益方法进行特征选择,然后再次对原始的特征集基于复杂网络综合特性提取特征项,最后将两者取并集去除重复项,即为最终的特征选择结果集。最终通过实验使用集成学习结合朴素贝叶斯分类器验证了方法的可行性,对比实验发现,将现有的特征提取方法和基于复杂网络的特征选择方法两者相结合的方法得到的分类效果最好。
为满足对数据进行计算、查询、统计、分析各类需求,需要做以下两个方面的工作。
1.对所有爬取的数据进行清洗、分词等预处理,存储在数据库当中,利用SQL语句对其增加主键约束,方便之后数据的计算、查询、统计、分析。
2.对存储的数据集进行权重之前先刚其进行排序,从而可以提高计算、查询、统计、分析的效率。
参见图1,本发明实施例的一种基于复杂网络的集成学习的文本情感分类方法,包括以下步骤:
S1:创建爬虫程序,基于urllib标准库读取特定的URL标签,接下来利用requests库对服务器发送请求对象,最后利用BeautifulSoup库解析网页,最终获得所需要的文本数据信息;
在本发明实施例中,数据集通过爬取新浪微博官网评论文本获取;也可以使用情感分类公开数据集。对于数据爬取,配置Python运行环境之后,使用pip来安装Requests类库。具体操作:在Windows平台下,运行cmd命令窗口,输入“pip3 install requests”并按Enter键,即可以安装Requests类库。
S2:对爬取的文本数据进行清洗、分词等预处理工作;使用文本文档保存已处理过的数据集。所保存的文本文档包括:哈工大停用词表、评论文本、分词后的数据,参见图2;
预处理后的文本文档保存格式为编号-文本-类别。
存储的数据集是txt格式。
在对数据进行清洗,主要的操作是去除含有URL的链接,URL中带有的有用信息很少,一般都是为了广告的导向和用户的定位。
S3:使用传统的方法进行信息增益特征提取,采用传统的特征提取方法提取处理后的数据的信息增益特征;
提取之前,使用SQLyog利用SQL语句给每条评论文本加上编号,也就是添加主键;
其中,使用MySQL数据库对数据集增加主键约束。在本发明实施例中,训练数据集有13712条,测试集有1509条。
为每个评论文本加上主键约束为根据查询分析需求对评论文本进行ID编号。
S4:根据复杂网络中的加权复杂网络的特性对预处理后的文本构建该网络提取特征;
利用复杂网络的综合特性,对预处理后的文本数据构建加权复杂网络,其中节点代表特征词,边代表特征词之间的语义相关关系,在文本中体现为特征词的共现及邻接位置关系,而边的权值代表特征词的语义相关关系的程度,权值越大,表明特征词之间语义相关关系越紧密;
复杂网络的综合特性包括复杂网络的加权度、加权聚集系数、节点介数。
在本发明实施例中,利用评估函数CF以函数值作为节点ni的综合特征值。CFi=β1WDi+β2WCi+β3Pi;其中βi(1≤i≤3)是可调节的参数,代表相应部分的权重;且有β1+β2+β3=1,pi节点ni的介数;对节点的函数值进行排序,选取函数值较大的前m个节点对应的特征词作为文本的关键词。
注意:其中加权度是节点ni与所有邻居节点nj的边的权值Wij和为该节点的加权度WDi,反映了该节点与其他节点的连接强度。其中加权聚集系数/>WKi为节点ni的加权聚集度,表示节点ni邻接节点间边的权重和,ki表示节点ni的度数。为了得到较好的实验效果,经过反复实验,CFi中β1取0.4、β2取0.3、β3取0.3。
S5:对传统方法以及加权复杂网络提取的特征进行融合取并集;
将信息增益提取到的特征和复杂网络提取的特征进行融合取两者的并集作为最终的特征提取结果。配置python运行环境pycharm,下载使用的Python库,将其与SQLServer数据库服务器连接,将特征集合存放在数据库当中;
信息增益(IG)算法其基本思想是计算某一变量的不确定性的存在与否造成的信息熵的差值并以此来评价该特征项对文档的重要程度。信息增益是信息熵的差值,是某个变量的不确定性在移除之后的信息量,定义如下公式:
IG(X,Y)=E(X)-E(X|Y);
信息增益在情感分析问题中则转化为以特征项为研究对象,用特征项W在Ci类中是否出现的情况所带来的信息量,定义如下式:
公式中:P(w)为包含特征项w的文档概率;为不包含特征项w的文档的概率;P(Ci)为属于Ci类的文档的概率;P(Ci|w)为包含特征项w并属于Ci类的文档的概率;/>为不包含特征项w并不属于Ci类的文档的概率;n为语料库中文档类别的个数。
计算出特征项的信息增益之后,按照信息增益值降序排列,提取前500个词语为全局特征词,保存特征词文本文件。
S6:对提取的特征进行权重计算,使用的是TF-IDF的方法;
对特征数据集进行权重计算,权重计算之前,对有标签的微博进行排序,将正类的放在前面,负类的放在后面。利用TF-IDF权重计算可以计算每个特征词的权重值,也可以通过SQL语句计算出来每一类的总权重;
TF-IDF中的TF是指某个给定的词ti在文档dj中出现的频率,频率越高对文档越重要,IDF是指包含该词ti的文档占总文档D的比重的倒数;逆文档频率的出现是为了避免一些类似“我”、“的”、“他”等出现频率很高但是对文档分类作用较小的词获得高权重。
为了更大程度的保留文本信息,体现文本的结构和语义特征,本发明将文本表示成加权的复杂网络结构。文本加权复杂网络由许多节点和边构成,其中节点代表特征词,边代表特征词之间的语义相关关系,在文本中体现为特征词的共现及邻接位置关系,而边的权值代表特征词的语义相关关系的程度,权值越大,表明特征词之间语义相关关系越紧密;文本加权复杂网络形式化的表示为G=(N,E,W),其中N表示节点的集合N={n1,n2,n3,...,nk},n代表经过预处理之后的原始特征词,k表示复杂网络中的结点个数,E表示加权复杂网络中边的集合E={ei,j=(ni,nj)|ni,nj∈N},W表示边的权重集合W={w12,w13,...,wij,...},wij表示边eij的权重。
基于加权复杂网络的特征选择算法通过分析加权文本复杂网络中节点的综合特性,即综合考虑节点的加权度、加权聚集系数和边介数来衡量特征词在文本中的重要性,通过构造评估函数反应节点的综合特性,体现节点的连接状况、局部密集程度、以及对网络全局的影响,从而进行文本关键词选取,以此达到特征选择的目的。
具体的算法如下:
Step1:对文档d进行预处理
Step2:建立文本加权复杂网络,以特征词为节点,将句子中共现跨度小于或等于2的特征词连接,并将处在不同句子中的相同特征词节点进行合并处理。
Step3:分别计算节点ni的加权度、加权聚集系数及节点介数,并分别进行归一化处理,然后构造评估函数CF,以函数值作为节点ni的综合特征值。
Step4:对节点的函数值进行排序,选取函数值较大的前m个节点对应的特征词作为文本的关键词。
在一些可选的实施方案中,所述方法还包括权重的计算。TF-IDF是常见的权重计算方法,考虑了问题和反文档频率的影响。对于内容中出现的次数较多的词语有相对比较大的权重。但权重计算是一个全局性的信息,没有分辨哪个特征项在哪个类别中相对比较重要的功能,不能作为区分类别的方法。一般情况下用来表示特征词语在文本中是否重要或者重要程度。通过词频和文档频率,我们采用TF-IDF权重计算方法计算出特征词在不同类别中的权重。
词频(TF)是指某个给定的词ti在文档dj中出现的频率,频率越高对文档越重要,数学表达式如下:
其中,ni,j表示词ti在文档dj中出现的次数,表示文档dj中所有k个词次数的总和。
逆文档频率(IDF)是指包含该词ti的文档占总文档D的比重的倒数。逆文档频率的出现是为了避免一些类似“我”、“的”、“他”等出现频率很高但是对文档分类作用较小的词获得高权重。数学表达式如下所示:
其中,|{j:ti∈dj}|表示词ti的文档数。
TF-IDF=tfi,j·idfi
表示词语对于文本的重要性,对于词频增大的时候也随之增大,随文档频率的增加而减小。也就是对于在当前文本中出现的次数多,并且在别的文本中出现的次数少的词语对于文本有意义。均匀出现在各个文本中的词语对文本的意义小。
S7:配置环境,进行分类模型训练,利用集成的朴素贝叶斯方法对数据进行分类训练。
在一些可选方案中构建分类训练模型,利用集成学习加强朴素贝叶斯,提高分类准确率和效率。朴素贝叶斯算法NB( Bayes)是一种非常简单的分类算法,以贝叶斯算法为基础。其基本的思想是:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,取概率最大的那个,就认为此待分类文本属于哪一个类别。假设各特征条件相互独立。常用的模型为多变量伯努利模型和多项式模型,本篇采用多项式模型。
该算法分为三个步骤:
Setp1:确定测试集,对测试集做和训练样本一样的预处理(去停用词,分词,每条文本进行id编号)。
Sept2:计算已知概率。程序通过之前提供的测试样本,统计每一个类别在训练样本中出现的概率,计算出每个特征出现的概率,然后将其记录,作为已知概率。
Sept3:计算分类,有了之前得到的概率,通过提取所输入文本的特征,计算这些特征属于某一类别的概率,然后通过对概率进行判断,返回概率大的结果,实现情感分类。
融合AdaBoost算法做法的核心问题,是通过提高前一轮分类器分类错误的样本的权值,降低分类正确的样本权值,对于那些没有本分类正确的样本会得到后面分类器更多的关注。然后可以产生很多的弱分类器,通过多数加权投票组合这些弱分类器,加大误差率小的分类器,减少误差率大的分类器,使其在表决中起到较少的作用。
算法:输入数据集,T={(x1,y1),(x2,y2),...,(xn,yn)},xi∈X,X用来表示训练样本集空间,Yi∈Y={1,2}是某一类别集。每次迭代的索引为t=1,2,...,T,AdaBoost算法在训练样本上维护一套权重分布w,其中,每个训练样本都对应一个权重初始时,对所有i都有/>
在本发明实施例中,将AdaBoost算法用于朴素贝叶斯算法,每次迭代过程中,训练样本xi如果被错误分类,权重将增加,否则/>将减少。AdaBoost在迭代的时候,会为每个训练样本分配的权重为/>然后将其引入到参数P(Xk|Cj)中,则之前的朴素贝叶斯公式会变为:
因此,随着AdaBoost的每次迭代,样本权重每次都会更新,朴素贝叶斯的先验概率和后验概率都有变化,对朴素贝叶斯分类器的分类产生了扰动,增加了朴素贝叶斯分类器的相异性。
表1.本发明中含有URL的微博数量统计
统计项 | 结果 |
含有URL的微博数量 | 1756(总量:4780) |
平均引用次数 | 2.72 |
表2.本发明数据集信息
训练集 | 测试集 | 特征词 | 类别 |
13712 | 1509 | 383 | 2 |
表3.本发明前9条分类结果呈现表
表4.本发明与传统的方法比较结果图
参见图3和上述表格实验结果可以看出,本方法与传统的方法相比,取得了很明显的优势,并且每一步的实施都是必不可少的。
以上实施例仅用于说明本发明的设计思想和特点,其目的在于使本领域内的技术人员能够了解本发明的内容并据以实施,本发明的保护范围不限于上述实施例。所以,凡依据本发明所揭示的原理、设计思路所作的等同变化或修饰,均在本发明的保护范围之内。
Claims (8)
1.一种基于复杂网络的集成学习的文本情感分类方法,其特征在于:包括以下步骤:
S0:采集数据并对数据进行预处理得到原始特征集;
S1:通过现有信息增益方法对原始特征集进行特征选择,得到第一特征选择结果集;
S2:基于复杂网络综合特性对原始特征集进行特征选择,得到第二特征选择结果集;
S3:去除第一特征选择结果集与第二特征选择结果集的重复项,取并集融合得到最终特征选择结果集;具体步骤为:
定义信息增益是信息熵的差值,是移除某个变量的不确定性之后的信息量;采用信息增益算法IG计算特征项的不确定性造成的信息熵的差值,用于评价特征项对文档的重要程度,则信息增益公式为:
IG(X,Y)=E(X)-E(X|Y);
设包含特征项w的文档的概率为P(w),不包含特征项w的文档的概率为属于Ci类的文档的概率为P(Ci),包含特征项w且属于Ci类的文档的概率为P(Ci|w),不包含特征项w且不属于Ci类的文档的概率为/>语料库中文档类别的个数为n,则Ci类文档中是否包含特征项w的信息增益为:
按照信息增益值的降序排列特征项,提取排列靠前的一定数量的词语作为全局特征词,并保存特征词文本文件;
S4:采用TF-IDF方法对最终特征选择结果集中的特征进行权重计算;具体步骤为:
对最终特征选择结果集中的特征词进行排序,将正类放在前面,负类放在后面;采用TF-IDF算法计算特征词在不同类别中的权重,或通过SQL语句计算每一类特征的总权重;
设ni,j表示词ti在文档dj中出现的次数,表示文档dj中所有k个词次数的总和,定义词频TF是特征词ti在文档dj中出现的频率,频率越高对文档越重要,则词频TF的表达式为:
设|{j:ti∈dj}|表示词ti的文档数,定义逆文档频率IDF是包含特征词ti的文档占总文档D的比重的倒数,用于避免出现频率高但对文档分类作用小的词获得高权重,则逆文档频率IDF的表达式为:
则通过表达式:
TF-IDF=tfi,j·idfi,
表示词语对于文本的重要性随词频的增大而增大、随文档频率的增加而减小;在当前文本中出现的次数多,并且在别的文本中出现的次数少的词语对于文本有意义;均匀出现在各个文本中的词语对文本的意义小;
S5:配置环境构建分类训练模型,利用集成学习加强朴素贝叶斯方法对数据进行分类训练并输出结果。
2.根据权利要求1所述的一种基于复杂网络的集成学习的文本情感分类方法,其特征在于:所述的步骤S0中,具体步骤为:
S01:创建并运行爬虫程序,基于urllib标准库读取URL标签,利用requests库对服务器发送请求对象,利用BeautifulSoup库解析网页,获得文本数据;
S02:对文本数据进行包括清洗、分词的预处理工作得到原始特征集,并以txt格式存储为文本文档;文本文档包括停用词表、评论文本、分词后的数据,文本文档的保存格式为编号-文本-类别;
S03:采用SQL语句根据查询分析需求对评论文本进行ID编号,通过MySQL数据库对原始特征集增加主键约束。
3.根据权利要求1所述的一种基于复杂网络的集成学习的文本情感分类方法,其特征在于:所述的步骤S2中,具体步骤为:
S21:以特征词为节点,连接句子中共现跨度小于或等于2的特征词,合并处在不同句子中的相同特征词节点,根据复杂网络的综合特性对预处理后的文本数据构建加权复杂网络;
S22:分别计算节点ni的加权度、加权聚集系数和节点介数,并分别进行归一化处理;构造评估函数CF,以函数值作为节点ni的综合特征值;
S23:对节点的函数值进行排序,选取函数值较大的前m个节点对应的特征词作为文本的关键词。
4.根据权利要求3所述的一种基于复杂网络的集成学习的文本情感分类方法,其特征在于:所述的步骤S21中,具体步骤为:
用加权复杂网络的节点代表特征词,设节点的集合为:
N={n1,n2,n3,...,nk};
用加权复杂网络的边代表特征词之间的包括共现和邻接位置的语义相关关系,设经过预处理之后的原始特征词为n,复杂网络中的结点个数为k,加权复杂网络中边的集合为:
E={ei,j=(ni,nj)|ni,nj∈N};
用边的权值代表特征词的语义相关关系的程度,权值越大,表明特征词之间语义相关关系越紧密,设边eij的权重为wij,边的权重集合为:
W={w12,w13,...,wij,...};
则将文本表示成加权的复杂网络为:
G=(N,E,W)。
5.根据权利要求4所述的一种基于复杂网络的集成学习的文本情感分类方法,其特征在于:所述的步骤S22中,具体步骤为:
设节点ni的各部分的权重βi(1≤i≤3)是可调节的参数,则:
β1+β2+β3=1;
设节点ni与所有邻居节点nj的边的权值为Wij,则用于反映节点nj与其他节点的连接强度的加权度WDi为:
设用于表示节点ni邻接节点间边的权重和的节点ni的加权聚集度为WKi,节点ni的度数为ki,则加权聚集系数为:
设节点ni的介数为pi,以评估函数CF的函数值作为节点ni的综合特征值,则:
CFi=β1WDi+β2WCi+β3Pi。
6.根据权利要求1所述的一种基于复杂网络的集成学习的文本情感分类方法,其特征在于:所述的步骤S5中,具体步骤为:
S51:配置环境,确定待分类项组成的测试集,对测试集数据进行包括清洗、分词的预处理,并对测试集的每条文本进行id编号;
S52:假设各特征条件相互独立,对待分类项求解各类别出现的概率并记录为已知概率,构建包括多变量伯努利模型和多项式模型的分类训练模型;
S53:利用集成学习加强朴素贝叶斯方法对测试集数据进行分类训练,根据已知概率提取和计算待分类项的特征属于某一类别的概率,取概率最大的类别为待分类文本的所属类别并输出结果,实现对文本的情感分类。
7.根据权利要求6所述的一种基于复杂网络的集成学习的文本情感分类方法,其特征在于:所述的步骤S53中,集成学习融合AdaBoost算法,通过提高前一轮分类器分类错误的样本的权值,降低分类正确的样本权值,产生多个弱分类器;通过多数加权投票组合弱分类器,加大误差率小的分类器,减少误差率大的分类器,提高分类的准确率和效率。
8.根据权利要求6所述的一种基于复杂网络的集成学习的文本情感分类方法,其特征在于:所述的步骤S53中,具体步骤为:
S531:输入数据集T={(x1,y1),(x2,y2),...,(xn,yn)},xi∈X,X表示训练样本集空间,Yi∈Y={1,2}是某一类别集;每次迭代的索引为t=1,2,...,T,通过AdaBoost算法为每个训练样本分配权重初始时,对所有i都有/>
S532:将AdaBoost算法用于朴素贝叶斯算法;在迭代过程中若训练样本xi被错误分类,则权重增加;若训练样本xi被正确分类,则权重/>减少;将训练样本的权重为/>引入到参数P(Xk|Cj),则朴素贝叶斯公式变为:
样本权重、朴素贝叶斯的先验概率和后验概率随着AdaBoost的迭代而更新,对朴素贝叶斯分类器的分类产生扰动,增加了朴素贝叶斯分类器的相异性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110227294.1A CN112949713B (zh) | 2021-03-01 | 2021-03-01 | 一种基于复杂网络的集成学习的文本情感分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110227294.1A CN112949713B (zh) | 2021-03-01 | 2021-03-01 | 一种基于复杂网络的集成学习的文本情感分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112949713A CN112949713A (zh) | 2021-06-11 |
CN112949713B true CN112949713B (zh) | 2023-11-21 |
Family
ID=76246994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110227294.1A Active CN112949713B (zh) | 2021-03-01 | 2021-03-01 | 一种基于复杂网络的集成学习的文本情感分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112949713B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113344759B (zh) * | 2021-06-30 | 2023-04-25 | 北京建筑大学 | 一种移动源污染排放的分析方法 |
CN114528404A (zh) * | 2022-02-18 | 2022-05-24 | 浪潮卓数大数据产业发展有限公司 | 一种识别省市区的方法及装置 |
CN115409135B (zh) * | 2022-11-03 | 2023-02-03 | 南昌惠联网络技术有限公司 | 一种网络业务文档的分类管理方法 |
CN115759183B (zh) * | 2023-01-06 | 2023-05-16 | 浪潮电子信息产业股份有限公司 | 一种多结构文本图神经网络的相关方法和相关装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102789498A (zh) * | 2012-07-16 | 2012-11-21 | 钱钢 | 基于集成学习的中文评论文本的情感分类方法与系统 |
CN103116646A (zh) * | 2013-02-26 | 2013-05-22 | 浙江大学 | 一种基于云基因表达式编程的音乐情感识别方法 |
CN103365997A (zh) * | 2013-07-12 | 2013-10-23 | 华东师范大学 | 一种基于集成学习的观点挖掘方法 |
CN108062331A (zh) * | 2016-11-08 | 2018-05-22 | 南京理工大学 | 基于终生学习的增量式朴素贝叶斯文本分类方法 |
CN108733652A (zh) * | 2018-05-18 | 2018-11-02 | 大连民族大学 | 基于机器学习的影评情感倾向性分析的测试方法 |
CN108804651A (zh) * | 2018-06-07 | 2018-11-13 | 南京邮电大学 | 一种基于强化贝叶斯分类的社交行为检测方法 |
-
2021
- 2021-03-01 CN CN202110227294.1A patent/CN112949713B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102789498A (zh) * | 2012-07-16 | 2012-11-21 | 钱钢 | 基于集成学习的中文评论文本的情感分类方法与系统 |
CN103116646A (zh) * | 2013-02-26 | 2013-05-22 | 浙江大学 | 一种基于云基因表达式编程的音乐情感识别方法 |
CN103365997A (zh) * | 2013-07-12 | 2013-10-23 | 华东师范大学 | 一种基于集成学习的观点挖掘方法 |
CN108062331A (zh) * | 2016-11-08 | 2018-05-22 | 南京理工大学 | 基于终生学习的增量式朴素贝叶斯文本分类方法 |
CN108733652A (zh) * | 2018-05-18 | 2018-11-02 | 大连民族大学 | 基于机器学习的影评情感倾向性分析的测试方法 |
CN108804651A (zh) * | 2018-06-07 | 2018-11-13 | 南京邮电大学 | 一种基于强化贝叶斯分类的社交行为检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112949713A (zh) | 2021-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110717047B (zh) | 一种基于图卷积神经网络的Web服务分类方法 | |
CN112949713B (zh) | 一种基于复杂网络的集成学习的文本情感分类方法 | |
RU2628431C1 (ru) | Подбор параметров текстового классификатора на основе семантических признаков | |
US11379668B2 (en) | Topic models with sentiment priors based on distributed representations | |
RU2628436C1 (ru) | Классификация текстов на естественном языке на основе семантических признаков | |
Mehmood et al. | Discriminative feature spamming technique for roman urdu sentiment analysis | |
CN109858034B (zh) | 一种基于注意力模型和情感词典的文本情感分类方法 | |
CN111158641B (zh) | 基于语义分析和文本挖掘的事务类功能点自动识别方法 | |
WO2015003143A2 (en) | Method and system for simplifying implicit rhetorical relation prediction in large scale annotated corpus | |
CN112989802A (zh) | 一种弹幕关键词提取方法、装置、设备及介质 | |
CN114265935A (zh) | 一种基于文本挖掘的科技项目立项管理辅助决策方法及系统 | |
Yu et al. | Data-driven contextual valence shifter quantification for multi-theme sentiment analysis | |
Jaradat et al. | Hybrid-based Arabic single-document text summarization approach using genatic algorithm | |
Ao et al. | News keywords extraction algorithm based on TextRank and classified TF-IDF | |
CN111259156A (zh) | 一种面向时间序列的热点聚类方法 | |
Najibullah | Indonesian text summarization based on naïve bayes method | |
Hadni et al. | New model of feature selection based chaotic firefly algorithm for arabic text categorization. | |
Du et al. | An iterative reinforcement approach for fine-grained opinion mining | |
CN111523311B (zh) | 一种搜索意图识别方法及装置 | |
Razavi et al. | Word embedding-based approach to aspect detection for aspect-based summarization of persian customer reviews | |
CN117057346A (zh) | 一种基于加权TextRank和K-means的领域关键词抽取方法 | |
Rahimi et al. | Contextualized topic coherence metrics | |
Peruma | Document Clustering Using Graph Based Fuzzy Association Rule Generation. | |
Zadgaonkar et al. | An Approach for Analyzing Unstructured Text Data Using Topic Modeling Techniques for Efficient Information Extraction | |
CN114265936A (zh) | 一种科技项目文本挖掘的实现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |