CN112307759A - 一种面向社交网络不规则短文本的粤语分词方法 - Google Patents
一种面向社交网络不规则短文本的粤语分词方法 Download PDFInfo
- Publication number
- CN112307759A CN112307759A CN202011236593.3A CN202011236593A CN112307759A CN 112307759 A CN112307759 A CN 112307759A CN 202011236593 A CN202011236593 A CN 202011236593A CN 112307759 A CN112307759 A CN 112307759A
- Authority
- CN
- China
- Prior art keywords
- word
- probability
- corpus
- segmentation
- words
- 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.)
- Granted
Links
- 230000011218 segmentation Effects 0.000 title claims abstract description 120
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000001788 irregular Effects 0.000 title claims abstract description 21
- 238000004140 cleaning Methods 0.000 claims abstract description 30
- 238000012545 processing Methods 0.000 claims abstract description 20
- 238000010276 construction Methods 0.000 claims abstract description 10
- 238000013461 design Methods 0.000 claims abstract description 8
- 230000007704 transition Effects 0.000 claims description 21
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 230000015572 biosynthetic process Effects 0.000 claims description 7
- 238000002372 labelling Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 6
- 230000014509 gene expression Effects 0.000 claims description 4
- 230000009193 crawling Effects 0.000 claims description 3
- 238000007405 data analysis Methods 0.000 claims description 3
- 238000013101 initial test Methods 0.000 claims description 3
- 239000000203 mixture Substances 0.000 claims description 3
- 238000012549 training Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 2
- 238000005406 washing Methods 0.000 claims description 2
- 238000003058 natural language processing Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 5
- 230000008520 organization Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
Images
Classifications
-
- 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
- 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- 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/237—Lexical tools
- G06F40/242—Dictionaries
-
- 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/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
-
- 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 Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及一种面向社交网络不规则短文本的粤语分词方法,属于自然语言处理领域。本发明的面向粤语语境的短文本清洗和分词的方法,具体包括四个功能模块,分别为支持用户自定义的短文本清洗模块、粤语联合语料库构建模块、短文本扫描和初步切分模块、未登录词处理及分词结果输出模块。本发明解决了现有技术中没有考虑到面向社交网络不规则短文本的粤语分词方法,提出了满足用户自身不同应用场景的个性化数据清洗模型,建立了面向社交网络的粤语联合语料库,设计了基于构建的联合语料库的分词模型,同时综合考虑了文本中出现未登录词的处理方案,提出对应的综合处理模型,最终在连登论坛平台爬取的短文本数据中验证,分词准确率达87%。
Description
技术领域
本发明属于网络信息以及自然语言处理技术领域,特别涉及一种面向社交网络不规则短文本的粤语分词方法。
背景技术
词是自然语言中能够独立运用的最小单位,是信息处理的基本单位。自然语言处理的对象是句子,拿到句子之后一般要对句子进行分词。分词就是利用计算机识别出文本中词的过程。大部分的印欧语言,词与词之间有空格之类的显示标志指示词的边界。因此,利用很容易切分出句子中的词。而与大部分的印欧语言不同,中文语句中词与词之间没有空格标志指示,所以,需要专门的方法去实现中文分词。分词是文本挖掘的基础,通常用于自然语言处理、搜索引擎、推荐等领域中。中文文字博大精深,不仅有着普通汉语文字、繁体字,还有着粤语文本这类社交文本。
目前实际工作中对于中文数据清洗和分词方法的研究,以面向普通汉语文字为主,缺少在粤语语境下,面向社交网络不规则短文本的分词方法,需要设计相对应的数据清洗系统和粤语分词系统来进行实现。
发明内容
为了克服上述现有技术的缺点,本发明的目的在于提供一种面向社交网络不规则短文本的粤语分词方法,以实现基于用户自定义需求进行数据清洗和面向粤语语境的短文本分词。
为了实现上述目的,本发明采用的技术方案是:
一种面向社交网络不规则短文本的粤语分词方法,包括如下步骤:
步骤1,利用支持用户自定义的短文本清洗模块对原始语料进行编码统一,然后基于用户文本清洗需求进行后续的数据清洗;
步骤2,利用粤语联合语料库构建模块对语料库进行设计和更新,以得到适用于粤语语境的联合语料库;
步骤3,基于步骤2得到的联合语料库,利用短文本扫描和初步切分模块对步骤1清洗后的文本进行词图扫描寻找成词情况,基于分词构造有向无环图;并利用动态规划进行逆向最大匹配,寻找最大概率路径下的切分组合,形成初步分词切分组合;
步骤4,利用未登录词处理及分词结果输出模块对得到的初步分词切分组合进行判断,若切分词不为未登录词,则将其作为最终切分组合;若切分词为未登录词,则构建词汇模型,利用所述联合语料库训练得到的概率表,对未登录词进行序列标注后利用Viterbi算法进行求解,得到一个概率最大的分词序列,对待分词的句子重新组合,得到最终切分组合,最后根据用户对于输出结果形式的需求进行输出。
优选地,所述步骤1中,对原始语料进行编码统一,选择的编码为“GBK”、“UTF-16”或“UTF-8”,所述数据清洗包括:TML字符转换、移除标点符号、移除表情符号或移除url链接,将移除的内容用空格替代保证短文本的整齐。
优选地,将待处理的原始文本设为T,将其分为N个短文本序Si的集合,其中,0<i≤N,T={S1,S2,S3…,SN,},所述TML字符转换是用正则表达式将嵌入在原始数据中的大量html实体去掉;所述移除标点符号是当数据分析需要在单词水平上被数据驱动时候,移除标点符号;所述移除表情符号是去除包含在社交网络短文本中的表情符号;所述移除url链接是去除网络短文本数据中在爬取过程中产生的大量URL数据;清洗操作基于N个短文本展开,对每一个短文本进行正则化匹配并实现文本清洗。
优选地,所述步骤2中,联合语料库的构建过程如下:
(1)对从报纸和书籍所收集的原始语料库进行整理,并将其中的分词转化为粤语繁体字,作为官方文档的原始语料库;
(2)根据香港地区空间地点名称、媒体名称、人物名称、机构名称,组成的专有名词,构建基于香港地区专有名词的语料库;
(3)添加香港社交网络中常用的英文分词,并根据香港社交平台实时更新的网络流行语以及网络新词,将其中出现的分词整理并转化为粤语繁体字,构建基于社交短文本的粤语分词语料库;
(4)将步骤(2)得到的语料库和步骤(3)得到的粤语分词语料库进行拼接,并入步骤(1)所得到的原始语料库,整合成为联合语料库。
优选地,所述(1)中,官方文档的原始语料库,整理为base语料库;(2)中,空间地点名称、媒体名称、人物名称、机构名称分别整理为site、media、people、organization语料库,(3)中,将粤语分词语料库整理为social语料库。
优选地,所述步骤3包括以下步骤:
(1)对步骤1清洗后的文本进行词图扫描,生成句子中汉字所有可能成词情况;
(2)在(1)中得到所有的成词情况中,在句子中构造分词的有向无环图,对切分词(a,b)进行记录和标注,其中a代表分词起始的字,b为可能的分词终止的字;
(3)利用(2)切分好的词语,对该词语查找该词语在联合语料库中出现的频率(次数/总数),然后根据动态规划查找最大概率路径的方法,逆向匹配计算句子的最大概率,得到最大概率的切分组合,即初步分词切分组合。
优选地,所述(1)中,对步骤1清洗后的N个文本,依次按顺序读取,每一个短文本Si由m个字Zi,j组成,其中i代表短文本编号,j代表字的编号,实现对文本进一步的切分,基于联合语料库进行词图扫描,具体步骤如下:
Step1:设置词典最长查找长度L;
Step2:在短文本Si中从头遍历每一个字Zi,j,初试位置为Zi,1,随后在短文本Si中生成以Zi,1为开头的成词可能,即挑选Zi,jZi,j+1,在联合语料库中查找匹配,若查找到该匹配,则转step3,若不存在该匹配,则将Zi,1作为单字成词输出,遍历文本的指针后移,转到Step2;
Step3:将Zi,j+3扩充到Zi,j+1Zi,j+2,将Zi,j+1Zi,j+2Zi,j+3在联合语料库中寻找匹配,若查找到该匹配,则转step4,若未找到该匹配,则将Zi,j+1Zi,j+2作为成词输出,遍历文本的指针后移,转到Step2;
step4:继续向后扩充,直至Zi,j+m,使得Zi,j+1Zi,j+2…Zi,j+m在联合语料库中无法寻找到该匹配,则将Zi,j+1Zi,j+2…Zi,j+m-1作为成词输出,遍历文本的指针后移,转到Step2;
所述(2)中,利用有向无环图来表示各字从前到后的成词情况,利用(a,b)对切分词进行记录和标注,a为分词起始的字Zi,j,b为可能的分词终止的字Zi,j+p组成的集合;
所述(3)中,动态规划查找最大概率路径的方法,公式如下:
P′(zn)=lg(P(zn)) (2)
W*=argminP(Z) (4)
其中,公式(1)中zn表示出现的第n个词,freq[zn]表示该词词频,P(zn)表示每一个词出现的概率等于该词词频除以所有词的词频之和,如果词频为0,则当做词频为1来处理;公式(2)中P′(zn)表示对P(zn)取对数概率,即在每个词概率的基础上取对数;公式(3)中P(Z)为整体概率路径,即由z1,z2,z3,…,zn共同组成的概率路径,表示对每个词的概率进行叠乘,公式(4)表示最终对整体概率路径进行计算,因步骤二所取对数运算,所以对P(Z)求其最小值,得到可能性最大的路径对应的划分,作为分词结果。
优选地,所述步骤4中构建词汇模型,首先将句子转化为二元组,二元组第一个元素为字符,第二个元素即为标签,其中字符即为单字,标签Label即为这个字对应位置的代表,即
label∈{B,E,M,S}
其中,B代表begin,即为开头单字,E代表end,即为终止字,M代表middle,即为分词的中间字,S代表single,即改字为单独字。
优选地,将所得词汇模型表示为五元组:
{states,observations,start_probability,
transition_probability,emission_probability}
其中,states表示为状态空间,即所要求的分词结果,observation表示为观察空间,是所有汉字以及标点符号所组成的集合;start_probability表示为状态的初始分布,transition_probability表示为状态的转移概率矩阵,emission_probability表示为状态产生观察的概率,即发射概率矩阵;为得到五元组中的start_probability、transition_probability以及emission_probability,将句子中的字基于报纸和书籍所收集的原始语料库进行训练,得到其概率表,其中要统计的主要有三个概率表:
a)transition_probability,即B、M、E、S四种状态的转移概率;结果如下:
{′B′:{′E′:0.8518218565181658,′M′:0.14817814348183422},
′E′:{′B′:0.5544853051164425,′S′:0.44551469488355755},
′M′:{′E′:0.7164487459986911,′M′:0.2835512540013088},
′S′:{′B′:0.48617017333894563,′S′:0.5138298266610544}}
b)emission_probability,观察值只取决于当前状态值,其中观察值和状态值均为单个字,即:
P(observed[i],states[j])=P(states[j])*P(observed[i]|states[j])
c)start_probability,词语以某种状态开头的起始概率,即只有两种,B或者S;
P={′B′:0.76898,′S′:0.23102}
随后使用Viterbi算法来得到使概率最大的分词序列,观察空间observation作为输入,状态空间states作为输出,在输入输出之间借助提前训练好的HMM起始概率start_probability、转移概率transition_probability、发射概率emission_probability,使用基于动态规划的viterbi算法的方法,找到一个使状态空间states出现最大概率时所对应的分词序列,按照B打头,E结尾的方式,对待分词的句子重新组合,得到分词结果。
优选地,用户可根据最终分词结果设计用户自定义分词库并添加,以适应自身应用环境,并将结果补充到粤语联合语料库构建模块。
与现有技术相比,本发明的有益效果是:
1、本发明方法结合根据用户对于短文本编码形式、数据清洗方案、输出形式的不同需求,满足用户自身不同的应用场景。
2、本发明方法中粤语联合语料库构建模块,除了将原始语料库进行整理和转换,独特地构建香港各领域专有名词语料库和基于社交短文本的分词语料库,同时针对社交网络这一应用场景构建了基于社交网络短文本的分词语料库,添加了实时更新的网络流行语中的分词以及网络热词,优化了语料库。
3、本发明方法针对粤语短文本这一应用场景,独特地设计了基于构建的联合语料库分词模型,同时综合考虑了文本中出现未登录词的处理方案,提出对应的处理模型。
4、本发明方法除了输出结果之外,独特地设计用户交互方案,用户可根据最终分词结果设计用户自定义分词库并添加,以适应自身应用环境。
5、本发明面向社交网络不规则短文本的粤语分词准确率较高,在连登论坛平台爬取的短文本数据中,分词准确率达87%。
附图说明
图1是本发明面向粤语语境的短文本清洗和分词的方法的框架图。
图2是本发明的支持用户自定义的短文本清洗模块处理流程图。
图3是本发明的支持用户自定义的短文本清洗模块处理文本示例。
图4是本发明的粤语联合语料库构建模块的处理示例图。
图5是本发明的短文本扫描和初步切分模块处理流程图。
图6是本发明的短文本扫描和初步切分模块处理文本示例。
图7是本发明实施例中“存在意见”这四个字的有向无环图。
图8是本发明的未登录词处理及分词结果输出模块处理流程图。
图9是本发明的最终形成分词结果的文本示例。
具体实施方式
下面将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
以下详细说明均是示例性的说明,旨在对本发明提供进一步的详细说明。除非另有指明,本发明所采用的所有技术术语与本申请所属领域的一般技术人员的通常理解的含义相同。本发明所使用的术语仅是为了描述具体实施方式,而并非意图限制根据本发明的示例性实施方式。
如图1所示,本发明一种面向社交网络不规则短文本的粤语分词方法,在功能上,该方法有赖于四个功能模块,分别为支持用户自定义的短文本清洗模块、粤语联合语料库构建模块、短文本扫描和初步切分模块、未登录词处理及分词结果输出模块。
基于此,本发明主要包括如下步骤:
步骤1,利用支持用户自定义的短文本清洗模块对原始语料进行编码统一,然后基于用户文本清洗需求进行后续的数据清洗。参考图2,本步骤具体又分为如下步骤:
(1),对原始语料进行编码统一以保证数据的标准化,结合用户自定义需求,对原始语料进行编码统一。具体地,首先将不同编码的文本进行decode,转化为unicode编码作为中间编码,随后将编码的字符串进行encode操作,最后转化为用户所需编码,可选择的编码为“GBK”、“UTF-16”或“UTF-8”。
(2),结合用户需求对短文本进行数据清洗,将待处理的原始文本设为T,将其分为N个短文本序Si的集合,其中,0<i≤N,T={S1,S2,S3…,SN,},用户可以选择进行的清洗操作包括:TML字符转换,即用正则表达式将嵌入在原始数据中的大量html实体比如“<、&”去掉;移除标点符号,即当数据分析需要在单词水平上被数据驱动时候,移除标点符号;移除表情符号,即去除包含在社交网络短文本中的表情符号;移除url,即去除网络短文本数据中在爬取过程中产生的大量URL数据。清洗操作基于N个短文本展开,对每一个短文本进行正则化匹配并实现文本清洗。正则化表达式描述了一种字符串匹配的模式,首先将短文本按照每行读取并转换为字符串,在其中进行遍历检查字符串是否含有所查找子串,最后对该字符串进行匹配并替换。移除的内容可用空格替代以保证短文本的整齐,最终得到清洗后的文本。
参考图3,支持用户自定义的短文本清洗模块的处理案例如下,原始文本为真实社交网络短文本,在经过支持用户自定义的短文本清洗模块的处理之后得到结果。其中,自定义用户需求编码统一为utf-8,自定义用户数据清洗需求为TML字符转换、移除标点符号、移除表情符号、移除url链接。
步骤2,利用粤语联合语料库构建模块对语料库进行设计和更新,以得到适用于粤语语境的联合语料库。即,在原始粤语分词语料库的基础上添加香港地区站台、港口、码头等空间地点名称,报纸、网站等媒体名称,人物名称,香港地区组织、部门等机构名称,这四类名称所组成的专有名词,同时添加香港社交网络中常用的英文分词,此外,基于社交平台这一研究领域,添加实时更新的网络常用粤语分词,最终构建基于粤语分词的联合语料库。参考图4,本步骤具体又分为如下步骤:
(1)根据报纸和书籍等渠道所收集的官方语料整理的原始语料库进行整理,并将其中的分词转化为粤语繁体字,作为官方文档的原始语料库,原始语料库中存储格式为分词+出现次数+词性,整理为base语料库。
(2)根据香港地区站台、港口、码头等空间地点名称,报纸、网站、电视台等媒体名称,人物名称,香港地区组织、部门等机构名称,这四类名称所组成的专有名词,构建基于香港地区专有名词的语料库,分别整理为site、media、people、organization语料库。
(3)根据社交平台实时更新的网络流行语以及网络新词,将其中出现的分词整理并转化为粤语繁体字,构建基于社交短文本的粤语分词语料库,整理为social语料库。例如出现网络新名词“港珠澳大桥”,那么将该热词转化为香港繁体“港珠澳大橋”并构建成为基于社交短文本的粤语分词语料库进行补充。
(4)将步骤(2)得到的语料库和步骤(3)得到的粤语分词语料库进行拼接,并入步骤(1)所得到的原始语料库,整合成为联合语料库,并可根据用户自定义构建语料库,以适应自身应用环境。例如:“威脅道路安全”经过分词,最终得到“威脅道路安全”,倘若用户关注于安全问题,希望将道路安全作为整体,则“道路安全”加入到用户自定义词典中,后续的分词系统也会实现更新,将“道路安全”作为整体切分出来。
步骤3,基于步骤2得到的联合语料库,利用短文本扫描和初步切分模块对步骤1清洗后的文本进行词图扫描寻找成词情况,基于分词构造有向无环图;并利用动态规划进行逆向最大匹配,寻找最大概率路径下的切分组合,形成初步分词切分组合。参考图5,本步骤具体又分为如下步骤:
(1)对步骤1清洗后的文本进行词图扫描,生成句子中汉字所有可能成词情况;
具体地,对步骤1清洗后的N个文本,依次按顺序读取,设每一个短文本Si由m个字Zi,j组成,其中i代表短文本编号,j代表字的编号,实现对文本进一步的切分,基于联合语料库进行词图扫描,具体步骤如下:
Step1:设置词典最长查找长度L,L一般略小于词典里最长词的长度,词典中最长的分词为“聖士提反女子中學列堤頓道”,考虑设置L为10。
Step2:在短文本Si中从头遍历每一个字Zi,j,初试位置为Zi,1,随后在短文本Si中生成以Zi,1为开头的成词可能,即挑选Zi,jZi,j+1,(初始情况为Zi,1Zi,2),在联合语料库中查找匹配,若查找到该匹配,则转step3,若不存在该匹配,则将Zi,1作为单字成词输出,遍历文本的指针后移,转到Step2。
Step3:将Zi,j+3扩充到Zi,j+1Zi,j+2,将Zi,j+1Zi,j+2Zi,j+3在联合语料库中寻找匹配(初始情况为将Zi,3扩充到Zi,1Zi,2,将Zi,1Zi,2Zi,3在联合语料库中寻找匹配),若查找到该匹配,则转step4,若未找到该匹配,则将Zi,j+1Zi,j+2作为成词输出(初始情况为将Zi,1Zi,2作为成词输出),遍历文本的指针后移,转到Step2。
step4:继续向后扩充,直至Zi,j+m,使得Zi,j+1Zi,j+2…Zi,j+m在联合语料库中无法寻找到该匹配,则将Zi,j+1Zi,j+2…Zi,j+m-1作为成词输出,遍历文本的指针后移,转到Step2。
生成句子中汉字所有可能成词情况。
(2)在(1)中得到所有的成词情况中,在句子中构造分词的有向无环图,利用有向无环图来表示各字从前到后的成词情况,利用(a,b)对切分词进行记录和标注,a为分词起始的字Zi,j,b为可能的分词终止的位置Zi,j+p组成的集合,0<p≤10。其中一个切分词起止位置固定,但可能的词语结束位置不固定,可能存在多种可能性。
(3)利用(2)切分好的词语,对该词语查找该词语在联合语料库中出现的频率(次数/总数),然后根据动态规划查找最大概率路径的方法,因为汉语句子的重心经常落在后面,所以采用逆向匹配计算句子的最大概率,得到最大概率的切分组合,即初步分词切分组合。动态规划查找最大概率路径的方法,公式如下:
P′(zn)=lg(P(zn)) (2)
W*=argminP(Z) (4)
其中,公式(1)中zn表示出现的第n个词,freq[zn]表示该词词频,P(zn)表示每一个词出现的概率等于该词词频除以所有词的词频之和,如果词频为0,则当做词频为1来处理;公式(2)中P′(zn)表示对P(zn)取对数概率,即在每个词概率的基础上取对数,一是为了防止下溢,二后面的概率相乘可以变成相加计算;公式(3)中P(Z)为整体概率路径,即由z1,z2,z3,…,zn共同组成的概率路径,表示对每个词的概率进行叠乘,公式(4)表示最终对整体概率路径进行计算,因步骤二所取对数运算,所以对P(Z)求其最小值,得到可能性最大的路径对应的划分,作为分词结果。
参考图6,对于支持用户自定义的短文本清洗模块所得到的清洗后文本依次按顺序读取,实现对于文本进一步的切分,基于粤语联合语料库构建模块所得到的联合语料库进行词图扫描,例如对“首都國際機場”标注时候,a为“首”,b集合为[“都”,“場”],在文本编码后,依次利用字符形式表示,同时利用字典形式存储a和b。例如集合中的“99:[99,100,102]”表示第99号字符可以和第99号、第100号以及第102号字符构成有向无环图,对应粤语文本中的内容进行分析:第99号字符为“駕”,第100号字符为“駛”,第102号字符为“士”,那么“99:[99,100,102]”代表着“駕”作为起始字符,可以和接下来的“駛”组成有向无环图,组成“駕駛”二字词语;同时也可以和第102号元素构成有向无环图,组成“駕駛人士”四字词语。随后对文本进行逆向匹配,计算句子中分词出现的最大概率,得到最大概率的切分组合,其中字典中的键表示起始位置,值表示终止位置。又例如,“存在意见”这四个字的有向无环图如图7所示。
步骤4,参考图8,利用未登录词处理及分词结果输出模块对得到的初步分词切分组合进行判断,若切分词不为未登录词,则将其作为最终切分组合;若切分词为未登录词,则构建词汇模型,利用所述联合语料库训练得到的概率表,对未登录词进行序列标注后利用Viterbi算法进行求解,得到一个概率最大的分词序列,对待分词的句子重新组合,得到最终切分组合,最后根据用户对于输出结果形式的需求进行输出。
具体地,所述词汇模型的构建,首先将句子转化为二元组,二元组第一个元素为字符,第二个元素即为标签,其中字符即为单字,标签Label即为这个字对应位置的代表,即
label∈{B,E,M,S}
其中,B代表begin,即为开头单字,E代表end,即为终止字,M代表middle,即为分词的中间字,S代表single,即改字为单独字。
将一个给定的待分词的句子视为一个观察序列,对HMM(BEMS)四种状态的模型来说,就是为了找到一个最佳的BEMS隐状态序列。HMM模型表示为五元组:
{states,observations,start_probability,
transition_probability,emission_probability}
其中,states表示为状态空间,即所要求的分词结果,observation表示为观察空间,是所有汉字以及标点符号所组成的集合;start_probability表示为状态的初始分布,transition_probability表示为状态的转移概率矩阵,emission_probability表示为状态产生观察的概率,即发射概率矩阵;为得到五元组中的start_probability、transition_probability以及emission_probability,将句子中的字基于报纸和书籍所收集的原始语料库进行训练,得到其概率表,其中要统计的主要有三个概率表:
a)transition_probability,即B(开头),M(中间),E(结尾),S(独立成词)四种状态的转移概率;结果如下:
{′B′:{′E′:0.8518218565181658,′M′:0.14817814348183422},
′E′:{′B′:0.5544853051164425,′S′:0.44551469488355755},
′M′:{′E′:0.7164487459986911,′M′:0.2835512540013088},
′S′:{′B′:0.48617017333894563,′S′:0.5138298266610544}}
b)emission_probability,即状态产生观察的概率,发射概率。根据HMM观测独立性假设发射概率,即观察值只取决于当前状态值,即:
P(observed[i],states[j])=P(states[j])*P(observed[i]|states[j])
例如P("和"|M)表示一个词的中间出现“和”这个字的概率;
c)start_probability,词语以某种状态开头的起始概率,即只有两种,B或者S;
P={′B′:0.76898,′S′:0.23102}
随后使用Viterbi算法来得到使概率最大的分词序列,观察空间observation作为输入,状态空间states作为输出,在输入输出之间借助提前训练好的HMM起始概率start_probability、转移概率transition_probability、发射概率emission_probability,使用基于动态规划的viterbi算法的方法,找到一个使状态空间states出现最大概率时所对应的分词序列,按照B打头,E结尾的方式,对待分词的句子重新组合,得到分词结果。
比如,对待分词的句子“全世界都在学中国话”得到一个BEMS序列[S,B,E,S,S,S,B,E,S],通过把连续的BE凑合到一起得到一个词,S为一个单独的词,就得到一个分词结果了:上面的BE位置和句子中单个汉字的位置一一对应,得到全/S世界/BE都/S在/S学/S中国/BE话/S,从而将句子切分为词语。
根据得到的最终切分组合,结合用户输出结果展示需求,进行最终的输出。用户可根据最终分词结果设计用户自定义分词库并添加(可以选择空格、斜杠、换行作为分词间隔符),以适应自身应用环境,并将结果补充到粤语联合语料库构建模块。
如图9所示,选取文本为基于连登论坛平台爬取的短文本,经过支持用户自定义的短文本清洗模块处理过后得到清洗后的文本,随后基于粤语联合语料库构建模块得到的粤语联合语料库,经过短文本扫描和初步切分模块以及未登录词处理及分词结果输出模块,得到分词结果。其中自定义输出形式为空格切分。为验证分词结果,选取连登平台爬取大规模文本,在11058次分词操作中,分词正确的次数为9620次,分词准确率达87%。
综上,本发明解决了现有技术中没有考虑到面向社交网络不规则短文本的粤语分词方法,提出了满足用户自身不同应用场景的个性化数据清洗模型,建立了面向社交网络的粤语联合语料库,设计了基于构建的联合语料库的分词模型,同时综合考虑了文本中出现未登录词的处理方案,提出对应的综合处理模型。
Claims (10)
1.一种面向社交网络不规则短文本的粤语分词方法,其特征在于,包括如下步骤:
步骤1,利用支持用户自定义的短文本清洗模块对原始语料进行编码统一,然后基于用户文本清洗需求进行后续的数据清洗;
步骤2,利用粤语联合语料库构建模块对语料库进行设计和更新,以得到适用于粤语语境的联合语料库;
步骤3,基于步骤2得到的联合语料库,利用短文本扫描和初步切分模块对步骤1清洗后的文本进行词图扫描寻找成词情况,基于分词构造有向无环图;并利用动态规划进行逆向最大匹配,寻找最大概率路径下的切分组合,形成初步分词切分组合;
步骤4,利用未登录词处理及分词结果输出模块对得到的初步分词切分组合进行判断,若切分词不为未登录词,则将其作为最终切分组合;若切分词为未登录词,则构建词汇模型,利用所述联合语料库训练得到的概率表,对未登录词进行序列标注后利用Viterbi算法进行求解,得到一个概率最大的分词序列,对待分词的句子重新组合,得到最终切分组合,最后根据用户对于输出结果形式的需求进行输出。
2.根据权利要求1所述面向社交网络不规则短文本的粤语分词方法,其特征在于,所述步骤1中,对原始语料进行编码统一,选择的编码为“GBK”、“UTF-16”或“UTF-8”,所述数据清洗包括:TML字符转换、移除标点符号、移除表情符号或移除url链接,将移除的内容用空格替代保证短文本的整齐。
3.根据权利要求2所述面向社交网络不规则短文本的粤语分词方法,其特征在于,将待处理的原始文本设为T,将其分为N个短文本序Si的集合,其中,0<i≤N,T={S1,S2,S3…,SN,},所述TML字符转换是用正则表达式将嵌入在原始数据中的大量html实体去掉;所述移除标点符号是当数据分析需要在单词水平上被数据驱动时候,移除标点符号;所述移除表情符号是去除包含在社交网络短文本中的表情符号;所述移除url链接是去除网络短文本数据中在爬取过程中产生的大量URL数据;清洗操作基于N个短文本展开,对每一个短文本进行正则化匹配并实现文本清洗。
4.根据权利要求1所述面向社交网络不规则短文本的粤语分词方法,其特征在于,所述步骤2中,联合语料库的构建过程如下:
(1)对从报纸和书籍所收集的原始语料库进行整理,并将其中的分词转化为粤语繁体字,作为官方文档的原始语料库;
(2)根据香港地区空间地点名称、媒体名称、人物名称、机构名称,组成的专有名词,构建基于香港地区专有名词的语料库;
(3)添加香港社交网络中常用的英文分词,并根据香港社交平台实时更新的网络流行语以及网络新词,将其中出现的分词整理并转化为粤语繁体字,构建基于社交短文本的粤语分词语料库;
(4)将步骤(2)得到的语料库和步骤(3)得到的粤语分词语料库进行拼接,并入步骤(1)所得到的原始语料库,整合成为联合语料库。
5.根据权利要求4所述面向社交网络不规则短文本的粤语分词方法,其特征在于,所述(1)中,官方文档的原始语料库,整理为base语料库;(2)中,空间地点名称、媒体名称、人物名称、机构名称分别整理为site、media、people、organization语料库,(3)中,将粤语分词语料库整理为social语料库。
6.根据权利要求1所述面向社交网络不规则短文本的粤语分词方法,其特征在于,所述步骤3包括以下步骤:
(1)对步骤1清洗后的文本进行词图扫描,生成句子中汉字所有可能成词情况;
(2)在(1)中得到所有的成词情况中,在句子中构造分词的有向无环图,对切分词(a,b)进行记录和标注,其中a代表分词起始的字,b为可能的分词终止的字;
(3)利用(2)切分好的词语,对该词语查找该词语在联合语料库中出现的频率,然后根据动态规划查找最大概率路径的方法,逆向匹配计算句子的最大概率,得到最大概率的切分组合,即初步分词切分组合。
7.根据权利要求6所述面向社交网络不规则短文本的粤语分词方法,其特征在于,所述(1)中,对步骤1清洗后的N个文本,依次按顺序读取,每一个短文本Si由m个字Zi,j组成,其中i代表短文本编号,j代表字的编号,实现对文本进一步的切分,基于联合语料库进行词图扫描,具体步骤如下:
Step1:设置词典最长查找长度L;
Step2:在短文本Si中从头遍历每一个字Zi,j,初试位置为Zi,1,随后在短文本Si中生成以Zi,1为开头的成词可能,即挑选Zi,jZi,j+1,在联合语料库中查找匹配,若查找到该匹配,则转step3,若不存在该匹配,则将Zi,1作为单字成词输出,遍历文本的指针后移,转到Step2;
Step3:将Zi,j+3扩充到Zi,j+1Zi,j+2,将Zi,j+1Zi,j+2Zi,j+3在联合语料库中寻找匹配,若查找到该匹配,则转step4,若未找到该匹配,则将Zi,j+1Zi,j+2作为成词输出,遍历文本的指针后移,转到Step2;
step4:继续向后扩充,直至Zi,j+m,使得Zi,j+1Zi,j+2…Zi,j+m在联合语料库中无法寻找到该匹配,则将Zi,j+1Zi,j+2…Zi,j+m-1作为成词输出,遍历文本的指针后移,转到Step2;
所述(2)中,利用有向无环图来表示各字从前到后的成词情况,利用(a,b)对切分词进行记录和标注,a为分词起始的字Zi,j,b为可能的分词终止的字Zi,j+p组成的集合;
所述(3)中,动态规划查找最大概率路径的方法,公式如下:
P′(zn)=lg(P(zn)) (2)
W*=argminP(Z) (4)
8.根据权利要求1所述面向社交网络不规则短文本的粤语分词方法,其特征在于,所述步骤4中构建词汇模型,首先将句子转化为二元组,二元组第一个元素为字符,第二个元素即为标签,其中字符即为单字,标签Label即为这个字对应位置的代表,即
label∈{B,E,M,S}
其中,B代表begin,即为开头单字,E代表end,即为终止字,M代表middle,即为分词的中间字,S代表single,即改字为单独字。
9.根据权利要求8所述面向社交网络不规则短文本的粤语分词方法,其特征在于,将所得词汇模型表示为五元组:
{states,observations,start_probability,
transition_probability,emission_probability}
其中,states表示为状态空间,即所要求的分词结果,observation表示为观察空间,是所有汉字以及标点符号所组成的集合;start_probability表示为状态的初始分布,transition_probability表示为状态的转移概率矩阵,emission_probability表示为状态产生观察的概率,即发射概率矩阵;为得到五元组中的start_probability、transition_probability以及emission_probability,将句子中的字基于报纸和书籍所收集的原始语料库进行训练,得到其概率表,其中要统计的主要有三个概率表:
a)transition_probability,即B、M、E、S四种状态的转移概率;结果如下:
{′B′:{′E′:0.8518218565181658,′M′:0.14817814348183422},
′E′:{′B′:0.5544853051164425,′S′:0.44551469488355755},
′M′:{′E′:0.7164487459986911,′M′:0.2835512540013088},
′S′:{′B′:0.48617017333894563,′S′:0.5138298266610544}}
b)emission_probability,观察值只取决于当前状态值,其中观察值和状态值均为单个字,即:
P(observed[i],states[j])=P(states[j])*P(observed[i]|states[j])
c)start_probability,词语以某种状态开头的起始概率,即只有两种,B或者S;
P={′B′:0.76898,′S′:0.23102}
随后使用Viterbi算法来得到使概率最大的分词序列,观察空间observation作为输入,状态空间states作为输出,在输入输出之间借助提前训练好的HMM起始概率start_probability、转移概率transition_probability、发射概率emission_probability,使用基于动态规划的viterbi算法的方法,找到一个使状态空间states出现最大概率时所对应的分词序列,按照B打头,E结尾的方式,对待分词的句子重新组合,得到分词结果。
10.根据权利要求1所述面向社交网络不规则短文本的粤语分词方法,其特征在于,用户根据最终分词结果设计用户自定义分词库并添加,以适应自身应用环境,并将结果补充到粤语联合语料库构建模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011236593.3A CN112307759B (zh) | 2020-11-09 | 2020-11-09 | 一种面向社交网络不规则短文本的粤语分词方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011236593.3A CN112307759B (zh) | 2020-11-09 | 2020-11-09 | 一种面向社交网络不规则短文本的粤语分词方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112307759A true CN112307759A (zh) | 2021-02-02 |
CN112307759B CN112307759B (zh) | 2024-04-12 |
Family
ID=74326510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011236593.3A Active CN112307759B (zh) | 2020-11-09 | 2020-11-09 | 一种面向社交网络不规则短文本的粤语分词方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112307759B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117436445A (zh) * | 2023-12-21 | 2024-01-23 | 珠海博维网络信息有限公司 | 一种粤语词组分词处理方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020099744A1 (en) * | 2001-01-25 | 2002-07-25 | International Business Machines Corporation | Method and apparatus providing capitalization recovery for text |
CN1815551A (zh) * | 2006-02-28 | 2006-08-09 | 安徽中科大讯飞信息科技有限公司 | 在方言语音合成系统中进行文本方言化处理的方法 |
CN106528536A (zh) * | 2016-11-14 | 2017-03-22 | 北京赛思信安技术股份有限公司 | 一种基于词典与文法分析的多语种分词方法 |
US10078630B1 (en) * | 2017-05-09 | 2018-09-18 | International Business Machines Corporation | Multilingual content management |
CN110502737A (zh) * | 2018-05-18 | 2019-11-26 | 中国医学科学院北京协和医院 | 一种基于医学专业词典与统计算法的分词方法 |
WO2020007027A1 (zh) * | 2018-07-04 | 2020-01-09 | 平安科技(深圳)有限公司 | 线上问答方法、装置、计算机设备和存储介质 |
CN110750993A (zh) * | 2019-10-15 | 2020-02-04 | 成都数联铭品科技有限公司 | 分词方法及分词器、命名实体识别方法及系统 |
CN110879831A (zh) * | 2019-10-12 | 2020-03-13 | 杭州师范大学 | 基于实体识别技术的中医药语句分词方法 |
-
2020
- 2020-11-09 CN CN202011236593.3A patent/CN112307759B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020099744A1 (en) * | 2001-01-25 | 2002-07-25 | International Business Machines Corporation | Method and apparatus providing capitalization recovery for text |
CN1815551A (zh) * | 2006-02-28 | 2006-08-09 | 安徽中科大讯飞信息科技有限公司 | 在方言语音合成系统中进行文本方言化处理的方法 |
CN106528536A (zh) * | 2016-11-14 | 2017-03-22 | 北京赛思信安技术股份有限公司 | 一种基于词典与文法分析的多语种分词方法 |
US10078630B1 (en) * | 2017-05-09 | 2018-09-18 | International Business Machines Corporation | Multilingual content management |
CN110502737A (zh) * | 2018-05-18 | 2019-11-26 | 中国医学科学院北京协和医院 | 一种基于医学专业词典与统计算法的分词方法 |
WO2020007027A1 (zh) * | 2018-07-04 | 2020-01-09 | 平安科技(深圳)有限公司 | 线上问答方法、装置、计算机设备和存储介质 |
CN110879831A (zh) * | 2019-10-12 | 2020-03-13 | 杭州师范大学 | 基于实体识别技术的中医药语句分词方法 |
CN110750993A (zh) * | 2019-10-15 | 2020-02-04 | 成都数联铭品科技有限公司 | 分词方法及分词器、命名实体识别方法及系统 |
Non-Patent Citations (2)
Title |
---|
格桑多吉;乔少杰;何泽东;: "基于字典的藏文分词系统实现研究", 电子技术与软件工程, no. 08, 15 April 2015 (2015-04-15) * |
秦文, 苑春法: "基于决策树的汉语未登录词识别", 中文信息学报, no. 01, 25 January 2004 (2004-01-25) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117436445A (zh) * | 2023-12-21 | 2024-01-23 | 珠海博维网络信息有限公司 | 一种粤语词组分词处理方法及系统 |
CN117436445B (zh) * | 2023-12-21 | 2024-04-02 | 珠海博维网络信息有限公司 | 一种粤语词组分词处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112307759B (zh) | 2024-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021114745A1 (zh) | 一种基于词缀感知的社交媒体命名实体识别方法 | |
CN101133411B (zh) | 非罗马字符的容错罗马化输入方法 | |
CN101002198B (zh) | 用于非罗马字符和字的拼写校正系统和方法 | |
WO2012166417A1 (en) | Method and system for text message normalization based on character transformation and unsupervised of web data | |
CN103309926A (zh) | 基于条件随机场的中英文混合命名实体识别方法及系统 | |
JP2013117978A (ja) | タイピング効率向上のためのタイピング候補の生成方法 | |
CN111858932A (zh) | 基于Transformer的多重特征中英文情感分类方法及系统 | |
CN104778256A (zh) | 一种领域问答系统咨询的快速可增量聚类方法 | |
CN106844348B (zh) | 一种汉语句子功能成分分析方法 | |
JP2022552029A (ja) | Transformerのディープラーニングモデルに基づいて多言語による地名の語根を中国語に翻訳する方法 | |
JP4266222B2 (ja) | 単語翻訳装置およびそのプログラム並びにコンピュータ読み取り可能な記録媒体 | |
CN113704416A (zh) | 词义消歧方法、装置、电子设备及计算机可读存储介质 | |
CN102214238A (zh) | 一种汉语词语相近性匹配装置及方法 | |
CN113515619A (zh) | 一种基于显著性信息门控机制的关键词生成方法 | |
CN109815497B (zh) | 基于句法依存的人物属性抽取方法 | |
CN102929864B (zh) | 一种音字转换方法及装置 | |
CN115269834A (zh) | 一种基于bert的高精度文本分类方法及装置 | |
CN114298010A (zh) | 一种融合双语言模型和句子检测的文本生成方法 | |
CN112307759A (zh) | 一种面向社交网络不规则短文本的粤语分词方法 | |
CN101667099A (zh) | 一种连笔键盘文字输入的方法和设备 | |
Sen et al. | Bangla natural language processing: A comprehensive review of classical machine learning and deep learning based methods | |
KR102534131B1 (ko) | 대화 형식 기반의 도서 추천 서비스 제공 방법 및 그를 위한 장치 | |
Khoufi et al. | Chunking Arabic texts using conditional random fields | |
Mohri et al. | Probabilistic context-free grammar induction based on structural zeros | |
Laukaitis et al. | Sentence level alignment of digitized books parallel corpora |
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 |