CN106033416B - 一种字符串处理方法及装置 - Google Patents

一种字符串处理方法及装置 Download PDF

Info

Publication number
CN106033416B
CN106033416B CN201510103200.4A CN201510103200A CN106033416B CN 106033416 B CN106033416 B CN 106033416B CN 201510103200 A CN201510103200 A CN 201510103200A CN 106033416 B CN106033416 B CN 106033416B
Authority
CN
China
Prior art keywords
recognized
string
character string
character
semantic
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.)
Active
Application number
CN201510103200.4A
Other languages
English (en)
Other versions
CN106033416A (zh
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.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510103200.4A priority Critical patent/CN106033416B/zh
Priority to CN202010065546.0A priority patent/CN111324784B/zh
Publication of CN106033416A publication Critical patent/CN106033416A/zh
Application granted granted Critical
Publication of CN106033416B publication Critical patent/CN106033416B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Character Discrimination (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种字符串处理方法,包括:获取待识别字符串;将所述待识别字符串进行分词,得到各待识别字符子串;确定各待识别字符子串的语义权重;依据各待识别字符子串,查找目标字符串;将所述目标字符串进行分词,得到各目标字符子串;确定各目标字符子串的语义权重;依据各待识别字符子串和各目标字符子串的语义权重,确定待识别字符串与目标字符串之间的语义编辑距离;依据所述语义编辑距离,确定所述待识别字符串与目标字符串之间的相似度。本申请采用带语义权重的字符子串确定语义编辑距离,大大提升了字符串相似度识别的准确性,解决了现有字符串识别准确性较差的问题。本申请还公开了另一种字符串处理装置。

Description

一种字符串处理方法及装置
技术领域
本申请涉及计算机技术领域,尤其涉及一种字符串编处理方法及装置。
背景技术
当前,互联网对人们日常生活的影响日益加强,造成互联网数据大爆炸,对于各种数据的存储识别成为日益重要的问题。在某些应用场景中,需要对诸如地址、黑名单、问题名称等进行识别归类,这就涉及到对所述庞大的数据库内的字符串进行相似度计算的问题。
在互联网领域,服务商数据库中会存储有庞大的商品服务、用户数据,包括用户地址、公司名称、商品名称等,若这类表示地址、公司名称的字符串直接来源于用户填写的信息,形式上就会多种多样,比如某公司全称上海XXX股份有限公司,则该公司员工自行填写的公司名称可能有XXX、XXX公司、上海XXX等多种字符串形式。这种情况下若想将XXX、XXX公司、上海XXX匹配识别为该公司全称上海XXX股份有限公司,往往比较困难。
目前,在数据库中计算字符串相似度的算法有编辑距离(Levenshtein Distance)算法,编辑距离就是用来计算从原串S转换到目标串T所需要的最少的插入,删除和替换的数目。字符串相似度计算公式:字符串(S,T)相似度=1–(编辑距离/(MAX(length(s),length(t))),但普通编辑距离算法仅仅机械地依据构成字符串的单个字符集合来计算,依据该种方法计算出来的相似度结果不够准确,如字符串“ABC信息技术有限公司”和“ABC”利用该相似度计算方法得到的结果可能是27.27%,而“ABC信息技术有限公司”和“XYZ信息技术有限公司”利用该相似度计算结果可能是72.73%,得出的相似度结果与实际结果差异较大、准确度较低,导致识别归类等后续处理准确性较差。
发明内容
本申请实施例提供一种字符串处理方法,用以解决现有技术对名单、地址等字符串识别采用单个字符集合成的字符子串进行编辑距离算法,得出准确度较低的字符串相似度,导致识别归类等后续处理准确性较差的问题。
本申请实施例还提供一种字符串处理装置,用以解决现有技术对名单、地址等字符串识别采用单个字符集合成的字符子串进行编辑距离算法,得出准确度较低的字符串相似度,导致识别归类等后续处理准确性较差的问题。
本申请实施例采用下述技术方案:
一种字符串处理方法,包括:
获取待识别字符串;
将所述待识别字符串进行分词,得到各待识别字符子串;
确定各待识别字符子串的语义权重;
依据各待识别字符子串,查找目标字符串;
将所述目标字符串进行分词,得到各目标字符子串;
确定各目标字符子串的语义权重;
依据各待识别字符子串和各目标字符子串的语义权重,确定待识别字符串与目标字符串之间的语义编辑距离;
依据所述语义编辑距离,确定所述待识别字符串与目标字符串之间的相似度;
根据所述相似度,对所述待识别字符串进行后续处理。
一种字符串处理装置,包括:
获取单元,用于获取待识别字符串;
查找单元,用于依据所述待识别字符串,查找目标字符串;
分词单元,用于将所述待识别字符串、目标字符串分别进行分词,得到各待识别字符子串、各目标字符子串;
语义权重确定单元,用于确定各待识别字符子串、各目标字符子串的语义权重;
编辑距离确定单元,用于依据各待识别字符子串和各目标字符子串的语义权重,确定待识别字符串与目标字符串之间的语义编辑距离;
相似度确定单元,用于依据所述语义编辑距离,确定所述待识别字符串与目标字符串之间的相似度;
后续处理单元,用于依据所述相似度,对所述待识别字符串进行后续处理。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
在处理互联网数据处理中,采用对字符串进行分词并获取字符子串,同时为所述字符子串赋予语义权重,以带语义权重的字符子串来计算语义编辑距离,提高了按语义需求的字符串识别的准确度,解决了现有技术对名单、地址等字符串识别采用单个字符集合成的字符子串进行编辑距离算法,得出准确度较低的字符串相似度,导致识别归类等后续处理准确性较差的问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例一提供的字符串处理方法流程图;
图2为本申请实施例二提供的字符串处理装置示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
图1为本申请实施例一提供的字符串处理方法流程,主要是指采用将所述字符串分解成带语义权重的字符子串,依据语义权重计算各字符串之间的语义编辑距离后再进行相似度计算,可有效提高按语义单元字符串的相似度,方便对字符串进行归类识别等后续处理。包括如下步骤:
S101:获取待识别字符串。
所述获取的待识别字符串S包括由用户输入的公司名称、地址、商品名称、黑名单、问题名称或描述中的一种或多种。
如用户需要在某些服务网站输入收货地址、服务提供商户需要输入商品名称、部分用户可能需要设置一些黑名单。而所有的这些数据可能存在表示同一意义而不同表现的一串字符,且服务网站需要保存的数据量日益庞大,此时,系统需要对用户输入的数据进行识别,以便于归类、添加、替换等后续操作。
S102:将所述待识别字符串进行分词,得到各待识别字符子串。
将所述待识别字符串S按语义单元进行分词,得到各具有语义的各待识别字符子串S={s1,s2,s3…,si}。本步骤采用语法分析单元进行处理分词处理。
S103:确定各待识别字符子串的语义权重。
首先,本地数据库中存在着一个语义权重表Wn,所述语义权重表是是预先依据数据库中保存的样本进行计算获得的,计算方法包括:
抽取一定数量的字符串样本,所述字符串样本可能为10000行以上的同类名单、地址等;对所述抽取的字符串样本进行去重操作,即去掉所述抽取的字符串样本中完全相同的字符串以使字符串样本不重复;对所述抽取的字符串样本进行分词,得到若干具有一定语义单元的样本子串,分词处理同步骤S102;最后根据逆向文件频率(term frequency–inverse document frequency,TF-IDF)词语普遍重要性的度量计算公式计算得出各样本子串的语义权重Wn={(w1,idf1),(w2,idf2),(w3,idf3)…,(wn,idfn)},其中所述|D|表示样本字符串总数,|{j:ti∈dj}|表示包含样本子串ti的行数,如果样本中不存在该样本子串,则会导致分母为零,因此一般情况下使用1+|{j:ti∈dj}|。如果该类别样本子串权重集合具有普遍性,则取一个类别名称保存该集合,如“W(companyName)”、“W(address)”等,下一次同样场景可直接调用对应权重集合。
本步骤先依据各待识别字符子串查找所述语义权重表;然后从所述语义权重表中找出各待识别字符子串的对应的语义权重得到带语义权重的待识别字符子串Sw={(s1,sw1),(s2,sw2),(s3,sw3)…,(sm,swm)}。
S104:依据各待识别字符子串,查找目标字符串。
所述目标字符串T是保存于本地数据库中的正确的公司名称、地址、商品名称、黑名单、问题名称或描述中的一种或多种。
本步骤先从所述待识别字符串中选择语义权重大于设定阈值的待识别字符子串;然后采用选择出的待识别字符子串检索目标字符串数据库,找出目标字符串。
所述语义权重大于设定阈值的待识别字符子串是指语义权重大于一定阈值的一个或多个待识别字符子串,所述找出的目标字符串可以是一个或多且每个目标字符串中都包括所述选定的待识别字符子串。
S105:将所述目标字符串进行分词,得到各目标字符子串。
将选择出的目标字符串逐一进行分词处理,本步骤的分词步骤S102相同,分词后得到目标字符子串T={t1,t2,t3…,tn}。
S106:确定各目标字符子串的语义权重。
本步骤同步骤S103,先依据各目标字符子串查找所述语义权重表;然后从所述语义权重表中找出各目标字符子串的对应的语义权重得到带语义权重的目标字符子串Tw={(t1,tw1),(t2,tw2),(t3,tw3)…,(tn,twn)}。
S107:依据各待识别字符子串和各目标字符子串的语义权重,确定待识别字符串与目标字符串之间的语义编辑距离。
本步骤是指将
依据以下公式计算语义编辑距离:
当i=0且j=0时,edit(0,0)=0;
当i=0且j>0时,edit(0,j)=edit(0,j-1)+twj
当i>0且j=0时,edit(i,0)=edit(i-1,0)+swi
当i>0且j>0时,edit(i,j)=min(edit(i-1,j)+swi,edit(i,j-1)+twj,edit(i-1,j-1)+f(i,j));
其中i表示待识别字符子串个数,j表示目标字符子串个数;twj表示目标字符子串的tj语义权重,swi表示待识别字符子串si的语义权重;edit(i,j)表示待识别字符子串集合(s1,s2,s3…si)到目标字符子串集合(t1,t2,t3…tj)的语义编辑距离,当i和j分别为待识别字符串S和目标字符串T的所包含的所有子串数量时,edit(i,j)等于待识别字符串S与目标字符串T之间的语义编辑距离edit(S,T);f(i,j)表示第i个待识别字符子串si转换到第j个目标字符子串tj所产生的语义编辑距离,当si=tj,则f(i,j)=0;当si≠tj,则f(i,j)=MAX(swi,twj)。
S108:依据所述语义编辑距离,确定所述待识别字符串与目标字符串之间的相似度。
本步骤主要是指依据步骤S107得出的语义编辑距离计算出所述待识别字符串与目标字符串之间的相似度。相似度计算公式为:1-(edit(S,T)/(MAX(length(S),length(T))),其中edit(S,T)表示待识别字符串S与目标字符串T之间的语义编辑距离,length(S)表示待识别字符串S中所有待识别字符子串的语义权重之和,length(T)表示目标字符串T中所有目标字符子串的语义权重之和。
S109:根据所述相似度,对所述待识别字符串进行后续处理。
本步骤主要是指在不同的应用场景,利用所述相似度结果,将所述待识别字符串进行归类、替换为符合相似度条件的目标字符串、设为黑名单等处理中的一种或多种。
例1:当获取的待识别字符串S为“ABC信息技术有限公司”;则将待识别字符串S分词处理后得到各待识别字符子串S={ABC,信息,技术,有限,公司},i=5;依据所述待识别字符子串从目标串数据库中查找到目标字符串T,假定找出所述目标字符串之一为“XYZ信息技术有限公司”;将所述目标字符串T进行分词处理得到目标字符子串目标字符子串T={XYZ,信息,技术,有限,公司},j=5;而语义权重表Wn内对所述字符子串的权重分别如下表1所示:
子串 ABC XYZ 信息 技术 有限 公司
权重 0.98 0.99 0.02 0.02 0.01 0.01
表1
则获得带语义权重的待识别字符子串为Sw={(ABC,0.98),(信息,0.02),(技术,0.02),(有限,0.01),(公司,0.01)}、带语义权重的目标字符子串为Tw={(XYZ,0.99),(信息,0.02),(技术,0.02),(有限,0.01),(公司,0.01)}。
依据编辑距离公式计算待识别字符子串与目标字符子串之间带语义权重的编辑距离,这里称为语义编辑距离。建立待识别字符子串Sw与目标字符子串Tw之间的带语义权重的二维矩阵如下表2所示,这里的计算类似于现有的编辑距离算法,具体不再赘述,区别在于将操作步骤数换成语义权重来进行计算,依据二维矩阵表可以得出待识别字符子串Sw与目标字符子串Tw之间的语义编辑距离为0.99。
表2
再依据相似度计算公式:1-(edit(S,T)/(MAX(length(S),length(T))),计算所述待识别字符子串S={ABC,信息,技术,有限,公司}与目标字符子串T={XYZ,信息,技术,有限,公司}之间的相似度为:1-0.99/max((0.98+0.02+0.02+0.01+0.01),(0.99+0.02+0.02+0.01+0.01))=5.71%,此时,表示待识别字符串S与目标字符串T之间的相似度很小。
例2:当获取的待识别字符串S为“ABC公司”;则将待识别字符串S分词处理后得到各待识别字符子串S={ABC,公司},i=2;依据所述待识别字符子串从目标串数据库中查找到目标字符串T,假定找出所述目标字符串之一为“ABC信息技术有限公司”;将所述目标字符串T进行分词处理得到目标字符子串目标字符子串T={ABC,信息,技术,有限,公司},j=5;而语义权重表Wn内对所述字符子串的权重分别如下表3所示:
子串 ABC 信息 技术 有限 公司
权重 0.98 0.02 0.02 0.01 0.01
表3
则获得带语义权重的待识别字符子串为Sw={(ABC,0.98),(公司,0.01)}、带语义权重的目标字符子串为Tw={(ABC,0.98),(信息,0.02),(技术,0.02),(有限,0.01),(公司,0.01)}。
依据编辑距离公式计算待识别字符子串与目标字符子串之间带语义权重的编辑距离,这里称为语义编辑距离。建立待识别字符子串Sw与目标字符子串Tw之间的带语义权重的二维矩阵如下表4所示,这里的计算类似于现有的编辑距离算法,具体不再赘述,区别在于将操作步骤数换成语义权重来进行计算,依据二维矩阵表可以得出待识别字符子串Sw与目标字符子串Tw之间的语义编辑距离为0.05。
表4
再依据相似度计算公式:1-(edit(S,T)/(MAX(length(S),length(T))),计算所述待识别字符串S={ABC,公司}与目标字符子串T={ABC,信息,技术,有限,公司}之间的相似度为:1-0.05/max((0.98+0.01),(0.98+0.02+0.02+0.01+0.01))=95.19%,此时,表示待识别字符串S与目标字符串T之间的相似度很大,可以将所述待识别字符串进行与所述目标字符串归为同一类、或者直接替换为所述目标字符串、或者将所述待识别字符串设为黑名单等后续处理。
实施例2
以上为本申请提供的字符串处理方法,基于同样的思路,本申请实施例二还提供相应的字符串处理装置,如图2所示。
图2所示为实施例二提供的字符串处理装置结构示意图,具体包括:
获取单元201,用于获取待识别字符串;
查找单元202,用于依据所述待识别字符串,查找目标字符串;
分词单元203,用于将所述待识别字符串、目标字符串分别进行分词,得到各待识别字符子串、各目标字符子串;
语义权重确定单元204,用于确定各待识别字符子串、各目标字符子串的语义权重;
语义编辑距离确定单元205,用于依据各待识别字符子串和各目标字符子串的语义权重,确定待识别字符串与目标字符串之间的语义编辑距离;
相似度确定单元206,用于依据所述语义编辑距离,确定所述待识别字符串与目标字符串之间的相似度;
后续处理单元207,用于依据所述相似度,对所述待识别字符串进行后续处理。
所述获取单元201获取的待识别字符串S包括由用户输入的公司名称、地址、商品名称、黑名单、问题名称或描述中的一种或多种。
如用户需要在某些服务网站输入收货地址、服务提供商户需要输入商品名称、部分用户可能需要设置一些黑名单。而所有的这些数据可能存在表示同一意义而不同表现的一串字符,且服务网站需要保存的数据量日益庞大,此时,系统需要对用户输入的数据进行识别,以便于归类、添加、替换等后续操作。
所述分词单元202先将所述获取的待识别字符串S按语义单元进行分词处理得到各具有语义的各待识别字符子串S={s1,s2,s3…,si}。此装置采用语法分析单元进行处理分词处理。
在所述语义权重确定单元204或本地数据库中,存在着一个语义权重表Wn,所述语义权重表是是预先依据数据库中保存的样本进行计算获得的,计算方法包括:
抽取一定数量的字符串样本,所述字符串样本可能为10000行以上的同类名单、地址等;对所述抽取的字符串样本进行去重操作,即去掉所述抽取的字符串样本中完全相同的字符串以使字符串样本不重复;对所述抽取的字符串样本进行分词,得到若干具有一定语义单元的样本子串,分词处理同步骤S102;最后根据逆向文件频率(term frequency–inverse document frequency,TF-IDF)词语普遍重要性的度量计算公式计算得出各样本子串的语义权重Wn={(w1,idf1),(w2,idf2),(w3,idf3)…,(wn,idfn)},其中所述|D|表示样本字符串总数,|{j:ti∈dj}|表示包含样本子串ti的行数,如果样本中不存在该样本子串,则会导致分母为零,因此一般情况下使用1+|{j:ti∈dj}|。如果该类别样本子串权重集合具有普遍性,则取一个类别名称保存该集合,如“W(companyName)”、“W(address)”等,下一次同样场景可直接调用对应权重集合。
所述语义权重确定单元204先依据各待识别字符子串查找所述语义权重表;然后从所述语义权重表中找出各待识别字符子串的对应的语义权重得到带语义权重的待识别字符子串Sw={(s1,sw1),(s2,sw2),(s3,sw3)…,(sm,swm)}。
所述查找单元203依据所述各待识别字符串内的待识别字符子串,查找目标字符串。先从所述待识别字符串中选择语义权重大于设定阈值的待识别字符子串;然后采用选择出的待识别字符子串检索目标字符串数据库,找出目标字符串T。
所述目标字符串T是保存于本地数据库中的正确的公司名称、地址、商品名称、黑名单、问题名称或描述中的一种或多种。
所述语义权重大于设定阈值的待识别字符子串是指语义权重大于一定阈值的一个或多个待识别字符子串,所述找出的目标字符串可以是一个或多且每个目标字符串中都包括所述选定的待识别字符子串。
在获得所述目标字符串T后再由所述分词单元202将所述目标字符串按语义单元进行分词,得到目标字符子串T={t1,t2,t3…,tn};然后再由所述语义权重确定单元204依据各目标字符子串查找所述语义权重表;然后从所述语义权重表中找出各目标字符子串的对应的语义权重得到带语义权重的目标字符子串Tw={(t1,tw1),(t2,tw2),(t3,tw3)…,(tn,twn)}。
所述语义编辑距离确定单元205依据各待识别字符子串和各目标字符子串的语义权重,确定待识别字符串与目标字符串之间的语义编辑距离,包括:
依据以下公式计算语义编辑距离:
当i=0且j=0时,edit(0,0)=0;
当i=0且j>0时,edit(0,j)=edit(0,j-1)+twj
当i>0且j=0时,edit(i,0)=edit(i-1,0)+swi
当i>0且j>0时,edit(i,j)=min(edit(i-1,j)+swi,edit(i,j-1)+twj,edit(i-1,j-1)+f(i,j));
其中i表示待识别字符子串个数,j表示目标字符子串个数;twj表示目标字符子串的tj语义权重,swi表示待识别字符子串si的语义权重;edit(i,j)表示待识别字符子串集合(s1,s2,s3…si)到目标字符子串集合(t1,t2,t3…tj)的语义编辑距离,当i和j分别为待识别字符串S和目标字符串T的所包含的所有子串数量时,edit(i,j)等于待识别字符串S与目标字符串T之间的语义编辑距离edit(S,T);f(i,j)表示第i个待识别字符子串si转换到第j个目标字符子串tj所产生的语义编辑距离,当si=tj,则f(i,j)=0;当si≠tj,则f(i,j)=MAX(swi,twj)。
所述相似度确定单元206依据所述语义编辑距离确定单元205获得的待识别字符串S与目标识别字符串T之间的语义编辑距离,确定所述待识别字符串与目标字符串之间的相似度。
相似度计算公式为:1-(edit(S,T)/(MAX(length(S),length(T))),其中edit(S,T)表示待识别字符串S与目标字符串T之间的语义编辑距离,length(S)表示待识别字符串S中所有待识别字符子串的语义权重之和,length(T)表示目标字符串T中所有目标字符子串的语义权重之和。
所述后续处理单元207依据所述相似度确定单元206确定的所述待识别字符串S与目标字符串T之间的相似度,对所述待识别字符串进行后续处理。
所述后续处理单元207在不同的应用场景执行不同的处理功能,如依据所述相似度结果,将所述待识别字符串进行归类、替换为符合相似度条件的目标字符串、设为黑名单等处理中的一种或多种。
本装置演示的示例与实施例一中的例1、例2相同。
需要说明的是,实施例一所提供方法的各步骤的执行主体均可以是同一设备,或者,该方法也由不同设备作为执行主体。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (16)

1.一种字符串处理方法,其特征在于,包括:
获取待识别字符串;
将所述待识别字符串进行分词,得到各待识别字符子串;
确定各待识别字符子串的语义权重;
依据各待识别字符子串,查找目标字符串,具体包括:
选择语义权重大于设定阈值的待识别字符子串,采用选择出的待识别字符子串检索目标字符串数据库,找出目标字符串;
将所述目标字符串进行分词,得到各目标字符子串;
确定各目标字符子串的语义权重;
依据各待识别字符子串和各目标字符子串的语义权重,确定待识别字符串与目标字符串之间的语义编辑距离;
依据所述语义编辑距离,确定所述待识别字符串与目标字符串之间的相似度;
根据所述相似度,对所述待识别字符串进行后续处理。
2.如权利要求1所述的方法,其特征在于,所述待识别字符串包括:由用户输入的公司名称、地址、商品名称、黑名单、问题名称或描述中的一种或多种;
所述目标字符串包括:保存于本地数据库中的正确的公司名称、地址、商品名称、黑名单、问题名称或描述中的一种或多种。
3.如权利要求1所述的方法,其特征在于,将所述待识别字符串进行分词,具体包括:
按语义单元对所述待识别字符串进行分词;
将所述目标字符串进行分词,具体包括:
按语义单元对所述目标字符串进行分词。
4.如权利要求1所述的方法,其特征在于,确定各待识别字符子串和各目标字符子串的语义权重,具体包括:
依据各待识别字符子串和各目标字符子串,分别查找语义权重表;
从所述语义权重表中找出各待识别字符子串和各目标字符子串对应的语义权重。
5.如权利要求4所述的方法,其特征在于,所述语义权重表是预先依据数据库中保存的样本进行计算获得的,包括:
预先抽取一定数量且不重复的字符串样本;
将所述一定数量的字符串样本进行分词,得到若干具有一定语义单元的样本子串;
根据逆向文件频率IDF词语普遍重要性的度量计算公式,计算各样本子串的语义权重。
6.如权利要求1-5任一项所述的方法,其特征在于,依据各待识别字符子串和各目标字符子串的语义权重,确定待识别字符串与目标字符串之间的语义编辑距离,具体包括:
依据以下公式计算语义编辑距离:
当i=0且j=0时,edit(0,0)=0;
当i=0且j>0时,edit(0,j)=edit(0,j-1)+twj
当i>0且j=0时,edit(i,0)=edit(i-1,0)+swi
当i>0且j>0时,edit(i,j)=min(edit(i-1,j)+swi,edit(i,j-1)+twj,edit(i-1,j-1)+f(i,j));
其中i表示待识别字符子串个数,j表示目标字符子串个数;twj表示目标字符子串tj的语义权重,swi表示待识别字符子串si的语义权重;edit(i,j)表示待识别字符子串集合(s1,s2,s3…si)到目标字符子串集合(t1,t2,t3…tj)的语义编辑距离,当i和j分别为待识别字符串S和目标字符串T的所包含的所有子串数量时,edit(i,j)等于待识别字符串S与目标字符串T之间的语义编辑距离edit(S,T);f(i,j)表示第i个待识别字符子串si转换到第j个目标字符子串tj所产生的语义编辑距离,当si=tj,则f(i,j)=0;当si≠tj,则f(i,j)=MAX(swi,twj)。
7.如权利要求6所述的方法,其特征在于,依据所述语义编辑距离,确定所述待识别字符串与目标字符串之间的相似度,具体包括:
依据字符串相似度计算公式计算待识别字符串S与目标字符串T之间的相似度;
相似度计算公式为:1-(edit(S,T)/(MAX(length(S),length(T))),其中edit(S,T)表示待识别字符串S与目标字符串T之间的语义编辑距离,length(S)表示待识别字符串S中所有待识别字符子串的语义权重之和,length(T)表示目标字符串T中所有目标字符子串的语义权重之和。
8.如权利要求7所述的方法,其特征在于,对所述待识别字符串进行后续处理,具体包括:
将所述待识别字符串进行归类、替换为符合相似度条件的目标字符串、设为黑名单中的一种或多种。
9.一种字符串处理装置,其特征在于,包括:
获取单元,用于获取待识别字符串;
查找单元,用于依据所述待识别字符串,查找目标字符串,具体包括:
选择语义权重大于设定阈值的待识别字符子串,采用选择出的待识别字符子串检索目标字符串数据库,找出目标字符串;
分词单元,用于将所述待识别字符串、目标字符串分别进行分词,得到各待识别字符子串、各目标字符子串;
语义权重确定单元,用于确定各待识别字符子串、各目标字符子串的语义权重;
编辑距离确定单元,用于依据各待识别字符子串和各目标字符子串的语义权重,确定待识别字符串与目标字符串之间的语义编辑距离;
相似度确定单元,用于依据所述语义编辑距离,确定所述待识别字符串与目标字符串之间的相似度;
后续处理单元,用于依据所述相似度,对所述待识别字符串进行后续处理。
10.如权利要求9所述的装置,其特征在于,所述待识别字符串包括:由用户输入的公司名称、地址、商品名称、黑名单、问题名称或描述中的一种或多种;
所述目标字符串包括:保存于本地数据库中的正确的公司名称、地址、商品名称、黑名单、问题名称或描述中的一种或多种。
11.如权利要求9所述的装置,其特征在于,所述分词单元对所述待识别字符串、目标字符串分别进行分词,具体包括:
按语义单元对所述待识别字符串、目标字符串进行分词。
12.如权利要求9所述的装置,其特征在于,所述语义权重确定单元,用于确定各待识别字符子串、各目标字符子串的语义权重,具体包括:
依据各待识别字符子串和各目标字符子串,分别查找语义权重表;
从所述语义权重表中找出各待识别字符子串和各目标字符子串对应的语义权重。
13.如权利要求12所述的装置,其特征在于,所述语义权重表是预先依据数据库中保存的样本进行计算获得的,包括:
预先抽取一定数量且不重复的字符串样本;
将所述一定数量的字符串样本进行分词,得到若干具有一定语义单元的样本子串;
根据逆向文件频率IDF词语普遍重要性的度量计算公式,计算各样本子串的语义权重。
14.如权利要求9-13任一项所述的装置,其特征在于,所述编辑距离确定单元,用于依据各待识别字符子串和各目标字符子串的语义权重,确定待识别字符串与目标字符串之间的语义编辑距离,具体包括:
依据以下公式计算语义编辑距离:
当i=0且j=0时,edit(0,0)=0;
当i=0且j>0时,edit(0,j)=edit(0,j-1)+twj
当i>0且j=0时,edit(i,0)=edit(i-1,0)+swi
当i>0且j>0时,edit(i,j)=min(edit(i-1,j)+swi,edit(i,j-1)+twj,edit(i-1,j-1)+f(i,j));
其中i表示待识别字符子串个数,j表示目标字符子串个数;twj表示目标字符子串tj的语义权重,swi表示待识别字符子串si的语义权重;edit(i,j)表示待识别字符子串集合(s1,s2,s3…si)到目标字符子串集合(t1,t2,t3…tj)的语义编辑距离,当i和j分别为待识别字符串S和目标字符串T的所包含的所有子串数量时,edit(i,j)等于待识别字符串S与目标字符串T之间的语义编辑距离edit(S,T);f(i,j)表示第i个待识别字符子串si转换到第j个目标字符子串tj所产生的语义编辑距离,当si=tj,则f(i,j)=0;当si≠tj,则f(i,j)=MAX(swi,twj)。
15.如权利要求14所述的装置,其特征在于,所述相似度确定单元,用于依据所述语义编辑距离,确定所述待识别字符串与目标字符串之间的相似度,具体包括:
依据字符串相似度计算公式计算待识别字符串S与目标字符串T之间的相似度;
相似度计算公式为:1-(edit(S,T)/(MAX(length(S),length(T))),其中edit(S,T)表示待识别字符串S与目标字符串T之间的语义编辑距离,length(S)表示待识别字符串S中所有待识别字符子串的语义权重之和,length(T)表示目标字符串T中所有目标字符子串的语义权重之和。
16.如权利要求15所述的装置,其特征在于,所述后续处理单元,用于依据所述相似度,对所述待识别字符串进行后续处理,具体包括:
将所述待识别字符串进行归类、替换为符合相似度条件的目标字符串、设为黑名单中的一种或多种。
CN201510103200.4A 2015-03-09 2015-03-09 一种字符串处理方法及装置 Active CN106033416B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510103200.4A CN106033416B (zh) 2015-03-09 2015-03-09 一种字符串处理方法及装置
CN202010065546.0A CN111324784B (zh) 2015-03-09 2015-03-09 一种字符串处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510103200.4A CN106033416B (zh) 2015-03-09 2015-03-09 一种字符串处理方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202010065546.0A Division CN111324784B (zh) 2015-03-09 2015-03-09 一种字符串处理方法及装置

Publications (2)

Publication Number Publication Date
CN106033416A CN106033416A (zh) 2016-10-19
CN106033416B true CN106033416B (zh) 2019-12-24

Family

ID=57149686

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202010065546.0A Active CN111324784B (zh) 2015-03-09 2015-03-09 一种字符串处理方法及装置
CN201510103200.4A Active CN106033416B (zh) 2015-03-09 2015-03-09 一种字符串处理方法及装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202010065546.0A Active CN111324784B (zh) 2015-03-09 2015-03-09 一种字符串处理方法及装置

Country Status (1)

Country Link
CN (2) CN111324784B (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106776863A (zh) * 2016-11-28 2017-05-31 合网络技术(北京)有限公司 文本相关度的确定方法、查询结果的推送方法及装置
CN106650803B (zh) * 2016-12-09 2019-06-18 北京锐安科技有限公司 一种计算字符串间相似度的方法及装置
CN108255836B (zh) * 2016-12-28 2020-12-25 普天信息技术有限公司 一种字符串匹配方法及装置
CN106980870B (zh) * 2016-12-30 2020-07-28 中国银联股份有限公司 短文本之间的文本匹配度计算方法
CN108269112A (zh) * 2016-12-30 2018-07-10 北京国双科技有限公司 广告创意的更新方法及装置
CN106598954A (zh) * 2017-01-05 2017-04-26 北京工商大学 基于频繁子树的社交网络马甲识别模型的方法
CN106909609B (zh) * 2017-01-09 2020-08-04 北方工业大学 确定相似字符串的方法、文件查重的方法及系统
CN108509409A (zh) * 2017-02-27 2018-09-07 芋头科技(杭州)有限公司 一种自动生成语义相近句子样本的方法
CN107220639A (zh) * 2017-04-14 2017-09-29 北京捷通华声科技股份有限公司 Ocr识别结果的纠正方法和装置
CN107862062A (zh) * 2017-11-15 2018-03-30 中国银行股份有限公司 一种信息查询方法、装置及电子设备
CN108363686A (zh) * 2018-01-12 2018-08-03 中国平安人寿保险股份有限公司 一种字符串分词方法、装置、终端设备及存储介质
CN109165326A (zh) * 2018-08-16 2019-01-08 蜜小蜂智慧(北京)科技有限公司 一种字符串匹配方法及装置
CN109271481A (zh) * 2018-08-31 2019-01-25 国网河北省电力有限公司沧州供电分公司 一种电力诉求信息的分类方法、系统及终端设备
CN109359274B (zh) * 2018-09-14 2023-05-02 蚂蚁金服(杭州)网络技术有限公司 一种对批量生成的字符串进行识别的方法、装置及设备
CN111090787A (zh) * 2018-10-23 2020-05-01 阿里巴巴集团控股有限公司 一种消息处理方法、设备、系统及存储介质
CN109657210B (zh) * 2018-11-13 2023-10-10 平安科技(深圳)有限公司 基于语义解析的文本准确率计算方法、装置、计算机设备
CN111382322B (zh) * 2018-12-27 2023-06-13 北京猎户星空科技有限公司 字符串相似度的确定方法和装置
CN111428491B (zh) * 2019-01-09 2024-03-22 阿里巴巴集团控股有限公司 一种字符串流的归并方法、装置及电子设备
SG10201904554TA (en) 2019-05-21 2019-09-27 Alibaba Group Holding Ltd Methods and devices for quantifying text similarity
CN110348021B (zh) * 2019-07-17 2021-05-18 湖北亿咖通科技有限公司 基于命名实体模型的字符串识别方法、电子设备、存储介质
CN110399615B (zh) * 2019-07-29 2023-08-18 中国工商银行股份有限公司 交易风险监控方法及装置
CN110688995B (zh) * 2019-09-19 2022-11-15 浙江善政科技有限公司 地图查询的处理方法,计算机可读存储介质和移动终端
CN110717483B (zh) * 2019-09-19 2023-04-18 浙江善政科技有限公司 网络图像识别处理方法,计算机可读存储介质和移动终端
CN111221943B (zh) * 2020-01-13 2023-08-08 口口相传(北京)网络技术有限公司 查询结果匹配度计算方法及装置
CN111461186B (zh) * 2020-03-20 2022-11-04 支付宝(杭州)信息技术有限公司 数据相似度的处理方法、装置、存储介质和计算机设备
CN111626040A (zh) * 2020-05-28 2020-09-04 数网金融有限公司 一种确定句子相似度的方法、相关设备及可读存储介质
CN112100381B (zh) * 2020-09-22 2022-05-17 福建天晴在线互动科技有限公司 一种文本相似度进行量化的方法及其系统
CN116029284B (zh) * 2023-03-27 2023-07-21 上海蜜度信息技术有限公司 中文子串提取方法、系统、存储介质及电子设备
CN116502611B (zh) * 2023-06-28 2023-12-05 深圳魔视智能科技有限公司 标注方法、标注装置、设备及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102289522A (zh) * 2011-09-19 2011-12-21 北京金和软件股份有限公司 一种对于文本智能分类的方法
CN103399907A (zh) * 2013-07-31 2013-11-20 深圳市华傲数据技术有限公司 一种基于编辑距离计算中文字符串相似度的方法及装置
CN103838789A (zh) * 2012-11-27 2014-06-04 大连灵动科技发展有限公司 一种文本相似度计算方法
CN104008166A (zh) * 2014-05-30 2014-08-27 华东师范大学 一种基于形态和语义相似度的对话短文本聚类方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040002849A1 (en) * 2002-06-28 2004-01-01 Ming Zhou System and method for automatic retrieval of example sentences based upon weighted editing distance
KR101126406B1 (ko) * 2008-11-27 2012-04-20 엔에이치엔(주) 유사어 결정 방법 및 시스템
CN101702171A (zh) * 2009-11-19 2010-05-05 新蛋信息技术(西安)有限公司 一种大量字符串的近似匹配方法
CN102184169B (zh) * 2011-04-20 2013-06-19 北京百度网讯科技有限公司 用于确定字符串信息间相似度信息的方法、装置和设备
US9031967B2 (en) * 2012-02-27 2015-05-12 Truecar, Inc. Natural language processing system, method and computer program product useful for automotive data mapping
US9535899B2 (en) * 2013-02-20 2017-01-03 International Business Machines Corporation Automatic semantic rating and abstraction of literature

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102289522A (zh) * 2011-09-19 2011-12-21 北京金和软件股份有限公司 一种对于文本智能分类的方法
CN103838789A (zh) * 2012-11-27 2014-06-04 大连灵动科技发展有限公司 一种文本相似度计算方法
CN103399907A (zh) * 2013-07-31 2013-11-20 深圳市华傲数据技术有限公司 一种基于编辑距离计算中文字符串相似度的方法及装置
CN104008166A (zh) * 2014-05-30 2014-08-27 华东师范大学 一种基于形态和语义相似度的对话短文本聚类方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于改进编辑距离的字符串相似度求解算法;姜华等;《计算机工程》;20140131;第40卷(第1期);第222-227页 *

Also Published As

Publication number Publication date
CN111324784B (zh) 2023-05-16
CN111324784A (zh) 2020-06-23
CN106033416A (zh) 2016-10-19

Similar Documents

Publication Publication Date Title
CN106033416B (zh) 一种字符串处理方法及装置
WO2018157805A1 (zh) 一种自动问答处理方法及自动问答系统
CN109460455B (zh) 一种文本检测方法及装置
WO2021174717A1 (zh) 文本意图识别方法、装置、计算机设备和存储介质
CN107463548B (zh) 短语挖掘方法及装置
CN109271489B (zh) 一种文本检测方法及装置
US9977995B2 (en) Image clustering method, image clustering system, and image clustering server
CN110866091B (zh) 一种数据检索方法及装置
WO2020114100A1 (zh) 一种信息处理方法、装置和计算机存储介质
CN112784062B (zh) 一种成语知识图谱构建方法及装置
CN110134777B (zh) 问题去重方法、装置、电子设备和计算机可读存储介质
CN110858217A (zh) 微博敏感话题的检测方法、装置及可读存储介质
CN110532569B (zh) 一种基于中文分词的数据碰撞方法及系统
Leonandya et al. A semi-supervised algorithm for Indonesian named entity recognition
US9020212B2 (en) Automatically determining a name of a person appearing in an image
CN114398315A (zh) 一种数据存储方法、系统、存储介质及电子设备
CN113761137B (zh) 一种提取地址信息的方法及装置
CN111160445B (zh) 投标文件相似度计算方法及装置
CN117216239A (zh) 文本去重方法、装置、计算机设备及存储介质
CN115858776B (zh) 一种变体文本分类识别方法、系统、存储介质和电子设备
CN112148841A (zh) 一种对象分类以及分类模型构建方法和装置
CN110888977B (zh) 文本分类方法、装置、计算机设备和存储介质
CN105512145A (zh) 信息分类方法及装置
CN106776654B (zh) 一种数据搜索方法及装置
US11726972B2 (en) Directed data indexing based on conceptual relevance

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201012

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20201012

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Patentee after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Patentee before: Alibaba Group Holding Ltd.

TR01 Transfer of patent right