CN108319584A - 一种基于改进FP-Growth算法的微博类短文本的新词发现方法 - Google Patents

一种基于改进FP-Growth算法的微博类短文本的新词发现方法 Download PDF

Info

Publication number
CN108319584A
CN108319584A CN201810058993.6A CN201810058993A CN108319584A CN 108319584 A CN108319584 A CN 108319584A CN 201810058993 A CN201810058993 A CN 201810058993A CN 108319584 A CN108319584 A CN 108319584A
Authority
CN
China
Prior art keywords
word
speech
neologisms
filtering rule
microblogging
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.)
Withdrawn
Application number
CN201810058993.6A
Other languages
English (en)
Inventor
刘磊
贾亚璐
孙孟涛
陈浩
李静
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Technology
Original Assignee
Beijing University of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Technology filed Critical Beijing University of Technology
Priority to CN201810058993.6A priority Critical patent/CN108319584A/zh
Publication of CN108319584A publication Critical patent/CN108319584A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开一种基于改进的FP‑Growth算法的微博类短文本的新词发现方法,包括:获取文本语料,利用jieba进行分词、词性标注等预处理;通过优化的FP‑Growth算法获得频繁项集词集,并对每个频繁项有序化;利用N‑grams模型获取重复串,并与频繁项集取交集;通过词性过滤,过滤掉一些在构词结构上不常用的词性;利用改进的互信息,滑动迭代计算互信息来过滤新词;利用词性组合规则库再进行一次过滤;验证该方法获取新词的有效性。

Description

一种基于改进FP-Growth算法的微博类短文本的新词发现 方法
技术领域
本发明属于文本信息处理领域,具体是涉及一种基于改进FP-Growth算法的微博类短文本的新词发现方法。
背景技术
微博是目前全球范围内使用最广泛的社交平台之一,每天用户在微博上会发布大量的文本信息,这成为网络新词的主要来源之一。
微博和一般文本的区别在于,微博是短文本,每个用户发布的信息不会超过140个字符,内容比较随意,形式具有多样性。所以研究微博这类短文本相对比较困难。但是海量微博文本中蕴含的知识对于舆情监测,新词发现等领域的研究具有重要的意义。
目前新词发现的研究主要是基于传统文本的人名、地名、机构名等命名实体的识别,而基于微博短文本的新词发现研究相对较少,并且和传统的文本相比较,由于微博具有文本短、不规则等特点,传统的新词发现方法在微博类短文本中的效果不尽人意。
FP-Growth算法通过两次扫描数据库得到数据中的频繁项集,是一种高效的获取频繁项集的算法,可以用于新词的获取,但是在微博类短文本中的应用存在缺陷。传统的FP-Growth算法在新词的发现中忽略了词性对成词的影响,为此提出一种改进的FP-Growth算法,并结合N-grams模型、改进的互信息和规则来发现新词。
发明内容
针对FP-Growth算法在微博类短文本的新词发现的缺陷,提出一种改进的FP-Growth算法,把词性考虑进去,不仅可以通过频繁项有效的表示成词词语之间的关联性,还可以削减词性不平衡带来的识别困难,通过结合N-grams模型的集成学习方法来提高得到的新词的准确率,同时通过词性、改进的互信息和词性组合规则库进行过滤。
为实现上述目的,本发明采用如下的技术方案
一种基于改进的FP-Growth算法的微博类短文本的新词发现方法,包括以下步骤:
步骤(1)微博语料获取和预处理
利用微博的API接口或采集爬虫获取微博语料,储存为HTML格式的文件。对文件进行正则匹配获取其中的文本,删除其中的URL,然后按标点符号进行断句。对得到的纯文本进行分词、词性标注,使用的是python的第三方模块jieba,得到预处理后的语料,记为G;
步骤(2)利用优化的FP-Growth算法处理G,获取频繁项集Cfp
步骤(2.1)处理微博语料G,构建改进FP-Growth模型,综合词频和词性两个因素,词性相对概率值的计算公式如下:
其中,f(w|pos(w)=a)表示词w在词性为a时的词性相对概率值,na表示语料G中词性为a的词频数,N表示语料G中总的词频数,n(w|pos(w)=a)表示词w在词性为a时的词频数。
在构建频繁项集时,选取满足条件f(w|pos(w)=a)>α1的重复串作为候选频繁项集Rfp,α1为设定的最小支持度。
步骤(2.2)对得到的频繁项集Rfp进行顺序纠正。FP-Growth算法得到的频繁项中的词是无序的,因此通过和原来的语料进行顺序对比,得到有顺序的频繁项集Cfp
步骤(3)利用N-grams模型获取新词候选集Cgrams
从语料中统计N个词同时出现的次数,由N-grams模型得到词语同时出现的频率P(w1,w2,w3,......wn)。选取满足条件α2<P(w1,w2,w3,......wn)<β2的N元重复串作为新词候选集Cgrams,α22是共现频率阈值。
步骤(4)取频繁项集Cfp和新词候选集Cgrams的交集,得到新词候选项集C1={c1,c2,…,cm},ci=(w1,w2,..wn),ci表示候选新词,wn表示构成新词的原词。
优化的FP-Growth算法把词性考虑进去,不仅可以通过频繁项有效的表示成词原语之间的关联性,还可以削减词性不平衡带来的识别困难。同时通过N-grams算法获取的新词候选集Cgrams与优化的FP-Growth算法获取的频繁项集Cfp取交集的集成学习方法来提高得到的新词的准确率。
步骤(5)在新词候选项集C1中,利用词性标记对其中含有过滤词性的词进行筛选,得到新词候选集C2
过滤词性集合包括:
按照以上词性过滤,过滤通过步骤(4)得到的新词候选集C1,得到新词候选集C2;
步骤(6)利用改进的互信息对新词候选集C2进行过滤,得到新词候选集合C3。若ci=(w1,w2,..wn),ci∈C2,对每个ci利用改进的互信息滑动的进行计算,改进的互信息计算公式如下:
其中,p(wi,wi+1)表示词wi和词wi+1共同出现的频数,p(wi)表示词wi的频数,wi,i+1表示词wi和邻近的词wi+1组合成词的权重,表示词wi,wi+1共现的词性组合的频数,表示词wi的词性出现的频数。在所有频繁项集中,选取满足条件I(wi,wi+1)>β3的词作为新词集合C={c1,c2,c3,......cm},每个新词都是c1=(w1,w2,w3,......wn)构成,其中β3为设定的阈值。
步骤(7)通过词性组合过滤规则库R过滤候选新词集合C3,然后得到最终的新词集合C4
若ci=(w1,w2,..wn),ci∈C3,对于每一个ci,对于任意的(wi,wi+1),其词性组合(pos(wi),pos(wi+1)),如果满足词性组合过滤规则库R中任意规则,则对新词ci进行过滤得到新词集合C4。
词性组合规则库R由如下规则构成:
过滤规则一:/ns/v(ns处可以是nr、nz);
过滤规则二:/ns/ns(ns处可以是nr、nz);
过滤规则三:/n/v或者/vn/v;
过滤规则四:/t/t;
过滤规则五:/t/nr;
过滤规则六:/t/f(t处可以是vn、n、l、f);
过滤规则七:/v/t;
过滤规则八:/t/v;
过滤规则九:/ns/j;
附图说明
图1一种基于改进FP-Growth算法的微博类短文本的新词发现方法的流程图;
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步的详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
根据图1所示,本发明提出的方法是依次按以下步骤实现的(以新浪微博为例):
步骤(1)微博语料获取和预处理
利用微博的API接口或采集爬虫获取微博语料,储存为HTML格式的文件,并通过正则匹配抽取其中用户发布的文本信息,然后对获取的文本信息进行繁简转换,按标点符号断句,标点符号包括:‘。’、‘,’、‘;’、‘?’、‘!’和‘:’,得到一行一句话的文本,使用目前发展较为成熟的jieba分词***对文本进行分词和词性标注,并对分词后的语料过滤,只保留汉字、词性标记,得到语料库G。G的语料存储方式以行为单位,每一行存储一条微博文本,约50万行。
步骤(2)利用改进的FP-Growth算法处理G,获取频繁项集Cfp
步骤(2.1)根据公式(1)改进FP-Growth算法,其中通过参数阈值α1来获取频繁项集,参数α2=0.000000000001使得算法不仅仅考虑了频繁项集的频率,而且考虑了词性的影响,因为词性的不平衡性影响了一些新词的出现,例如:“怒/vg怼/v”,“/vg”这个词性只在语料中出现60次,如果仅仅通过频率来获取频繁项集,“怒/vg怼/v”就会被过滤掉。
步骤(2.2)对通过改进的FP-Growth算法得到的频繁项集进行顺序纠正,因为FP-Growth算法得到的频繁项集是没有顺序的,所以通过和原来的语料位置对比进行纠正,得到频繁项集Cfp,Cfp={c1,c2,c3,......cm},对于里面的每一个ci,ci=(w1,w2,w3,......wn),这里了列举了部分频繁项集,如下表1所示:
表1部分频繁项集Cfp
步骤(3)利用N-grams获取新词候选集Cgrams
利用N-grams算法获取新词候选集Cgrams,Cgrams={c1,c2,c3,......cm}里面的每一个候选新词ci。其中N取值为2,ci=(w1,w2)。对于任意的ci都通过阈值α2、β2过滤得到,其中α2=10,β2=2000过滤掉出现的一些噪音数据,例如:“的/uj人/n”。这里列举了部分新词候选集Cgrams,如下表2所示:
表2部分新词候选集Cgrams
步骤(4)取频繁项集Cfp和新词候选集Cgrams的交集,得到新词候选集C1
通过取交集可以得到的部分新词候选项集如下表3所示:
表3部分新词候选项集C1
步骤(5)在新词候选项集C1中,利用词性标记对其中含有过滤词性的词进行筛选,得到新词候选集C2
过滤词性集合包括:区别词(/b)、连词(/c)、副语素(/dg)、叹词(/e)、数词(/m)、拟声词(/o)、介词(/p)、量词(/q)、代词(/r)、处所词(/s)、时语素(/tg)、助词(/u)、标点符号(/w)、非语素字(/x)、语气词(/y)、状态词(/z)。部分词性信息表如表4所示:
表4部分词性信息表
部分新词候选集C2图下表5所示:
表5部分新词候选项集C2
步骤(6)利用改进的互信息对新词候选集C2进行过滤,得到新词候选集合C3
ci=(w1,w2),ci∈C2,对每个ci利用改进的互信息进行计算,根据公式(2)计算得到新词候选集C2中每歌新词的互信息,通过阈值α3来过滤候选集,得到新词集合C3,下面给出了部分新词集合C3,如表6所示:
表6部分新词集C3
步骤(7)通过词性组合规则库R过滤候选新词集合C3,然后得到最终的新词集合C4
通过如下的规则进行过滤:
过滤规则一:形如“甘肃/ns发布/v”这样的噪声词过滤掉,结构如下:/ns/v(ns处可以是nr、nz);
过滤规则二:形如“江西/ns赣州/ns”这样的噪声词过滤掉,结构如下:/ns/ns(ns处可以是nr、nz);
过滤规则三:形如“原因/n是/v”这样的噪声词过滤掉,结构如下:/n/v或者/vn/v;
过滤规则四:形如“明日/t除夕/t”这样的噪声词过滤掉,结构如下:/t/t;
过滤规则五:形如“明日/t立春/nr”这样的噪声词过滤掉,结构如下:/t/nr;
过滤规则六:形如“清明节/t期间/f”这样的噪声词过滤掉,结构如下:/t/f(t出还可以是vn、n、l、f);
过滤规则七:形如“截至/v今日/t”这样的噪声词过滤掉,结构如下:/v/t;
过滤规则八:形如“现在/t看来/v”这样的噪声词过滤掉,结构如下:/t/v;
过滤规则九:形如“天津/ns交警/j”这样的噪声词过滤掉,结构如下:/ns/j;
通过规则过滤得到的部分新词如下表7所示:
表7部分新词候选项集C4
步骤(8)新词识别效果分析
计算算法识别的新词的准确率,计算准确率见公式(4):
其中,p表示模型的准确率,tp表示识别出的正确的新词数量,fp错误识别的新词的数量。
通过计算得到改进的FP-growth算法在微博类短文本新词上识别上的准确为:69%。本算法比一般的FP-growth算法和N-grams模型的效果要好,一般的新词发现算的准确率都在57%左右。而且和角色标注模型相比,本发明不需要前期的大量人工标注。

Claims (3)

1.一种基于改进FP-Growth算法的微博类短文本的新词发现方法,其特征在于,包括以下步骤:
步骤(1)、微博语料获取和预处理
利用微博的API接口或采集爬虫获取微博语料,对文件进行正则匹配获取其中的微博正文内容,删除其中的URL,然后按标点符号进行断句,对得到的纯文本进行分词、词性标注,得到预处理后的语料,记为G;
步骤(2)、利用改进的FP-Growth算法处理语料G,获取频繁项集Cfp
步骤(3)、利用N-grams模型获取新词候选集Cgrams
从语料中统计N个词同时出现的次数,由N-grams模型得到词同时出现的频率P(w1,w2,w3,......wn)。选取满足条件α2<P(w1,w2,w3,......wn)<β2的N元重复串作为新词候选集Cgrams,α22是共现频率阈值。
步骤(4)、取频繁项集Cfp和新词候选集Cgrams的交集,得到新词候选项集C1={c1,c2,…,cm},ci=(w1,w2,..wn),ci表示候选新词,wj表示构成新词的原词。
步骤(5)、在新词候选项集C1中,利用词性标记对其中含有过滤词性的词进行筛选,得到新词候选集C2
步骤(6)、利用改进的互信息对新词候选集C2进行过滤,得到新词候选集合C3,若ci=(w1,w2,..wn),ci∈C2,对每个ci利用改进的互信息公式,对相邻的wj进行计算,改进的互信息计算公式如下:
其中,p(wi,wi+1)表示词wi和词wi+1共同出现的频数,p(wi)表示词wi的频数,wi,i+1表示词wi和邻近的词wi+1组合成词的权重,npos(wi,wi+1)表示词wi,wi+1共现的词性组合的频数,表示词wi的词性出现的频数;在所有频繁项集中,选取满足条件I(wi,wi+1)>β3的词作为新词集合C={c1,c2,c3,......cm},每个新词都是c1=(w1,w2,w3,......wn)构成,其中β3为设定的阈值;
步骤(7)、通过词性组合过滤规则库R过滤候选新词集合C3,然后得到最终的新词集合C4,
若ci=(w1,w2,..wn),ci∈C3,对于每一个ci,对于任意的(wi,wi+1),其词性组合(pos(wi),pos(wi+1)),如果满足词性组合过滤规则库R中任意规则,则去除新词ci,最终得到新词集合C4;
词性组合过滤规则库R由如下规则构成:
过滤规则一:/ns /v(ns处可以是nr、nz);
过滤规则二:/ns /ns(ns处可以是nr、nz);
过滤规则三:/n /v或者/vn /v;
过滤规则四:/t /t;
过滤规则五:/t /nr;
过滤规则六:/t /f(t处可以是vn、n、l、f);
过滤规则七:/v /t;
过滤规则八:/t /v;
过滤规则九:/ns /j。
2.如权利要求1所述的基于改进FP-Growth算法的微博类短文本的新词发现方法,其特征在于,步骤(2)具体包括:
步骤(2.1)处理微博语料G,综合词频和词性两个因素,构建改进的FP-Growth模型,词性相对概率值的计算公式如下:
其中,f(w|pos(w)=a)表示词w在词性为a时的词性相对概率值,na表示词性为a的语料G中词的词频数,N表示语料G中总的词频数,n(w|pos(w)=a)表示词w在词性为a时的词频数;
在构建频繁项集时,选取满足条件f(w|pos(w)=a)>α1的重复串作为候选频繁项集Rfp,α1为设定的最小支持度;
步骤(2.2)对得到的频繁项集Rfp进行顺序纠正,通过和原来的语料进行顺序对比,得到有顺序的频繁项集Cfp
3.如权利要求2所述的基于改进FP-Growth算法的微博类短文本的新词发现方法,其特征在于,步骤(2)中过滤词性集合包括:
b 区别词 取汉字“别”的声母。 c 连词 取英语连词conjunction的第1个字母。 dg 副语素 副词性语素。副词代码为d,语素代码g前面置以D。 e 叹词 取英语叹词exclamation的第1个字母。 m 数词 取英语numeral的第3个字母,n,u已有他用。 o 拟声词 取英语拟声词onomatopoeia的第1个字母。 p 介词 取英语介词prepositional的第1个字母。 q 量词 取英语quantity的第1个字母。 r 代词 取英语代词pronoun的第2个字母,因p已用于介词。 s 处所词 取英语space的第1个字母。 tg 时语素 时间词性语素。时间词代码为t,在语素的代码g前面置以T。 u 助词 取英语助词auxiliary w 标点符号 x 非语素字 非语素字只是一个符号,字母x通常用于代表未知数、符号。 y 语气词 取汉字“语”的声母。 z 状态词 取汉字“状”的声母的前一个字母。
CN201810058993.6A 2018-01-22 2018-01-22 一种基于改进FP-Growth算法的微博类短文本的新词发现方法 Withdrawn CN108319584A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810058993.6A CN108319584A (zh) 2018-01-22 2018-01-22 一种基于改进FP-Growth算法的微博类短文本的新词发现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810058993.6A CN108319584A (zh) 2018-01-22 2018-01-22 一种基于改进FP-Growth算法的微博类短文本的新词发现方法

Publications (1)

Publication Number Publication Date
CN108319584A true CN108319584A (zh) 2018-07-24

Family

ID=62887532

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810058993.6A Withdrawn CN108319584A (zh) 2018-01-22 2018-01-22 一种基于改进FP-Growth算法的微博类短文本的新词发现方法

Country Status (1)

Country Link
CN (1) CN108319584A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109543021A (zh) * 2018-11-29 2019-03-29 北京光年无限科技有限公司 一种面向智能机器人的故事数据处理方法及***
CN110532548A (zh) * 2019-08-12 2019-12-03 上海大学 一种基于FP-Growth算法的上下位关系抽取方法
CN110874408A (zh) * 2018-08-29 2020-03-10 阿里巴巴集团控股有限公司 模型训练方法、文本识别方法、装置及计算设备
CN111339403A (zh) * 2020-02-11 2020-06-26 安徽理工大学 一种基于商品评论新词提取方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110874408A (zh) * 2018-08-29 2020-03-10 阿里巴巴集团控股有限公司 模型训练方法、文本识别方法、装置及计算设备
CN110874408B (zh) * 2018-08-29 2023-05-26 阿里巴巴集团控股有限公司 模型训练方法、文本识别方法、装置及计算设备
CN109543021A (zh) * 2018-11-29 2019-03-29 北京光年无限科技有限公司 一种面向智能机器人的故事数据处理方法及***
CN109543021B (zh) * 2018-11-29 2022-03-18 北京光年无限科技有限公司 一种面向智能机器人的故事数据处理方法及***
CN110532548A (zh) * 2019-08-12 2019-12-03 上海大学 一种基于FP-Growth算法的上下位关系抽取方法
CN111339403A (zh) * 2020-02-11 2020-06-26 安徽理工大学 一种基于商品评论新词提取方法
CN111339403B (zh) * 2020-02-11 2022-08-02 安徽理工大学 一种基于商品评论新词提取方法

Similar Documents

Publication Publication Date Title
CN104268160B (zh) 一种基于领域词典和语义角色的评价对象抽取方法
CN107180025B (zh) 一种新词的识别方法及装置
CN106897559B (zh) 一种面向多数据源的症状体征类实体识别方法及装置
CN108509425A (zh) 一种基于新颖度的中文新词发现方法
CN108319584A (zh) 一种基于改进FP-Growth算法的微博类短文本的新词发现方法
CN109829159A (zh) 一种古汉语文本的一体化自动词法分析方法及***
CN109543178A (zh) 一种司法文本标签体系构建方法及***
CN105988990A (zh) 用于汉语中的零指代消解的装置和方法以及模型训练方法
CN105630884B (zh) 一种微博热点事件的地理位置发现方法
CN107688630B (zh) 一种基于语义的弱监督微博多情感词典扩充方法
CN106294744A (zh) 兴趣识别方法及***
CN110457711B (zh) 一种基于主题词的社交媒体事件主题识别方法
CN104778256A (zh) 一种领域问答***咨询的快速可增量聚类方法
CN108776653A (zh) 一种基于PageRank和信息熵的裁判文书的文本分词方法
CN107357785A (zh) 主题特征词抽取方法及***、情感极性判断方法及***
CN110674296B (zh) 一种基于关键词的资讯摘要提取方法及***
CN106168954A (zh) 一种基于编辑距离的负面信息模式模糊匹配方法
CN107577668A (zh) 基于语义的社交媒体非规范词纠正方法
CN107943786A (zh) 一种中文命名实体识别方法及***
CN113033185B (zh) 标准文本纠错方法、装置、电子设备和存储介质
CN110941720A (zh) 一种基于知识库的特定人员信息纠错方法
CN106980620A (zh) 一种对中文字串进行匹配的方法及装置
CN110119443A (zh) 一种面向推荐服务的情感分析方法
CN105488098A (zh) 一种基于领域差异性的新词提取方法
CN109614493A (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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20180724