CN114781371A - 基于统计和基于词典的中文分词方法 - Google Patents
基于统计和基于词典的中文分词方法 Download PDFInfo
- Publication number
- CN114781371A CN114781371A CN202210357755.1A CN202210357755A CN114781371A CN 114781371 A CN114781371 A CN 114781371A CN 202210357755 A CN202210357755 A CN 202210357755A CN 114781371 A CN114781371 A CN 114781371A
- Authority
- CN
- China
- Prior art keywords
- word segmentation
- word
- dictionary
- matching
- sentence
- 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.)
- Pending
Links
- 230000011218 segmentation Effects 0.000 title claims abstract description 73
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000012805 post-processing Methods 0.000 claims abstract description 5
- 230000008569 process Effects 0.000 claims description 6
- 238000003058 natural language processing Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012545 processing 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
- 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/40—Processing or translation of natural language
- G06F40/42—Data-driven translation
- G06F40/44—Statistical methods, e.g. probability models
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Machine Translation (AREA)
Abstract
本发明提供了一种基于统计和基于词典的中文分词方法,结合基于统计和基于词典的分词方法,形成一个分词系统。一种基于统计和基于词典的中文分词方法,包括以下步骤:S1.输入需要待分词语句;S2.对本句话进行原子分词;S3.对输入的句子进行利用词典的机械分词,即使用双数组Trie树算法对句子进行正向最大匹配;S4.使用最短路径方法进行分词;S5.输出分词结果,词频后处理,人工纠正。
Description
技术领域
本发明涉及一种分词方法或分词系统,具体涉及一种基于统计和基于词典的中文分词方法,属于自然语言处理分词技术领域。
背景技术
自然语言处理,即实现人机间自然语言通信,实现自然语言理解和自然语言生成是十分困难的。造成困难的根本原因是自然语言文本和对话的各个层次上广泛存在的各种各样的歧义性或多义性。对中文自然语言处理的领域来说,“分词”一直是一项十分重要且基础的步骤。分词就是将句子、段落、文章这种长文本,分解为以字词为单位的数据结构,方便后续的处理分析工作。
当前中文分词主要有几种方法:基于词典的分词方法、基于统计的机器学习算法。本发明结合基于统计和基于词典的分词方法,形成一个分词系统。
发明内容
本发明目的是提供了一种基于统计和基于词典的中文分词方法,结合基于统计和基于词典的分词方法,形成一个分词系统。
本发明为实现上述目的,通过以下技术方案实现:
一种基于统计和基于词典的中文分词方法,包括以下步骤:
S1.输入需要待分词语句;
S2.对本句话进行原子分词;
S3. 对输入的句子进行利用词典的机械分词,即使用双数组Trie树算法对句子进行正向最大匹配;
S4.使用最短路径方法进行分词;
S5.输出分词结果,词频后处理,人工纠正。
所述基于统计和基于词典的中文分词方法优选方案,使用双数组Trie树算法对句子进行正向最大匹配具体过程如下:
在切分语句时,将语句的每个字符串与词表中的词逐一进行匹配,找到则切分,否则不予切分。正向最大匹配算法需要获取两部分,一个是分词词典,另一个是需要被分词的文档;
假定分词词典中的最长词有个汉字字符串,则用被处理文档的当前字符串中的前个字作为匹配字段,查找字典;
若此时分词词典中存在这样一个字符串,则匹配成功,而此时被匹配的字段切分出来;
如果匹配失败,将匹配字段中的最后一个字去掉,对此时剩下的字串重新与分词词典进行匹配,如此下去直到匹配成功,即是切分出一个词或剩余字串的长度为零为止,这个时候才是匹配了一轮;
接着进行下一个子字串的匹配,方法同上,直到文档被扫描完为止。
所述基于统计和基于词典的中文分词方法优选方案,使用最短路径方法进行分词具体过程如下:
根据算法思想,当我们拿到一个字串后,首先根据词典构造有向无环图;
字串分为单个的字,每个字用图中相邻的两个结点表示,因此对于长度为n的字串,需要n+1个结点;
两节点间若有边,则表示两节点间所包含的所有结点构成的词;
图构造出来后,接下来就要计算最短路径,N-最短路径是基于Dijkstra算法的一种简单扩展,它在每个结点处记录了N个最短路径值与该结点的前驱;
每条路径根据统计概率或日常词语规范,设置的权值不同,每个词的成词概率可以求出,进而整个有向图的路径可以求出,最终可以得到一个候补的N种字串划分结果,以继续后面的分词步骤。
本发明的优点在于:
前提需构造独家词典,构建分词系统的步骤为,首先输入待分词语句;接着对其进行原子分词;然后对输入的句子进行利用词典的机械分词,即使用双数组Trie树算法对句子进行正向最大匹配;继续使用最短路径方法进行分词;最后对完成分词的语句进行后处理,提高本分词方法的准确率。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
图1为本发明实施例的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参考图1,一种基于统计和基于词典的中文分词方法,包括以下步骤:
S1.输入需要待分词语句;
S2.对本句话进行原子分词,即对语句中数字、ID、人名、组织机构名等进行识别,方便后续调用不同词典对这类词语进行精准识别,以完成分词;
S3. 对输入的句子进行利用词典的机械分词,即使用双数组Trie树算法对句子进行正向最大匹配, Trie树也称为字典树、前缀树,是一种常被用于词检索的树结构,其检索思想为:利用词的共同前缀以达到节省空间的目的,双数组树Double array trie结合了array查询效率高、list节省空间的优点,具体是通过两个数组来实现;
S4.使用最短路径方法进行分词;
S5.输出分词结果,词频后处理,人工纠正,通过以上步骤即可得到本分词系统运行后的分词语句结果,其可能会存在分词错误或不准确的问题,通过对分词结果的人工纠正,可为后续提高本分词方法的准确率提供帮助。
本实施例中,使用双数组Trie树算法对句子进行正向最大匹配具体过程如下:
在切分语句时,将语句的每个字符串与词表中的词逐一进行匹配,找到则切分,否则不予切分。正向最大匹配算法需要获取两部分,一个是分词词典,另一个是需要被分词的文档;
假定分词词典中的最长词有个汉字字符串,则用被处理文档的当前字符串中的前个字作为匹配字段,查找字典;
若此时分词词典中存在这样一个字符串,则匹配成功,而此时被匹配的字段切分出来;
如果匹配失败,将匹配字段中的最后一个字去掉,对此时剩下的字串重新与分词词典进行匹配,如此下去直到匹配成功,即是切分出一个词或剩余字串的长度为零为止,这个时候才是匹配了一轮;
接着进行下一个子字串的匹配,方法同上,直到文档被扫描完为止。
本实施例中,使用最短路径方法进行分词具体过程如下:
根据算法思想,当我们拿到一个字串后,首先根据词典构造有向无环图;
字串分为单个的字,每个字用图中相邻的两个结点表示,因此对于长度为n的字串,需要n+1个结点;
两节点间若有边,则表示两节点间所包含的所有结点构成的词;
图构造出来后,接下来就要计算最短路径,N-最短路径是基于Dijkstra算法的一种简单扩展,它在每个结点处记录了N个最短路径值与该结点的前驱;
每条路径根据统计概率或日常词语规范,设置的权值不同,每个词的成词概率可以求出,进而整个有向图的路径可以求出,最终可以得到一个候补的N种字串划分结果,以继续后面的分词步骤。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种基于统计和基于词典的中文分词方法,其特征在于,包括以下步骤:
S1.输入需要待分词语句;
S2.对本句话进行原子分词;
S3. 对输入的句子进行利用词典的机械分词,即使用双数组Trie树算法对句子进行正向最大匹配;
S4.使用最短路径方法进行分词;
S5.输出分词结果,词频后处理,人工纠正。
2.根据权利要求1所述基于统计和基于词典的中文分词方法,其特征在于:使用双数组Trie树算法对句子进行正向最大匹配具体过程如下:
在切分语句时,将语句的每个字符串与词表中的词逐一进行匹配,找到则切分,否则不予切分;
正向最大匹配算法需要获取两部分,一个是分词词典,另一个是需要被分词的文档;
假定分词词典中的最长词有个汉字字符串,则用被处理文档的当前字符串中的前个字作为匹配字段,查找字典;
若此时分词词典中存在这样一个字符串,则匹配成功,而此时被匹配的字段切分出来;
如果匹配失败,将匹配字段中的最后一个字去掉,对此时剩下的字串重新与分词词典进行匹配,如此下去直到匹配成功,即是切分出一个词或剩余字串的长度为零为止,这个时候才是匹配了一轮;
接着进行下一个子字串的匹配,方法同上,直到文档被扫描完为止。
3.根据权利要求1或2所述基于统计和基于词典的中文分词方法,其特征在于:使用最短路径方法进行分词具体过程如下:
根据算法思想,当我们拿到一个字串后,首先根据词典构造有向无环图;
字串分为单个的字,每个字用图中相邻的两个结点表示,因此对于长度为n的字串,需要n+1个结点;
两节点间若有边,则表示两节点间所包含的所有结点构成的词;
图构造出来后,接下来就要计算最短路径,N-最短路径是基于Dijkstra算法的一种简单扩展,它在每个结点处记录了N个最短路径值与该结点的前驱;
每条路径根据统计概率或日常词语规范,设置的权值不同,每个词的成词概率可以求出,进而整个有向图的路径可以求出,最终可以得到一个候补的N种字串划分结果,以继续后面的分词步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210357755.1A CN114781371A (zh) | 2022-04-07 | 2022-04-07 | 基于统计和基于词典的中文分词方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210357755.1A CN114781371A (zh) | 2022-04-07 | 2022-04-07 | 基于统计和基于词典的中文分词方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114781371A true CN114781371A (zh) | 2022-07-22 |
Family
ID=82428114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210357755.1A Pending CN114781371A (zh) | 2022-04-07 | 2022-04-07 | 基于统计和基于词典的中文分词方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114781371A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104991889A (zh) * | 2015-06-26 | 2015-10-21 | 江苏科技大学 | 一种基于模糊分词的非多字词错误自动校对方法 |
CN110263325A (zh) * | 2019-05-17 | 2019-09-20 | 交通银行股份有限公司太平洋信用卡中心 | 中文分词系统 |
CN110502737A (zh) * | 2018-05-18 | 2019-11-26 | 中国医学科学院北京协和医院 | 一种基于医学专业词典与统计算法的分词方法 |
CN112307753A (zh) * | 2020-12-29 | 2021-02-02 | 启业云大数据(南京)有限公司 | 支持大量词库的分词方法、计算机可读存储介质及系统 |
-
2022
- 2022-04-07 CN CN202210357755.1A patent/CN114781371A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104991889A (zh) * | 2015-06-26 | 2015-10-21 | 江苏科技大学 | 一种基于模糊分词的非多字词错误自动校对方法 |
CN110502737A (zh) * | 2018-05-18 | 2019-11-26 | 中国医学科学院北京协和医院 | 一种基于医学专业词典与统计算法的分词方法 |
CN110263325A (zh) * | 2019-05-17 | 2019-09-20 | 交通银行股份有限公司太平洋信用卡中心 | 中文分词系统 |
CN112307753A (zh) * | 2020-12-29 | 2021-02-02 | 启业云大数据(南京)有限公司 | 支持大量词库的分词方法、计算机可读存储介质及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111310443B (zh) | 一种文本纠错方法和系统 | |
CN109388803B (zh) | 中文分词方法及系统 | |
US7478036B2 (en) | Method and system for automatically extracting new word | |
Chen et al. | Chinese named entity recognition with conditional random fields | |
CN111444705A (zh) | 纠错方法、装置、设备及可读存储介质 | |
CN104778256B (zh) | 一种领域问答系统咨询的快速可增量聚类方法 | |
US9009021B2 (en) | Automatic transliteration of a record in a first language to a word in a second language | |
CN110853625B (zh) | 语音识别模型分词训练方法、系统、移动终端及存储介质 | |
US20120089620A1 (en) | Extracting data | |
CN109902142B (zh) | 一种基于编辑距离的字符串模糊匹配和查询方法 | |
CN116628173B (zh) | 一种基于关键字提取的智能客服信息生成系统及生成方法 | |
CN102063482A (zh) | 一种手持设备高效联系人查找方法 | |
CN111651986A (zh) | 事件关键词提取方法、装置、设备及介质 | |
CN104050255A (zh) | 基于联合图模型的纠错方法及系统 | |
CN103996021A (zh) | 一种多字符识别结果的融合方法 | |
Saluja et al. | Error detection and corrections in Indic OCR using LSTMs | |
CN108647199A (zh) | 一种地名新词的发现方法 | |
CN114266256A (zh) | 一种领域新词的提取方法及系统 | |
CN115033773A (zh) | 一种基于在线搜索辅助的中文文本纠错方法 | |
CN105956158A (zh) | 基于海量微博文本和用户信息的网络新词自动提取的方法 | |
CN111339753A (zh) | 一种自适应中文新词识别方法与系统 | |
CN113420766B (zh) | 一种融合语言信息的低资源语种ocr方法 | |
CN112149388B (zh) | 一种识别口令中词汇变形并产生猜测规则的方法 | |
CN117235108A (zh) | 一种基于图神经网络的nl2sql生成方法 | |
CN107273360A (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 |