CN110955806A - 一种针对中文文本的字符串匹配方法 - Google Patents
一种针对中文文本的字符串匹配方法 Download PDFInfo
- Publication number
- CN110955806A CN110955806A CN201911201503.4A CN201911201503A CN110955806A CN 110955806 A CN110955806 A CN 110955806A CN 201911201503 A CN201911201503 A CN 201911201503A CN 110955806 A CN110955806 A CN 110955806A
- Authority
- CN
- China
- Prior art keywords
- character string
- matching
- character
- character strings
- keyword
- 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
Images
Classifications
-
- 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/903—Querying
- G06F16/90335—Query processing
- G06F16/90344—Query processing by using string matching techniques
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种针对中文文本的字符串匹配方法。方法包括如下步骤:步骤1:根据报表属性定义关键词集;步骤2:以关键词询问的方式获取客户每个关键词下需要咨询的内容;步骤3:依次对每组字符串进行匹配;步骤4:查询每个关键词在报表中的位置;步骤5:判断关键词是否完全匹配,完全匹配则转步骤6,否则返回步骤4;步骤6:字符串进行模糊匹配;步骤7:判断是否可以完成该报表属性下各字符串匹配度计算;步骤8:判断所有字符串完成匹配;步骤9:计算字符串匹配度的最大值;步骤10:将该字符串对应的数据信息反馈给客户。本专利提高了信息查询的效率;提高了字符串匹配的准确性。
Description
技术领域:
本发明涉及线上客户服务系统或方法,具体涉及一种针对中文文本的字符串匹配方法。
背景技术:
专利文献CN106919663A记载了一种考虑等价关键词以及连续数字的字符串匹配规则。该方法提出先满足关键词匹配要求才可进行字符串匹配度计算,但在计算总的字符串匹配度时将关键词与非关键词进行同级运算,无法体现关键词的高优先级,且非关键词的长度会影响匹配度;另外,该方法对于非关键词编辑距离的计算方式未考虑由于汉字与英文字符的差异性。
传统的编辑距离计算方式主要用于英文字符串匹配,而汉字字符存在一定的特性,因此这里该方式并不适用。编辑距离是对两个字符串相互转换需要付出的最小代价,转换可能的操作只有插入、删除、替换三种,每次操作都看作一次原子操作,但是在这种方法中,由于每一个原子操作代价都为1,导致其考虑信息比较单一。
发明内容:
为了克服现有技术在进行中文字符串匹配时考虑信息单一而忽略了汉字与一般字符差异的问题,本发明对编辑距离的递推式进行了改进,提供一种针对中文文本的字符串匹配方法。本专利解决其技术问题所采用的技术方案是:
一种针对中文文本的字符串匹配方法,包括根据报表属性定义关键词集,以关键词询问的方式获取客户每个关键词下需要咨询的内容,使每个关键词对应一个字符串分组;通过完全匹配的方式查询每个关键词在报表中的位置,当关键词完成匹配时才进行下一步匹配,否则继续在报表属性中寻找该关键词;对每个关键词对应的字符串分组采用模糊匹配,融合字符的字音特性对编辑距离的计算方式进行改进,并计算该报表属性下字符串与该组字符串的匹配度;将客户咨询内容统一为一个长字符串整体,并计算报表查询路径构成的总字符串与该长字符串的匹配度,选择匹配度最大的字符串对应的数据信息反馈给用户。
具体技术方案如下:
一种针对中文文本的字符串匹配方法,包括如下步骤:
步骤1:根据报表属性定义关键词集,转步骤2;
步骤2:以关键词询问的方式获取客户每个关键词下需要咨询的内容,转步骤3;
步骤3:依次对每组字符串进行匹配,转步骤4;假定得到的关键词集合为{省市,单位,时间,指标},通过向客户询问每一个关键词,得到每一个关键词下客户的咨询内容字符串,每个字符串组格式为(关键词:客户咨询内容),4个关键词表示有4个字符串组,例如:组1为(省市:北京市),组2为(单位:科东电力控制系统有限公司);
步骤4:查询每个关键词在报表中的位置,转步骤5;
步骤5:判断关键词是否完全匹配,完全匹配则转步骤6,否则返回步骤4;所述的关键词完全匹配是查询与关键词完全相同的报表属性,若正在检验的报表属性与关键词完全匹配,则在该报表属性下进行该组字符串中非关键词的匹配;否则检验下一个报表属性,直到该关键词完全匹配;
步骤6:从对应报表下的候选字符串与该组客户咨询内容字符串进行模糊匹配;转步骤7;
步骤7:判断是否可以完成该报表属性下各字符串匹配度计算,可以完成则转步骤8,否则返回步骤6;计算方法如下:
进行匹配的两字符串为S1,S2,S1中第i个字符记为S1[i],S2中第j个字符记为S2[j],d[i,j]表示S1前i个字符与S2前j个字符的编辑距离,dp[i,j]表示S1[i]与S2[j]两字符对应的拼音字符串的编辑距离,max(|S1[i]|,|S2[j]|)表示两字符对应的拼音字符串长度的较大值;
确定了字符串S1,S2的编辑距离后,按下式计算字符串S1,S2的匹配度,
所述的非关键词模糊匹配是计算对应报表属性下字符串与该组客户咨询内容字符串的匹配度;首先融合汉字的字音特性改进传统编辑距离d的递推式,实质上是对传统方法中的操作代价分数进行改进;当出现两字符不相同时,可能是由于将客户语音信息转化为中文文本时出错,例如“北京客户”与“白金客户”前两个字符不同,但由于字音很相似,很有可能表示同一个字符串,因此这样的两字符间操作代价分数应较小;另外,插入与删除的代价分数应该相对于替换较低,一次替换可以看作是一次删除加上一次插入两次操作,例如“北京市”与“北京”的匹配度要高于“南京”与“北京”的匹配度;在计算编辑距离时融入汉字的拼音特性,将拼音特性对替换操作代价的影响归一化,并将插入与删除的代价设定为0.5,得到上式所示的编辑距离计算式;
步骤8:判断所有字符串完成匹配,完成转步骤9,否则返回步骤3;
步骤9:将分组查找的各客户咨询内容字符串统一为一个长字符串整体,并设计总字符串匹配度的计算式,得到该长字符串整体与报表各候选查询路径构成的总字符串的匹配度,选择各组字符串匹配度的最大值;计算方法如下:
I表示关键词个数,D为总字符串匹配度,表示第i组字符串的关键词是否完全匹配到对应的报表属性,完全匹配取值1,未完全匹配取值0,表示第i组的客户咨询内容字符串S1与对应报表属性下的候选字符串S2的匹配度;
由于最后需要选择匹配度最大的总字符串,该式保证了所有分组的目标字符串必要条件为:报表属性与关键词完全匹配,且对应属性下选择的字符串与该组字符串匹配度最大;
步骤10:将该字符串对应的数据信息反馈给客户。
本专利的有益效果
(一)本专利根据关键词对长字符串分组匹配,并且融合汉字的字音特性改进编辑距离计算方式,分别采用完全匹配与模糊匹配方式对关键词与非关键词字符串匹配,提高了信息查询的效率;融合汉字的拼音编码以及修改了原子操作的代价分数以改进编辑距离计算方式,提高了字符串匹配的准确性。
(二)降低了插入与删除的操作代价,并且根据两字符的字音相似度确定替换的操作代价。
(三)这里将关键词匹配度与该组字符串匹配度相乘作为该组的匹配度,并计算所有字符串组的平均匹配度作为总字符串匹配度。避免了将关键词匹配度与非关键词匹配度进行相加导致的非关键词长度会影响匹配度的问题,采用相乘能体现出关键词的高优先级,仅当该组关键词完全匹配时,该组字符串匹配度有效且仅与非关键词相关。
附图说明:
图1是本发明所述方法的流程图。
图2是本发明实施例中总字符串匹配度的计算过程。
具体实施方式:
实施例:
本实施例中,定义的关键词集为{省市,单位,时间,指标},经语音识别得客户咨询总字符串为“天京市剑兰苑农业公司二零一九年十月共使用电量”。该字符串对应的目标字符串为“天津市健澜园农业公司2019.10总用电量”,选取的非目标字符串为“北京市玉兰苑农业公司2019.1日均用电量”。假定关键词已完全匹配到对应的报表属性,计算该字符串与对应报表属性下目标字符串以及非目标字符串的匹配度,如表1所示。
表1
表1中匹配度列项“/”前的值为与目标字符串的匹配度,“/”后的值为与所选的非目标字符串的匹配度。
总字符串匹配度的计算过程如下:
步骤9.1:待匹配的非关键字符串S1,S2;
步骤9.2:计算编辑距离的递归边界;
步骤9.3:根据编辑距离的递推式计算每一阶字符串的编辑距离,构成编辑距离矩阵;
步骤9.4:寻找从矩阵的右下角回溯到左上角的编辑距离最小路径作为字符串匹配的最优路径;
步骤9.5:计算该查询路径构成的字符串与对应非关键词匹配度。
这里假定所有关键词集已完全匹配到对应的报表属性,即各θi k都为1,因此客户咨询内容字符串与目标字符串的匹配度大小决定了匹配方法的准确性。以第2组字符串为例对分组字符串的匹配度计算进行说明:该组咨询内容字符串中的“剑兰苑”与目标字符串中的“健澜园”3个字符不匹配,而只与非目标字符中的“玉”这1个字符不匹配,因此按照传统的编辑距离计算方式,与目标字符串以及非目标字符串的编辑距离分别为3和1,进而得到该组字符串的匹配度分别为0.57和0.86;而按照本文提出的编辑距离计算方式,提取字符串中不匹配的字符转化为拼音,故“剑兰苑”与“健澜园”的编辑距离为0,与“玉兰苑”的编辑距离为1,进而得到该组字符串与目标字符串以及非目标字符串的匹配度分别为1和0.86。对每个组的字符串匹配度计算完成后,根据总字符串匹配度定义式计算,本文方法下客户咨询内容总字符串与查询路径构成的总字符串匹配度分别为0.92与0.74,与目标字符串的匹配度明显高于与非目标字符串的匹配度;而对比方法下客户咨询内容总字符串与查询路径构成的总字符串匹配度分别为0.46与0.53,与目标字符串的匹配度甚至低于与非目标字符串的匹配度。综上所述,本发明设计的字符串匹配方法对于匹配度的计算显然更为合理。
表1
Claims (1)
1.一种针对中文文本的字符串匹配方法,其特征在于,包括如下步骤:
步骤1:根据报表属性定义关键词集,转步骤2;
步骤2:以关键词询问的方式获取客户每个关键词下需要咨询的内容,转步骤3;
步骤3:依次对每组字符串进行匹配,转步骤4;
步骤4:查询每个关键词在报表中的位置,转步骤5;
步骤5:判断关键词是否完全匹配,完全匹配则转步骤6,否则返回步骤4;
步骤6:从对应报表下的候选字符串与该组客户咨询内容字符串进行模糊匹配;转步骤7;
步骤7:判断是否可以完成该报表属性下各字符串匹配度计算,可以完成则转步骤8,否则返回步骤6;计算方法如下:
进行匹配的两字符串为S1,S2,S1中第i个字符记为S1[i],S2中第j个字符记为S2[j],d[i,j]表示S1前i个字符与S2前j个字符的编辑距离,dp[i,j]表示S1[i]与S2[j]两字符对应的拼音字符串的编辑距离,max(|S1[i]|,|S2[j]|)表示两字符对应的拼音字符串长度的较大值;
确定了字符串S1,S2的编辑距离后,按下式计算字符串S1,S2的匹配度,
步骤8:判断所有字符串完成匹配,完成转步骤9,否则返回步骤3;
步骤9:将分组查找的各客户咨询内容字符串统一为一个长字符串整体,并设计总字符串匹配度的计算式,得到该长字符串整体与报表各候选查询路径构成的总字符串的匹配度,选择各组字符串匹配度的最大值;计算方法如下:
I表示关键词个数,D为总字符串匹配度,表示第i组字符串的关键词是否完全匹配到对应的报表属性,完全匹配取值1,未完全匹配取值0,表示第i组的客户咨询内容字符串S1与对应报表属性下的候选字符串S2的匹配度;
步骤10:将该字符串对应的数据信息反馈给客户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911201503.4A CN110955806B (zh) | 2019-11-29 | 2019-11-29 | 一种针对中文文本的字符串匹配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911201503.4A CN110955806B (zh) | 2019-11-29 | 2019-11-29 | 一种针对中文文本的字符串匹配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110955806A true CN110955806A (zh) | 2020-04-03 |
CN110955806B CN110955806B (zh) | 2022-11-18 |
Family
ID=69979055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911201503.4A Active CN110955806B (zh) | 2019-11-29 | 2019-11-29 | 一种针对中文文本的字符串匹配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110955806B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112215216A (zh) * | 2020-09-10 | 2021-01-12 | 中国东方电气集团有限公司 | 一种图像识别结果的字符串模糊匹配系统及方法 |
CN112508845A (zh) * | 2020-10-15 | 2021-03-16 | 福州大学 | 基于深度学习的osd菜单语言自动化检测方法及系统 |
CN112632122A (zh) * | 2020-12-18 | 2021-04-09 | 平安普惠企业管理有限公司 | 基于多指标的报表检索方法、装置、设备及存储介质 |
CN113408637A (zh) * | 2021-06-30 | 2021-09-17 | 贵州电网有限责任公司 | 一种基于相似度算法的操作票匹配方法 |
CN113535922A (zh) * | 2021-07-22 | 2021-10-22 | 唯品会(广州)软件有限公司 | 一种尺码信息确定方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007272699A (ja) * | 2006-03-31 | 2007-10-18 | Research Organization Of Information & Systems | 文書インデキシング装置、文書検索装置、文書分類装置、並びにその方法及びプログラム |
CN101236566A (zh) * | 2008-03-06 | 2008-08-06 | 宇龙计算机通信科技(深圳)有限公司 | 一种名称查询的方法及系统 |
JP2012137875A (ja) * | 2010-12-24 | 2012-07-19 | Canon Marketing Japan Inc | 情報処理装置、情報処理方法、プログラム |
CN106168954A (zh) * | 2016-06-07 | 2016-11-30 | 中国人民解放军国防科学技术大学 | 一种基于编辑距离的负面信息模式模糊匹配方法 |
CN108416062A (zh) * | 2018-03-26 | 2018-08-17 | 国家电网公司客户服务中心 | 一种基于地址匹配技术的电网数据关联方法 |
-
2019
- 2019-11-29 CN CN201911201503.4A patent/CN110955806B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007272699A (ja) * | 2006-03-31 | 2007-10-18 | Research Organization Of Information & Systems | 文書インデキシング装置、文書検索装置、文書分類装置、並びにその方法及びプログラム |
CN101236566A (zh) * | 2008-03-06 | 2008-08-06 | 宇龙计算机通信科技(深圳)有限公司 | 一种名称查询的方法及系统 |
JP2012137875A (ja) * | 2010-12-24 | 2012-07-19 | Canon Marketing Japan Inc | 情報処理装置、情報処理方法、プログラム |
CN106168954A (zh) * | 2016-06-07 | 2016-11-30 | 中国人民解放军国防科学技术大学 | 一种基于编辑距离的负面信息模式模糊匹配方法 |
CN108416062A (zh) * | 2018-03-26 | 2018-08-17 | 国家电网公司客户服务中心 | 一种基于地址匹配技术的电网数据关联方法 |
Non-Patent Citations (1)
Title |
---|
吴振华等: "智能家居场景下改进的中文字符串匹配算法", 《南昌航空大学学报(自然科学版)》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112215216A (zh) * | 2020-09-10 | 2021-01-12 | 中国东方电气集团有限公司 | 一种图像识别结果的字符串模糊匹配系统及方法 |
CN112508845A (zh) * | 2020-10-15 | 2021-03-16 | 福州大学 | 基于深度学习的osd菜单语言自动化检测方法及系统 |
CN112632122A (zh) * | 2020-12-18 | 2021-04-09 | 平安普惠企业管理有限公司 | 基于多指标的报表检索方法、装置、设备及存储介质 |
CN113408637A (zh) * | 2021-06-30 | 2021-09-17 | 贵州电网有限责任公司 | 一种基于相似度算法的操作票匹配方法 |
CN113535922A (zh) * | 2021-07-22 | 2021-10-22 | 唯品会(广州)软件有限公司 | 一种尺码信息确定方法及装置 |
CN113535922B (zh) * | 2021-07-22 | 2024-02-02 | 唯品会(广州)软件有限公司 | 一种尺码信息确定方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110955806B (zh) | 2022-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110955806B (zh) | 一种针对中文文本的字符串匹配方法 | |
CN104657439B (zh) | 用于自然语言精准检索的结构化查询语句生成系统及方法 | |
CN101542475B (zh) | 用于对具有象形表意内容的数据进行搜索和匹配的系统和方法 | |
CN104657440B (zh) | 结构化查询语句生成系统及方法 | |
US7281001B2 (en) | Data quality system | |
CN105975625A (zh) | 一种面向英文搜索引擎的中式英文查询纠错方法和系统 | |
CN1661593B (zh) | 一种计算机语言翻译方法及其翻译系统 | |
CN101794307A (zh) | 基于互联网分词思想的车载导航poi搜索引擎 | |
CN102402561B (zh) | 一种搜索方法和装置 | |
WO2021174871A1 (zh) | 数据查询方法、系统、计算机设备及存储介质 | |
US11704326B2 (en) | Generalization processing method, apparatus, device and computer storage medium | |
CN109933645A (zh) | 信息查询方法、装置、计算机设备及存储介质 | |
CN105677725A (zh) | 一种用于旅游垂直搜索引擎的前置解析方法 | |
CN116991869A (zh) | 一种基于nlp语言模型自动生成数据库查询语句的方法 | |
CN112650858B (zh) | 应急协助信息的获取方法、装置、计算机设备及介质 | |
CN103064885B (zh) | 一种实现多关键词同步输入系统及方法 | |
CN110119404B (zh) | 一种基于自然语言理解的智能取数系统及其方法 | |
KR100998696B1 (ko) | 광고 키워드 검색 시스템 및 추천 광고키워드 제공 방법 | |
CN102385597B (zh) | 一种poi的容错搜索方法 | |
CN117708270A (zh) | 企业数据查询方法、装置、设备及存储介质 | |
CN115828854A (zh) | 一种基于上下文消歧的高效表格实体链接方法 | |
CN110309258A (zh) | 一种输入检查方法、服务器和计算机可读存储介质 | |
CN104657486A (zh) | 一种基于多因子的行政区划的可信度计算的方法 | |
CN108153743B (zh) | 基于相似度的智能离线翻译机 | |
CN108280066B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |