[发明专利]一种基于网购评价的细粒度情感分析方法有效
| 申请号: | 201910702075.7 | 申请日: | 2019-07-31 | 
| 公开(公告)号: | CN110489523B | 公开(公告)日: | 2021-12-17 | 
| 发明(设计)人: | 缪亚林;张阳;程文芳;刘学敏;姬怡纯;孔艳龙 | 申请(专利权)人: | 西安理工大学 | 
| 主分类号: | G06F16/33 | 分类号: | G06F16/33;G06F16/35;G06F16/951;G06F16/955;G06F40/289;G06F40/30 | 
| 代理公司: | 西安弘理专利事务所 61214 | 代理人: | 杜娟 | 
| 地址: | 710048 陕*** | 国省代码: | 陕西;61 | 
| 权利要求书: | 查看更多 | 说明书: | 查看更多 | 
| 摘要: | |||
| 搜索关键词: | 一种 基于 评价 细粒度 情感 分析 方法 | ||
1.一种基于网购评价的细粒度情感分析方法,其特征在于,包括以下步骤:
步骤1:网购评价数据集的采集;
步骤2:网购评价数据的预处理;
步骤3:确定最终的实验数据并划分数据集;
步骤4:采用字向量进行文本的训练;
步骤5:建立BiLSTM-CRF改进模型,输入字向量和词语位置结合的特征;
步骤6:训练BiLSTM-CRF改进模型并进行情感分析;
步骤1使用Python语言从网购平台网页HTML标签抓取数据,具体包括:
步骤1.1:打开网购平台网站需要爬取的网页文件,分析页面结构,获取url参数,找到url参数数值大小变化的规律;
步骤1.2:打开对应的网页获取到网络地址url,找到网页源代码中的评论数据,然后采用requests的get方法发送网页访问请求,接收到的Response里包含了网页数据,采用BeautifulSoup解析数据,获得只包含评论数据的数据包;
步骤1.3:采用python的正则表达式模块:re模块的findall方法对网页数据进行筛选,获得需要的数据;
步骤1.4:存储数据为txt文本;
步骤2具体包括:
步骤2.1:语料库的构建
结合产品评价属性级别情感分析的需求,制定四要素标注体系,定义如下:
Model={Sentence,Aspect,Emotion,Polarity} (1)
式(1)中:Sentence表示原始的评论句子;Aspect表示句子中的属性词,若有多个属性词用英文的分号隔开;Emotion表示句子中的情感词;Polarity表示是情感词的极性判断,分为正面、中立和负面,取值为(1,0,-1);
步骤2.2:实验数据处理
步骤2.2.1:使用{B,I,O}方式进行序列标注,其中B表示目标词汇的开始,I表示目标词汇的剩余部分,O表示不属于目标词汇的其它词汇;具体的标注定义如所示,标注类型及其具体含义分别为:B-ASP为属性词的第一个字、I-ASP为剩余的属性词、B-POS为极性为正的情感词的第一个字、I-POS为剩余的正面情感词、B-NEG为极性为负的情感词的第一个字、I-NEG为剩余的负面情感词、B-ZER为极性为中立的情感词的第一个字、I-ZER为剩余的中立情感词、O为不属于上述任何情况的字;
步骤2.2.2:对评论语料的句子进行停用词处理,包括去除标点符号、英文字符和数字及其它非中文符号;
步骤2.2.3:分别判断句子中的每个字属于属性词还是情感词,如果是属性词,继续判断该字是否属于属性词的第一个字,如果成立,则将该字标注为B-ASP;如果是情感词再根据“sentiment_anls-情感正负面”列的数据,将情感词直接标定为对应的极性标签;
步骤3中通过去重和无关评论筛选,确定最终的实验数据,并按照6:2:2的比例进行训练集、验证集和测试集的划分;
步骤4具体包括:
步骤4.1:采用维基百科和手机领域的评价数据作为训练语料;
步骤4.2:将训练语料中的所有字建立一个查找表,查找表是一个数字序列,每个字对应一个序列编号;
步骤4.3:采用Gensim里的CBOW模型进行训练,训练参数如下所示,训练参数及其取值和相应的意义分别为:size-100-向量维度、window-5-窗口大小、sg-0-CBOW模型、min_count-5-词频低于该值丢弃、batch_words-10000-每一批的单词数量;
步骤4.4:将训练好的向量初始化查找表;
步骤5的BiLSTM-CRF改进模型第一层是输入层,第二层是双向LSTM层,第三层是CRF层,具体步骤为:
步骤5.1:首先将步骤2.2.1中标注信息总结定义为如式(2)所示,然后将式(2)标注信息采用数字的形式进行标识,如式(3)所示;再将文本序列进行分词后,提取词语的位置信息;最后将字向量、标注信息标识、词语位置信息共同输入BiLSTM-CRF改进模型;
{O,B-ASP,I-ASP,B-POS,I-POS,B-NEG,I-NEG,B-ZER,I-ZER} (2)
步骤5.2:自动提取句子特征,向量序列(x1,x2,…,xn)是双向LSTM的输入,将正向LSTM的输出序列与反向LSTM的输出序列按位置进行拼接得到完整的序列,再设置dropout后,接入一个线性层,将序列进行维度转换后为提取的句子特征,记作矩阵P=(p1,p2,…,pn),pi中的每一维pij代表将字xi分类到第j个标签的非归一化概率;
步骤5.3:进行句子级的序列标注,CRF层存在一个转移矩阵A,Aij代表标签i转移到标签j的转移概率,对于一个输入序列x=(x1,x2,…,xn)对应的预测标签序列y=(y1,y2,…,yn),预测得分的计算如下:
由式(4)可知整个序列的预测得分等于各个位置的得分之和,并且由双向LSTM层的输出矩阵和CRF的转移矩阵决定,对其进行归一化后的概率:
模型训练时通过最大似然估计得到最优标注序列,公式如(6)所示:
模型在预测过程使用动态的Viterbi算法求解最优路径如式(7)所示:
步骤6具体包括:采用Adam算法使模型收敛和对参数进行更新,同时在训练网络的每个节点引入Dropout;训练过程中使用Adma优化算法进行网络参数的优化,其中β1=0.9,利用Adam算法对参数进行更新,通过不断地参数调节,将模型的学习率设置为lr=0.001,批处理的样本数设置为batch_siz=20.0,随机抽取训练节点占总节点的数目设置为dropout_keep=0.5,使用预训练向量设置为pre_emb=false;根据迭代次数遍历整个训练样本集,保存训练好的网络模型的结构及参数;此后如步骤5.2向每个节点引入Dropout。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安理工大学,未经西安理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910702075.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于用户评分的情感词典构建方法
 - 下一篇:涉刑案件数据智能审查方法及装置
 





