公开/公告号CN107291952A
专利类型发明专利
公开/公告日2017-10-24
原文格式PDF
申请/专利号CN201710627611.2
发明设计人 徐波;
申请日2017-07-28
分类号
代理机构广州骏思知识产权代理有限公司;
代理人吴静芝
地址 510530 广东省广州市萝岗区伴河路90号1号楼
入库时间 2023-06-19 03:35:50
法律状态公告日
法律状态信息
法律状态
2020-05-19
授权
授权
2017-11-24
实质审查的生效 IPC(主分类):G06F17/30 申请日:20170728
实质审查的生效
2017-10-24
公开
公开
技术领域
本发明涉及人工智能领域,特别是一种提取有意义串的方法及装置。
背景技术
在舆情分析和话题挖掘中,模型的话题输出形式的粒度往往都是词语级,需要使用者作进一步的归纳总结,同时带有较强的主观色彩,容易产生歧义。
现有技术中,在进行舆情分析时,挖掘热点话题的流程一般如下:
1)对网络上抓取到的非结构化文本信息进行预处理;
2)把预处理后的语料进行词向量化,映射到高维特征空间;
3)将代表语料的特征进行话题聚类,得到若干个话题;
4)从每个话题中,各自输出Top N个词语。
然而,现有技术仍然存在以下的缺点和不足:
话题的输出粒度是词语级,一个词语所包含的信息量比较少,而且词语之间的关系不明确,词语的词性也没有清晰地标注出来,当使用者对同一话题的词语作归纳总结时,不能够客观地理解话题的实际内容,容易造成歧义,对网络舆情的判断出现偏差。
发明内容
本发明的目的在于克服现有技术的缺点与不足,提供了一种提取有意义串的方法及装置。
本发明通过以下的方案实现:一种提取有意义串的方法,包括以下步骤:
获取原始语料并进行处理;
提取重复串;
对重复串的前后缀进行匹配;
过滤噪声,生成有意义串;
将有意义串进行匹配,获取匹配度最高的有意义串。
作为本发明的进一步改进,所述步骤:获取原始语料并进行处理中,具体包括:
从网络抓取需要进行分析的文本;
对非结构化的文本进行预处理和词向量化;
根据所述向量对网页进行聚类;
将同一话题的原始语料集中到同一个文档中并进行分词。
作为本发明的进一步改进,所述步骤:提取重复串中,具体包括:
依次导入同一话题且已预先分词的语料;
统计非停用词的词频,并对语料中围绕在所述非停用词前后的词语,并分别赋予一个ID;
对非停用词的词频进行判断,若词频小于阈值的,则过滤,否则认定为重复串。
作为本发明的进一步改进,所述步骤:对重复串的前后缀进行匹配中,具体包括:
对重复串进行遍历;
根据记录好的前缀ID和后缀ID,依次统计重复串前缀和后缀同一词语出现的频率。
作为本发明的进一步改进,所述步骤:过滤噪声,生成有意义串中,具体包括:
计算紧密度,若紧密度大于阈值,则将前缀、后缀和重复串进行连接,构成一个有意义串,否则,进行过滤;所述紧密度为前缀、后缀的词频除以对应重复串的词频。
作为本发明的进一步改进,所述步骤:将有意义串进行匹配,获取匹配度最高的有意义串中,具体包括:
通过textrank技术,计算每一篇文章的关键句,并抽取所有文章的标题;
把关键句和标题存入数据库中,用抽取到的有意义串在所有关键句和标题中进行检索匹配;
根据匹配数进行排序,获取匹配度最高的有意义串,并将该有意义串代表的话题进行展现。
本发明还提供了一种提取有意义串的装置,其包括
语料获取处理模块,用于获取原始语料并进行处理;
提取模块,用于提取重复串;
前后缀匹配模块,用于对重复串的前后缀进行匹配;
噪声过滤模块,用于过滤噪声,生成有意义串;
有意义串匹配模块,用于将有意义串进行匹配,获取匹配度最高的有意义串。
作为本发明的进一步改进,所述语料获取处理模块,包括:
抓取模块,用于从网络抓取需要进行分析的文本;
预处理模块,用于对非结构化的文本进行预处理和词向量化;
聚类模块,用于根据所述向量对网页进行聚类;
分词模块,用于将同一话题的原始语料集中到同一个文档中并进行分词。
作为本发明的进一步改进,所述提取模块中,具体包括:
导入模块,用于依次导入同一话题且已预先分词的语料;
非停用词统计模块,用于统计非停用词的词频,并对语料中围绕在所述非停用词前后的词语,并分别赋予一个ID;
词频判断模块,用于对非停用词的词频进行判断,若词频小于阈值的,则过滤,否则认定为重复串。
作为本发明的进一步改进,所述前后缀匹配模块,包括:
遍历模块,用于对重复串进行遍历;
前后缀统计模块,用于根据记录好的前缀ID和后缀ID,依次统计重复串前缀和后缀同一词语出现的频率。
作为本发明的进一步改进,所述噪声过滤模块具体包括:
紧度度计算判断模块,用于计算紧密度,若紧密度大于阈值,则将前缀、后缀和重复串进行连接,构成一个有意义串,否则,进行过滤;所述紧密度为前缀、后缀的词频除以对应重复串的词频。
作为本发明的进一步改进,所述有意义串匹配模块,包括:
抽取模块,用于通过textrank技术,计算每一篇文章的关键句,并抽取所有文章的标题;
关键句和标题匹配模块,用于把关键句和标题存入数据库中,用抽取到的有意义串在所有关键句和标题中进行检索匹配;
排序模块,用于根据匹配数进行排序,获取匹配度最高的有意义串,并将该有意义串代表的话题进行展现。
相比于现有技术,本发明通过提取粗粒度的有意义串,匹配出话题的关键句,可以让使用者在进行舆情分析的时候,更快速更准确地挖掘出当前发生的热点话题,从而制定相应的决策,引导舆论的发展。
为了更好地理解和实施,下面结合附图详细说明本发明。
附图说明
图1是本发明的提取有意义串的方法的步骤流程图。
图2是本发明的步骤S1的具体步骤流程图。
图3是本发明的步骤S2的步骤流程图。
图4是本发明的步骤S3的步骤流程图。
图5是本发明的步骤S5的步骤流程图。
图6是本发明的提取有意义串的装置的模块连接框图。
具体实施方式
以下结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
请参阅图1,其为本发明的提取有意义串的方法的步骤流程图。本发明提供了一种提取有意义串的方法,包括以下步骤:
S1:获取原始语料并进行处理。
进一步,请参阅图2,其为本发明的步骤S1的具体步骤流程图。所述步骤S1中具体包括:
S11:从网络抓取需要进行分析的文本。
S12:对非结构化的文本进行预处理和词向量化。
S13:根据所述向量对网页进行聚类。
S14:将同一话题的原始语料集中到同一个文档中并进行分词。
在本步骤S1中,因为网络热点信息一般抓取整个网页,所以预处理部分为去除页面的广告得到正文。再把正文分词进行词向量化,根据这些向量就可以对网页进行聚类。在本实施例中采用k-means算法进行聚类,聚类之后,用人工定义的类别去去除每一天都经常出现的类别,因为这些类别虽然网页数量很多,但是并不是热点。接着,在剩下的类别中,将同一话题的原始语料集中到同一个文档中并进行分词,并开始计算重复串。
S2:提取重复串。
进一步请参阅图3,其为本发明的步骤S2的步骤流程图。所述步骤S2中具体包括:
S21:依次导入同一话题且已预先分词的语料。
S22:统计非停用词的词频,并对语料中围绕在所述非停用词前后的词语,并分别赋予一个ID。
S23:对非停用词的词频进行判断,若词频小于阈值的,则过滤,否则认定为重复串。
在本步骤S2中,首先依次导入同一话题且已预先分词的语料。为减小模型的时间复杂度,只统计非停用词的词频,然后,对非停用词的词频进行判断,若词频小于阈值的,则过滤,否则认定为重复串。并对语料中,围绕在词语前后的词语,赋予一个ID。例如,当词为“资产”“工商业”‘重组’等词大量出现的时候,认定为这些词是挖掘处理的重复串。
S3:对重复串的前后缀进行匹配。
进一步,请参阅图图4,其为本发明的步骤S3的步骤流程图。所述步骤S3中具体包括:
S31:对重复串进行遍历。
S32:根据记录好的前缀ID和后缀ID,依次统计重复串前缀和后缀同一词语出现的频率。
在本步骤S3中,首先对步骤S2中得到的重复串进行遍历。然后,根据先前记录好的前(后)缀id,依次统计重复串前(后)缀同一词语出现的频率,其中,同一词语对于不同的重复串有不同的id,同一重复串有多个前(后)缀词语。由于记录了重复串的前(后)缀id,在统计词频时,只需在有前后串ID的文本间搜索,无需对整个语料进行遍历,所以大大减少了统计词频的时间。
S4:过滤噪声,生成有意义串。
所述步骤S4中具体为:计算紧密度,若紧密度大于阈值,则将前缀、后缀和重复串进行连接,构成一个有意义串,否则,进行过滤;所述紧密度为前缀、后缀的词频除以对应重复串的词频。
在本步骤S4中,首先,计算紧密度,若紧密度大于阈值,则将前(后)缀和重复串进行连接,构成一个有意义串,否则,过滤。定义紧密度为前(后)缀的词频除以对应重复串的词频,紧密度越接近1,说明这两个词语的稳定性越强,但考虑到有意义串内的词语有可能会出现在语料中其他的地方,所以设定这个阈值小于1。通过这个方法,就可以把类似‘资产重组’这样的稳定词语合并为有意义串,而“工商业重组”这种合并密度不足,不够稳定的组合,会被过滤。
S5:将有意义串进行匹配,获取匹配度最高的有意义串。
进一步请参阅图5,其为本发明的步骤S5的步骤流程图。所述步骤S5中具体包括:
S51:通过textrank技术,计算每一篇文章的关键句,并抽取所有文章的标题。
S52:把关键句和标题存入数据库中,用抽取到的有意义串在所有关键句和标题中进行检索匹配。
S53:根据匹配数进行排序,获取匹配度最高的有意义串,并将该有意义串代表的话题进行展现。
在本步骤S5中,通过textrank技术,对每一篇文章计算该文章的关键句。抽取所有文章的标题。把关键句和标题存入数据库中,用抽取到的有意义串在所有关键句中进行检索匹配。并根据匹配数排序。获取匹配分数最高的一句,作为该有意义串所代表的话题展现。
通过本发明的提取有意义串的方法,可以实现对大规模网页及聊天数据进行热点挖掘。例如,当有一万篇文章或者百万级的聊天话题日志时,如何挖掘出这么多文章及聊天话题中什么是当前讨论得最热门的。如果通过现有的LDA技术,虽然可以得到很多话题的关键词,但是依然无法获得这些词语究竟在表达什么样的内容及信息。
因此,本发明把词这种依然无法表达健全内容的单位,转变为更长的短句,并把重要的热点信息挖掘出来。
另外,本发明还提供了一种用于实现上述方法的提取有意义串的装置。请同时参阅图6,其为本发明的提取有意义串的装置的模块连接框图。本发明还提供了一种提取有意义串的装置,其包括语料获取处理模块1、提取模块2、前后缀匹配模块3、噪声过滤模块4和有意义串匹配模块5。
所述语料获取处理模块1,用于获取原始语料并进行处理。
所述提取模块2,用于提取重复串。
所述前后缀匹配模块3,用于对重复串的前后缀进行匹配。
所述噪声过滤模块4,用于过滤噪声,生成有意义串;
所述有意义串匹配模块5,用于将有意义串进行匹配,获取匹配度最高的有意义串。
进一步,所述语料获取处理模块1,包括:抓取模块11、预处理模块12、聚类模块13和分词模块14。
所述抓取模块11,用于从网络抓取需要进行分析的文本;
所述预处理模块12,用于对非结构化的文本进行预处理和词向量化;
所述聚类模块13,用于根据所述向量对网页进行聚类;
所述分词模块14,用于将同一话题的原始语料集中到同一个文档中并进行分词。
进一步,所述提取模块2中,具体包括:导入模块21、非停用词统计模块22和词频判断模块23。
所述导入模块21,用于依次导入同一话题且已预先分词的语料;
所述非停用词统计模块22,用于统计非停用词的词频,并对语料中围绕在所述非停用词前后的词语,并分别赋予一个ID;
所述词频判断模块23,用于对非停用词的词频进行判断,若词频小于阈值的,则过滤,否则认定为重复串。
进一步,所述前后缀匹配模块3,包括:遍历模块31和前后缀统计模块32。
所述遍历模块31,用于对重复串进行遍历;
所述前后缀统计模块32,用于根据记录好的前缀ID和后缀ID,依次统计重复串前缀和后缀同一词语出现的频率。
进一步,所述噪声过滤模块4具体包括:紧度度计算判断模块41,用于计算紧密度,若紧密度大于阈值,则将前缀、后缀和重复串进行连接,构成一个有意义串,否则,进行过滤;所述紧密度为前缀、后缀的词频除以对应重复串的词频。
进一步,所述有意义串匹配模块5,包括:抽取模块51、关键句和标题匹配模块52和排序模块53。
所述抽取模块51,用于通过textrank技术,计算每一篇文章的关键句,并抽取所有文章的标题;
所述关键句和标题匹配模块52,用于把关键句和标题存入数据库中,用抽取到的有意义串在所有关键句和标题中进行检索匹配;
所述排序模块53,用于根据匹配数进行排序,获取匹配度最高的有意义串,并将该有意义串代表的话题进行展现。
本发明的提取有意义串的装置与上述方法的原理相同,这里故不赘述。
综上,相比于现有技术,本发明通过提取粗粒度的有意义串,匹配出话题的关键句,可以让使用者在进行舆情分析的时候,更快速更准确地挖掘出当前发生的热点话题,从而制定相应的决策,引导舆论的发展。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
机译: 一种用于将一组输入字符串转换为至少一个将一组输入字符串表示为字符串的模式表达式的方法,一种将转换模式提取为近似模式表达式的方法及其计算机和计算机程序
机译: 字符串提取方法,字符串提取装置以及字符串提取程序
机译: 字符串提取方法,装置及使用该字符串提取装置的字符串识别处理装置及系统