1.本发明涉及数据分析领域,尤其是涉及一种舆情分析方法、系统及存储介质。
背景技术:2.在当前的互联网时代,网络信息爆炸,每时每刻都会有大量的新闻、短讯和文章等信息被发布到互联网上。而这些信息的发布者不单单是官方的媒体,还包括大量的个体、自媒体,体现出了网络舆论的高度自由化。
3.舆论往往会带有情感,这些情感有些是正面的,有些是负面的。其中,一旦负面舆论没有及时发现、及时纾解,就容易在酝酿一定时间后爆发,会带来不可估量的负面社会效应。因此,对网络舆论进行情感分析以判断该网络舆论是否是负面的是当前一个重要的研究领域。
4.目前常见的网络舆论的情感分析方法是通过预设特征词,每个特征词具有相应的情感权重,再抓取网络上的文本信息,识别文本信息中是否存在特征词,若存在特征词,则根据识别出的所有特征词所对应的情感权重来计算出情感值,并根据情感值来分析情感倾向。
5.然而互联网中时不时会产生新的网络词汇,而这些新的网络词汇中很大一部分是特定群体在宣泄当前的情绪,当抓取的文本信息中以新的网络词汇为主要的情感宣泄词时,上述的情感分析方法由于新的网络词汇并没有记载到预设的特征词中,无法正确判断当前文本信息的情感。
技术实现要素:6.为了更加准确地判断文本信息的情感倾向,本技术提供一种舆情分析方法、系统及存储介质。
7.第一方面,本技术提供一种舆情分析方法,采用如下的技术方案:一种舆情分析方法,包括以下步骤:获取文本信息,并确定文本信息所对应的行业领域;识别出文本信息中的高频词汇,所述高频词汇是指文本信息中出现频次超过预设频次的词汇;依次判断高频词汇是否属于预设特征库中的特征词,若高频词汇属于预设特征库中的特征词,则将相应的高频词汇定义为情感词汇;反之,将相应的高频词汇定义为待定词汇;在依次判断高频词汇是否属于预设特征库中的特征词之后,根据情感词汇确定当前文本信息的情感倾向,并判断从当前文本信息中识别出的高频词汇是否存在待定词汇;若从当前文本信息中识别出的高频词汇存在待定词汇,则根据待定词汇生成相应的标签,将标签赋予当前文本信息,并将待定词汇的频次信息存储到数据库中;定期汇总数据库中的同一高频词汇的频次信息,判断同一高频词汇的频次信息的
总量是否超过预设阈值;若同一高频词汇的频次信息的总量超过预设阈值,则定义对应的高频词汇为网络热词,抓取包含该网络热词且评价量高的若干文本信息,综合抓取出的所有文本信息的情感倾向以确定该网络热词的情感倾向,并将该网络热词作为新的特征词以添加到特征库中;每当新的特征词存储到特征库中,则对具有与新的特征词适配的标签的文本信息重新判断情感倾向。
8.通过上述方案,将文本信息中的频繁出现但又没有定义为特征词的词汇提取出来,并先评估出当前文本信息的情感倾向。当高频词汇出现的足够多时,表明该高频词汇已经变成当前的网络热词,就需要对高频词汇的情感倾向作出分析,进而重新定义包含大量该高频词汇的文本信息的情感倾向,以降低文本信息情感倾向判断的误差。
9.可选的,将待定词汇的频次信息存储到数据库中之后,还包括以下步骤:记录待定词汇的频次信息的存储时间,并建立存储时间与待定词汇的频次信息之间的对应关系;定期获取当前时间,根据当前时间和预设的存储时限计算出截止时间;删除数据库中所对应的存储时间早于截止时间的待定词汇的频次信息。
10.可选的,还包括以下步骤:定期对特征库中的特征词依次进行情感倾向的重新确定。
11.可选的,定期对特征库中的特征词依次进行情感倾向的重新确定,包括以下步骤:将当前需重新确定情感倾向的特征词定义为待测词汇,拉取多个包含待测词汇的实时文本信息;将实时文本信息所对应的特征词汇集到一起以形成特征集合,并从特征集合中剔除待测词汇;确定特征集合的情感倾向,并将确定出的特征集合的情感倾向更新为待测词汇的情感倾向。
12.可选的,识别出文本信息中的高频词汇之前,包括以下步骤:获取当前文本信息和同一行业领域的历史文本信息之间的重复率,选择重复率最高的重复率作为参考值,判断参考值是否超过预设重复值,若参考值超过预设重复值,则视为已判断情感;若参考值未超过预设重复值,则识别出文本信息中的高频词汇。
13.可选的,判断参考值是否超过预设重复值,包括以下步骤:判断参考值所对应的历史文本信息是否为近期历史信息,若参考值所对应的历史文本信息为近期历史信息,则判断参考值是否超过第一预设值;若参考值所对应的历史文本信息不为近期历史信息,则判断参考值是否超过第二预设值。
14.第二方面,本技术提供一种舆情分析系统,采用如下的技术方案:一种舆情分析系统,包括:信息获取模块,用于获取文本信息;
信息识别模块,用于确定文本信息所对应的行业领域,识别出文本信息中的高频词汇;信息分析模块,用于依次判断高频词汇是否属于预设特征库中的特征词,若高频词汇属于预设特征库中的特征词,则将相应的高频词汇定义为情感词汇;反之,将相应的高频词汇定义为待定词汇;情感分析模块,用于在依次判断高频词汇是否属于预设特征库中的特征词之后,根据情感词汇确定当前文本信息的情感倾向,并判断从当前文本信息中识别出的高频词汇是否存在待定词汇;若从当前文本信息中识别出的高频词汇存在待定词汇,则根据待定词汇生成相应的标签,将标签赋予当前文本信息,并将待定词汇的频次信息存储到数据库中;以及用于每当新的特征词存储到特征库中,则对具有与新的特征词适配的标签的文本信息重新判断情感倾向;数据统计模块,用于定期汇总数据库中的同一高频词汇的频次信息,判断同一高频词汇的频次信息的总量是否超过预设阈值;若同一高频词汇的频次信息的总量超过预设阈值,则定义对应的高频词汇为网络热词,并控制信息获取模块抓取包含该网络热词且评价量高的若干文本信息,以及控制情感分析模块综合抓取出的所有文本信息的情感倾向以确定该网络热词的情感倾向,并将该网络热词作为新的特征词以添加到特征库中。
15.第三方面,本技术提供一种计算机可读存储介质,存储有能够被处理器加载并执行上述舆情分析方法的计算机程序。
16.综上所述,将文本信息中的频繁出现但又没有定义为特征词的词汇提取出来,并先评估出当前文本信息的情感倾向。当高频词汇出现的足够多时,表明该高频词汇已经变成当前的网络热词,就需要对高频词汇的情感倾向作出分析,进而重新定义包含大量该高频词汇的文本信息的情感倾向,以降低文本信息情感倾向判断的误差。
附图说明
17.图1是本技术实施例的收集待定词汇的步骤流程图。
18.图2是本技术实施例的文本信息情感倾向重新定义的步骤流程图。
19.图3是本技术实施例中对数据库数据进行定期清理的步骤流程图。
20.图4是本技术实施例的系统框图。
21.附图标记说明:1、信息获取模块;2、信息识别模块;3、信息分析模块;4、情感分析模块;5、数据统计模块。
具体实施方式
22.以下结合附图1至图4对本技术作进一步详细说明。
23.本技术提供一种舆情分析方法,应用于舆情分析系统,舆情分析系统中存储有特征词库,特征词库中预存储有多个特征词及每个特征词所属的情感倾向类别,情感倾向类别包括正向和负向。
24.一种舆情分析方法,参见图1,包括以下步骤:s100、获取文本信息,并确定文本信息所对应的行业领域。
25.文本信息是互联网上新发布稿件中文字部分的信息。例如,稿件为文章时,文本信息是整个文章的文字内容;稿件为视频时,则文本信息仅是该视频的标题。
26.文本信息的获取方式是通过预设脚本在特定平台和/或搜索引擎中抓取的。其中,特定平台包括百度贴吧、微博、微信公众号、抖音等等,搜索引擎包括百度搜索引擎、360搜索引擎等等。
27.预设脚本的工作模式可以设定为实时抓取,也可以设定为定时抓取。在本实施例中,采用定时抓取的工作模式,并且针对该工作模式下,新发布的稿件在被脚本抓取时可能存在一定的阅读以及评论,脚本还会抓取该稿件下的评论,并且优先抓取点赞数多或是回复量多的评论,直到抓取的评论数满足预设个数。通过抓取评论的方式,可以对稿件进行补充,尤其是稿件为视频时,其标题内容一般较短,难以充分体现情感倾向,因此补充评论内容后,有助于更加准确地判断出该稿件的情感倾向。
28.因此,在本实施例中,文本信息包括稿件信息和评论信息。其中,评论信息可为空(即相应的稿件无评论)。
29.确定文本信息所对应的行业领域,其确定方式有两种,一种是根据稿件所发布的特定平台的具体类别来确定,例如,特定平台为百度贴吧中的交通吧,那么该文本信息所对应的行业领域为交通领域。另一种是根据文本信息中的稿件信息的具体内容来确定,例如,稿件信息为“xx市新增礼让行人电子抓拍”通过预设的确定程序即可判断为交通领域,预设的确定程序可以是包含基于深度学习构建的模型的复杂程序,也可以是通过关键字进行相关领域匹配的简单程序。
30.确定文本信息所对应的行业领域的目的是为了在判断出文本信息的情感倾向后,能够将属于同一行业领域的文本信息放在一起显示,并且也有方便对后续新增的文本信息进行查重。
31.在确定文本信息所对应的行业领域后,即可根据对应的特征词来判断该文本信息的情感倾向。具体步骤可见步骤s200至步骤s800。
32.在一个实施例中,若仅需对单一行业领域的文本信息进行舆情分析,则可以将行业领域的确定程序以及预设的筛选程序添加到预设脚本中,即将确定文本信息所对应的行业领域提前到获取文本信息之前,使得后续获取的文本信息均属于所对应的行业领域。
33.例如,在仅分析交通领域的文本信息的情感倾向时,预设脚本在抓取到文本信息后,先判断该文本信息是否与交通领域相关,若该文本信息是与交通领域相关,则将该文本信息进行上传,否则舍弃该文本信息。
34.s200、识别出文本信息中的高频词汇。
35.高频词汇是指文本信息中出现频次超过预设频次的词汇。预设频次包括预设稿件频次和预设评论频次,其中,预设稿件频次用于判断稿件信息中的词汇是否为高频词汇;预设评论频次用于判断评论信息中的词汇是否为高频词汇。
36.也就是说,在识别文本信息中的高频词汇时,是分别从稿件信息和评论信息中识别相应的高频词汇,再汇总到一起作为该文本信息的高频词汇。
37.此外,预设稿件频次具有多个不同的预设值,预设值的选定与稿件信息的字符数量有关,例如,预设值有a、b、c三个,预设值a对应文本内容处在1-20范围的稿件信息,预设值b对应字符数量处在21-50范围的稿件信息,预设值c对应字符数量处在51以上的稿件信
息,相应的,预设值a<预设值b<预设值c。
38.设置不同的预设值是既为了能够在字符数量少的稿件信息(如视频标题所生成的稿件信息)中提取出高频词汇,也为了减少在字符数量多的稿件信息(如文章所生成的稿件信息)中所提取地高频词汇的数量。
39.s300、依次判断高频词汇是否属于预设特征库中的特征词,若高频词汇属于预设特征库中的特征词,则将相应的高频词汇定义为情感词汇;反之,将相应的高频词汇定义为待定词汇。
40.判断高频词汇是否属于预设特征库中的特征词,是通过将高频词汇与预设特征库中的特征词依次进行匹配,若能匹配到与高频词汇相同的特征词,则认为高频词汇属于预设特征库中的特征词;若不能匹配到与高频词汇相同的特征词,则认为高频词汇不属于预设特征库中的特征词。
41.每个特征词均具有相应的情感倾向类别。
42.可以匹配到特征词的高频词汇同样具有明确的情感倾向,因此定义为情感词汇,而无法匹配到特征词的高频词汇则对应的情感不明确,因此无法直接用于情感倾向的判断。
43.s400、在依次判断高频词汇是否属于预设特征库中的特征词之后,根据情感词汇确定当前文本信息的情感倾向,并判断从当前文本信息中识别出的高频词汇是否存在待定词汇。
44.一般而言,脚本抓取的文本信息除非极其简单,否则都是会存在情感词汇的,也就是说可以初步判断出文本信息的情感倾向。当然由于可能存在待定词汇的干扰,导致判断出的文本信息的情感倾向并不准确,因此若文本信息中存在待定词汇,则当前的情感倾向只能是临时使用,还需要通过先对待定词汇的情感倾向进行分析后再来核对。
45.根据情感词汇确定当前文本信息的情感倾向就是统计正面倾向的特征词的数量和负面倾向的特征词数量,正面倾向的特征词的数量明显大于负面倾向的特征词数量时,当前文本信息的情感倾向为正面;反之,当前文本信息的情感倾向为负面。
46.当然,若正面倾向的特征词和负向倾向的特征词相同或者相近时,为了更加客观,可以判断当前文本信息的情感倾向为中性。
47.s500、若从当前文本信息中识别出的高频词汇存在待定词汇,则根据待定词汇生成相应的标签,将标签赋予当前文本信息,并将待定词汇的频次信息存储到数据库中。
48.根据待定词汇生成相应的标签,是指生成与同一文本信息下的待定词汇一一对应的子词缀,再将子词缀汇总成标签。
49.若从当前文本信息中识别出的高频词汇不存在待定词汇,则结束对当前文本信息的情感分析。
50.在一个实施例中,将待定词汇的频次信息存储到数据库中之后,参见图3,还包括以下步骤:s510、记录待定词汇的频次信息的存储时间,并建立存储时间与待定词汇的频次信息之间的对应关系。
51.s520、定期获取当前时间,根据当前时间和预设的存储时限计算出截止时间。
52.截止时间的计算方式是将当前时间减去预设的存储时限。而当前时间的定期获取
方式有多种,可以是每天的特定时间获取一次,也可以是间隔一定时间获取一次,具体方式由工作人员设定。
53.s530、删除数据库中所对应的存储时间早于截止时间的待定词汇的频次信息。
54.定期删除数据库中的待定词汇的频次信息就是为了避免长时间的累加,进而降低在情感倾向判断时出现误差的概率。
55.另外,删除数据库中所对应的存储时间早于截止时间的待定词汇的频次信息,还包括删除与所存储时间早于截止时间的待定词汇相对应的标签。为了实现同步删除标签这一动作,在抓取文本信息时记录相应的抓取时间。删除数据库中的待定词汇时,筛选出抓取时间早于截止时间且含有与待定词汇对应的标签的文本信息,再将该文本信息的标签删除。参见图2,还包括以下步骤:s600、定期汇总数据库中的同一高频词汇的频次信息,判断同一高频词汇的频次信息的总量是否超过预设阈值。
56.数据库中同一高频词汇的定期汇总的频率一般为1天一次,也可能由人工根据信息变化情况来进行修改。理论上,信息变化速度越快,定期汇总的频率就越频繁。
57.s700、若同一高频词汇的频次信息的总量超过预设阈值,则定义对应的高频词汇为网络热词,抓取包含该网络热词且评价量高的若干文本信息,综合抓取出的所有文本信息的情感倾向以确定该网络热词的情感倾向,并将该网络热词作为新的特征词以添加到特征库中。
58.本步骤中所抓取的文本信息,是从已经判断出情感倾向且标签仅含与当前网络热词所对应的子词缀或是除含与当前网络热词所对应的子词缀外其余子词缀的数量低于预设个数的文本信息中抓取出的,其中预设个数一般为3个。
59.若同一高频词汇的频次信息的总量未超过预设阈值,则不动作。
60.s800、每当新的特征词存储到特征库中,则对具有与新的特征词适配的标签的文本信息重新判断情感倾向。
61.对具有标签的文本信息重新判断情感倾向后,将标签中与新的特征词对应的子词缀删除。并判断标签是否存在其他子词缀,若标签无其他子词缀,则删除标签;若标签存在其他子词缀,则保留标签。
62.保留标签的目的是为了在新的特征词存储到特征库时仍可继续对进行重新判断情感倾向。
63.由此可以看出,尽量步骤s800与步骤s530中均具有删除标签的动作,但是两者还是存在区别的。当标签包括多个子词缀时,前者是只有将所有的子词缀都删除后才会删除标签;后者是任意一个子词缀所对应的待测词汇被从数据库中删除时,即删除整个标签。
64.除了自动删除标签外,还可以人工进行删除,工作人员在查阅文本信息后可以手动确定或修改该文本信息的情感倾向,并将相应的标签删除。
65.在一个实施例中,将完成情感倾向分析的文本信息在同一行业领域的显示界面进行展示,并按照预设顺序对显示界面中的文本信息进行排序,预设顺序为具有标签的文本信息排列在不具有标签的文本信息的后面。
66.预设顺序只是将文本信息向用户展示的初始排序,用户也可以根据实际需要设置展示规则或展示顺序,例如仅展示未具有标签的文本信息、优先展示具有标签的文本信息。
67.此外,由于网络热词甚至是人工预设的特征词都可能发生词意变化,导致其情感倾向也随之变化,因此并不是特征库中的特征词所对应的情感倾向就是固定不变的。
68.为降低情感倾向的误判,还包括以下步骤:定期对特征库中的特征词依次进行情感倾向的重新确定。
69.在一个实施例中,定期对特征库中的特征词依次进行情感倾向的重新确定,包括以下步骤:s910、将当前需重新确定情感倾向的特征词定义为待测词汇,拉取多个包含待测词汇的实时文本信息。
70.实时文本信息是指已经判断出情感倾向并且展示时间处在预设时间内的文本信息,其中,预设时间由人工进行设定,为了提高数据的及时性一般将预设时间设定为1天。
71.实时文本信息的数量可由人工制定,也可以设置有与文本内容有关的额定值,在抓取出的实时文本信息的内容量达不到额定值时则继续抓取符合条件的实时文本信息,直到实时文本信息的内容总量超过或等于额定值。
72.当然若采用后者,则还需要设定最低数量,在本实施中,最低数量为3个,例如,即使第一个抓取的实时文本信息的内容量就满足了额定值的要求,也需要再补充两个实时文本信息。
73.s920、将实时文本信息所对应的特征词汇集到一起以形成特征集合,并从特征集合中剔除待测词汇。
74.当然在处理顺序上,也可以先在每个实时文本信息所对应的特征词中剔除掉待测词汇后,在将所有实时文本信息所对应的特征词集合到一起以形成特征集合。
75.s930、确定特征集合的情感倾向,并将确定出的特征集合的情感倾向更新为待测词汇的情感倾向。
76.在一个实施例中,识别出文本信息中的高频词汇之前,包括以下步骤:s110、获取当前文本信息和同一行业领域的历史文本信息之间的重复率,选择重复率最高的重复率作为参考值,判断参考值是否超过预设重复值。
77.s120、若参考值超过预设重复值,则视为已判断情感。
78.s130、若参考值未超过预设重复值,则识别出文本信息中的高频词汇。
79.历史文本信息是指已经完成情感倾向判断的文本信息,可以包含标签也可以不包含标签。获取重复率的方式就是采用查重的方式来比较当前文本信息和历史文本信息之间内容的重复度。
80.由于获取信息的渠道有多个,因此也容易出现重复获取同一内容的信息的可能性,为了降低重复展出,要对信息的重复率进行评估,屏蔽多余且重复的信息对于人工核查的影响。
81.在一个实施例中,历史文本信息还可以进一步划分成近期历史信息和长期历史信息,相应的,预设重复值进一步划分为与近期历史信息对应的第一预设值和与长期历史信息对应的第二预设值。其中,近期历史信息所生成的时间晚于长期历史信息所生成的时间,第一预设值低于第二预设值。
82.判断参考值是否超过预设重复值,包括以下步骤:s111、判断参考值所对应的历史文本信息是否为近期历史信息。
83.s112、若参考值所对应的历史文本信息为近期历史信息,则判断参考值是否超过第一预设值。
84.s113、若参考值所对应的历史文本信息不为近期历史信息,则判断参考值是否超过第二预设值。
85.参考值所对应的历史文本信息就是与当前文本信息重复率最高的历史文本信息,当该历史文本信息为近期历史信息时,说明当前文本信息与近期已经展出的信息相似,那么可能存在由不同渠道发出同一内容的可能性,并且由于时间间隔短这一可能性较高,而短时间内出现类似但又相互独立的信息的可能性低,因此采用数值更低的第一预设值来进行比较,提高筛选力度。
86.而当参考值所对应的历史文本信息为长期历史信息时,说明短期内并没有出现类似的信息,大概率是新的信息被传到互联网上,小概率是已经在互联网传播的消息隔段时间后重新被发表。而这两种情况的区别就在于前者与历史文本信息的相似度小,后者与历史文本信息的相似度更大。因此采用数值更高的第一预设值来将小概率的事件筛选掉。
87.本技术实施例还提供一种舆情分析系统,参见图4,包括:信息获取模块1,用于获取文本信息。
88.信息识别模块2,用于确定文本信息所对应的行业领域,识别出文本信息中的高频词汇。
89.信息分析模块3,用于依次判断高频词汇是否属于预设特征库中的特征词,若高频词汇属于预设特征库中的特征词,则将相应的高频词汇定义为情感词汇;反之,将相应的高频词汇定义为待定词汇。
90.情感分析模块4,用于在依次判断高频词汇是否属于预设特征库中的特征词之后,根据情感词汇确定当前文本信息的情感倾向,并判断从当前文本信息中识别出的高频词汇是否存在待定词汇;若从当前文本信息中识别出的高频词汇存在待定词汇,则根据待定词汇生成相应的标签,将标签赋予当前文本信息,并将待定词汇的频次信息存储到数据库中;以及用于每当新的特征词存储到特征库中,则对具有与新的特征词适配的标签的文本信息重新判断情感倾向。
91.数据统计模块5,用于定期汇总数据库中的同一高频词汇的频次信息,判断同一高频词汇的频次信息的总量是否超过预设阈值;若同一高频词汇的频次信息的总量超过预设阈值,则定义对应的高频词汇为网络热词,并控制信息获取模块1抓取包含该网络热词且评价量高的若干文本信息,以及控制情感分析模块4综合抓取出的所有文本信息的情感倾向以确定该网络热词的情感倾向,并将该网络热词作为新的特征词以添加到特征库中。
92.本技术实施例还提供一种计算机可读存储介质,存储有能够被处理器加载并执行上述任一种舆情分析方法的计算机程序。
93.以上均为本技术的较佳实施例,并非依此限制本技术的保护范围,故:凡依本技术的结构、形状、原理所做的等效变化,均应涵盖于本技术的保护范围之内。