实体依存关系的确定方法及装置与流程

文档序号:18526064发布日期:2019-08-24 10:14阅读:173来源:国知局
实体依存关系的确定方法及装置与流程

本发明实施例涉及互联网技术领域,尤其涉及实体依存关系的确定方法及装置。



背景技术:

现有技术中存在一种对从一段文本中识别出的命名实体(也叫实体,ner)进行显示的方法,在该方法中单独显示每个命名实体。例如,对于“我去朝阳区小营路8号的七天酒店”这一文本,该文本中就存在“朝阳区小营路8号”、“七天酒店”这两个实体,会在用户终端中分别显示这两个实体对应的卡片,在一种可实现的方式中,为了改善用户体验,一般会将有依存关系的实体在一个卡片中显示。

实现本发明实施例的过程中,发明人发现现有技术中对于内容较为复杂的文本,按照现有的文本识别技术往往无法准确地确定出文本中各实体之间的依存关系。例如:内容为“你去a地点的肯德基,我去b地点的麦当劳。”这一文本,从该文本中,能够识别出“a地点、肯德基、b地点、麦当劳”这四个实体,对这四个实体进行依存关系分析,就有可能会得到a地点是描述麦当劳的,b地点是描述肯德基的这一结果,而实际上,a地点是描述肯德基的,b地点是描述麦当劳的,这样在用户进行卡片选定的后续操作时,不能获取较准确的推荐。



技术实现要素:

鉴于上述问题,本发明实施例的目的是提供一种实体依存关系的确定方法及装置,能够准确地确定出文本中各实体之间的依存关系。

第一方面,本发明实施例提供一种实体依存关系的确定方法,所述方法包括:将待识别文本拆分成多个子文本;识别所述多个子文本中每个子文本中的实体;依据所述每个子文本中的实体和/或相邻子文本中的实体的依存关系,确定所述待识别文本中实体之间的依存关系。

第二方面,本发明实施例提供一种实体依存关系的确定装置,所述装置包括:拆分模块,被配置为将待识别文本拆分成多个子文本;识别模块,被配置为识别所述多个子文本中每个子文本中的实体;确定模块,被配置为依据所述每个子文本中的实体和/或相邻子文本中的实体的依存关系,确定所述待识别文本中实体之间的依存关系。

第三方面,本发明实施例提供一种电子设备,所述电子设备包括:至少一个处理器;以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述一个或多个技术方案中的方法。

第四方面,本发明实施例提供一种计算机可读存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述一个或多个技术方案中的方法。

本发明实施例提供的实体依存关系的确定方法及装置,在获取待识别文本后,首先,将待识别文本拆分为多个子文本;然后,识别多个子文本中每个子文本中的实体;最后,依据每个子文本中的实体和/或相邻子文本中的实体的依存关系,确定待识别文本中实体之间的依存关系。可见,相比直接确定待识别文本中的所有实体之间的依存关系,采用本发明实施例中的实体依存关系的确定方法及装置,在确定各实体之间的依存关系之前,先将待识别文本拆分为多个子文本,再依据每个子文本中的实体和/或相邻子文本中的实体的依存关系,确定待识别文本中实体之间的依存关系,能够避免将两个子文本中无关的实体联系在一起,提高确定文本中各实体之间的依存关系的准确性。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1为本发明实施例中的实体依存关系的确定方法的流程示意图一;

图2为本发明实施例中的待识别文本被拆分成多个子文本后的示意图;

图3为本发明实施例中的实体依存关系的确定方法的流程示意图二;

图4为本发明实施例中的根据标点符号拆分待识别文本的示意图;

图5为本发明实施例中的根据预设字数拆分待识别文本的示意图一;

图6为本发明实施例中的根据预设字数拆分待识别文本的示意图二;

图7为本发明实施例中的先根据标点符号再根据预设字数拆分待识别文本的示意图;

图8为本发明实施例中的先根据预设字数再根据标点符号拆分待识别文本的示意图;

图9为本发明实施例中的确定待识别文本中实体依存关系的示意图一;

图10为本发明实施例中的确定待识别文本中实体依存关系的示意图二;

图11为本发明实施例中的合并显示具有依存关系的实体的示意图;

图12为本发明实施例中的实体依存关系的确定装置的结构示意图;

图13为本发明实施例中的电子设备的结构示意图。

具体实施方式

下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。

本发明实施例提供一种实体依存关系的确定方法,图1为本发明实施例中的实体依存关系的确定方法的流程示意图一,参见图1所示,该方法可以包括:

s101:将待识别文本拆分成多个子文本。

在实际应用中,待识别文本可以是微信等即时通讯软件的聊天界面中的文本,也可以是手机等终端设备的记事本中的文本,还可以是其它具有文字记录功能的应用中的文本,在此不做限定。

在这里,待识别文本可以是指一段内容较为复杂的文本,在该文本中,存在有多个实体,且这多个实体之间的关系错综复杂。例如:“你去五道口的肯德基,我去西二旗的麦当劳”这一文本,在该文本中,存在有“五道口,肯德基,西二旗,麦当劳”这四个实体,并且这四个实体之间,五道口是描述肯德基的,西二旗是描述麦当劳的,肯德基与麦当劳是并列的。

由于待识别文本中的内容较为复杂,需要将待识别文本拆分成多个子文本。具体的,首先,确定出拆分位置,该拆分位置可以是待识别文本中的任何一个位置,在该拆分位置的一侧是一个子文本,在该拆分位置的另一侧是另一个子文本;然后,根据拆分位置,将待识别文本拆分成多个子文本。

需要说明的是:上述拆分位置可以是一个,也可以是多个。当拆分位置为一个时,待识别文本就被拆分成两个子文本,当拆分位置为n个时,待识别文本就被拆分成n+1个子文本。对于拆分位置的个数,可以根据待识别文本的实际情况进行确定,在此不做限定。

示例性的,图2为本发明实施例中的待识别文本被拆分成多个子文本后的示意图,参见图2所示,待识别文本201为一段内容较为复杂的文本,首先,确定出拆分位置202,然后,根据拆分位置202,将待识别文本201拆分成子文本203和子文本204这两个子文本。

s102:识别多个子文本中每个子文本中的实体。

具体的,可以采用命名实体识别模型来识别每个子文本中的实体。在这里,命名实体识别模型是现有的训练好的用来识别文本中的实体的模型,故对于命名实体识别模型的具体训练过程,在此不再赘述。

在这里,以识别一个子文本中的实体为例,来说明识别每个子文本中的实体的过程以及识别结果。假设某个子文本为“我去朝阳区小营路8号的七天酒店”,采用命名实体识别模型,就能够从该文本中识别出“朝阳区小营路8号”和“七天酒店”这两个实体。

s103:依据每个子文本中的实体和/或相邻子文本中的实体的依存关系,确定待识别文本中实体之间的依存关系。

在这里,可以根据每个子文本的内容的完整度,采用但不限于以下两种方式,确定待识别文本中各实体之间的依存关系。

第一种方式:若每个子文本的内容完整,可以依据每个子文本中的实体的依存关系,确定待识别文本中各实体之间的依存关系。

示例性的,对于“你去五道口的肯德基,我去西二旗的麦当劳”这一待识别文本,将该待识别文本拆分成“你去五道口的肯德基”、“我去西二旗的麦当劳”这两个子文本。通过分析,这两个子文本的内容都是完整的。从“你去五道口的肯德基”这一子文本中识别出五道口是描述肯德基的,从“我去西二旗的麦当劳”这一子文本中识别出西二旗是描述麦当劳的,故从待识别文本中识别出的各实体之间的依存关系就是五道口是描述肯德基的,西二旗是描述麦当劳的。

第二种方式:若每个子文本中存在有内容不完整的子文本,可以依据每个子文本中的实体和相邻子文本中的实体的依存关系,确定待识别文本中实体之间的依存关系。

示例性的,对于“百度网盘的链接是https://pan.baidu.com/s/pw51qoa”这一待识别文本,将该待识别文本拆分成“百度网盘的链接是”和“https://pan.baidu.com/s/pw51qoa”这两个子文本。通过分析,“百度网盘的链接是”这个子文本的内容是不完整的。从“百度网盘的链接是”这一子文本中识别出“百度网盘”这一个实体,从“https://pan.baidu.com/s/pw51qoa”这一子文本中识别出“https://pan.baidu.com/s/pw51qoa”这一个实体,根据“百度网盘”和“https://pan.baidu.com/s/pw51qoa”这两个实体,识别出https://pan.baidu.com/s/pw51qoa是描述百度网盘的。

在上述两个示例中,对于分析子文本中的内容是否完整,可以通过子文本中的语义确定该子文本中的内容是否完整。若通过子文本能够获得一个完整的意思,则确定该子文本的内容完整,若通过子文本不能够获得一个完整的意思,则确定该子文本的内容不完整。当然,也可以通过其它方式确定子文本中的内容是否完整,在此不做限定。

至此,就确定出了待识别文本中各实体之间的依存关系。

由上述内容可知,本发明实施例提供的实体依存关系的确定方法,在获取待识别文本后,首先,将待识别文本拆分为多个子文本;然后,识别多个子文本中每个子文本中的实体;最后,依据每个子文本中的实体和/或相邻子文本中的实体的依存关系,确定待识别文本中实体之间的依存关系。可见,相比直接确定待识别文本中的所有实体之间的依存关系,采用本发明实施例中的实体依存关系的确定方法,在确定各实体之间的依存关系之前,先将待识别文本拆分为多个子文本,再依据每个子文本中的实体和/或相邻子文本中的实体的依存关系,确定待识别文本中实体之间的依存关系,能够避免将两个子文本中无关的实体联系在一起,提高确定文本中各实体之间的依存关系的准确性。

基于前述实施例,作为对图1所示方法的细化和扩展,本发明实施例还提供了一种实体依存关系的确定方法。图3为本发明实施例中的实体依存关系的确定方法的流程示意图二,参见图3所示,该方法可以包括:

s301:将待识别文本拆分成多个子文本。

在具体实施过程中,可以根据标点符号、预设字数等将待识别文本拆分成多个子文本。具体的,可以包括但不限于以下三种方式:

第一种方式:仅根据标点符号,将待识别文本拆分成多个子文本。

具体来说,可以包括以下两个步骤:

步骤一:从待识别文本中识别出标点符号。

步骤二:以标点符号为间隔,将待识别文本拆分成多个子文本。

示例性的,图4为本发明实施例中的根据标点符号拆分待识别文本的示意图,参见图4所示,对于待识别文本400“你去五道口的肯德基,我去西二旗的麦当劳”,从待识别文本400中识别出肯德基与我之间的标点符号401“,”,以标点符号401为间隔,将待识别文本400拆分成子文本402“你去五道口的肯德基”和子文本403“我去西二旗的麦当劳”。

第二种方式:仅根据预设字数,将待识别文本拆分成多个子文本。

具体来说,就是按照第二预设字数,将待识别文本拆分成多个子文本。

在这里,第二预设字数为一个固定的字数,例如:第二预设字数为10字。第二预设字数为10字即表示:在待识别文本中,以每10个字为间隔,将该待识别文本拆分成多个子文本,每个子文本的字数为10个字。

示例性的,图5为本发明实施例中的根据预设字数拆分待识别文本的示意图一,参见图5所示,对于待识别文本500“我今天下午两点要去朝阳区小营路8号的七天酒店”,假设第二预设字数为9个字,待识别文本500被拆分成子文本501“我今天下午两点要去”、子文本502“朝阳区小营路8号的”和子文本503“七天酒店”。

需要说明的是:待识别文本的字数不一定是第二预设字数的整数倍,所以,多个子文本中的最后一个子文本的字数不一定是第二预设字数,但是,除最后一个子文本外,其它子文本的字数都是第二预设字数。

通过上述第二种方式将待识别拆分成多个子文本后,可能会存在一个实体被拆分成两个部分,这两个部分分别处于前后两个相邻的子文本中的情况。这样就会导致被拆分的实体无法从待识别文本中识别出来,进而导致不能准确地确定待识别文本中各实体之间的依存关系。为了避免出现上述情况,提高实体依存关系确定地准确性,在按照第二预设字数,将待识别文本拆分成多个子文本后,可以继续执行以下两个步骤:

步骤a:判断多个子文本中相邻的两个子文本之间是否存在被拆分的实体,若是,则执行步骤b,若否,则维持现状。

在具体实施过程中,对于判断多个子文本中相邻的两个子文本之间是否存在被拆分的实体,一种判断方式可以是:在执行步骤s301之前,即在将待识别文本拆分成多个子文本之前,先识别出待识别文本中所有的实体;再将待识别文本拆分成多个子文本;接着,识别每个子文本中的实体;最后,将待识别文本中所有的实体与每个子文本中的实体进行对比,若从待识别文本中识别出的实体与从多个子文本中识别出的实体没有对应上,或者从待识别文本中识别出的实体的个数大于从多个子文本中识别出的实体的个数,则确定多个子文本中相邻的两个子文本之间存在被拆分的实体,反之,则确定多个子文本中相邻的两个子文本之间不存在被拆分的实体。

例如:对于“我要去朝阳区小营路8号的七天酒店”这一待识别文本,首先,识别出该待识别文本中所有的实体,即“朝阳区小营路8号”、“七天酒店”这两个实体;然后,将该待识别文本拆分成“我要去朝阳区小营”、“路8号的七天酒店”这两个子文本,为了判断上述两个子文本之间是否存在被拆分的实体,接着,识别上述两个子文本中的实体,得到“七天酒店”这一个实体;最后,通过将上述待识别文本中的实体与上述两个子文本中的实体进行对比,可以发现,上述待识别文本中的实体的个数大于上述两个子文本中的实体的个数,那么,则确定上述两个子文本中存在被拆分的实体,并且通过对比可知,被拆分的实体为“朝阳区小营路8号”。

当然,对于判断多个子文本中相邻的两个子文本之间是否存在被拆分的实体,还有一种判断方式可以是:对于相邻的前后两个子文本,即前子文本和后子文本,首先,获取前子文本中末尾的几个文字,以及获取后子文本中开头的几个文字;接着,将前子文本中末尾的几个文字与后子文本中开头的几个文字拼接在一起;最后,判断拼接后的文字中是否存在一个实体,若是,则确定前子文本与后子文本之间存在被拆分的实体,若否,则确定前子文本与后子文本之间不存在被拆分的实体。

例如:对于“我要去朝阳区小营路8号的七天酒店”这一待识别文本,该待识别文本拆分成前子文本“我要去朝阳区小营”和后子文本“路8号的七天酒店”。首先,获取上述前子文本中末尾的5个文字“朝阳区小营”,以及获取后子文本中开头的4个文字“路8号的”;然后,将“朝阳区小营”与“路8号的”拼接,得到“朝阳区小营路8号的”;最后,判断出“朝阳区小营路8号的”中存在一个实体,即“朝阳区小营路8号”,则确定“我要去朝阳区小营”与“路8号的七天酒店”之间存在被拆分的实体。

在此需要说明的是,对于获取前子文本中末尾的文字的个数,以及获取后子文本中开头的文字的个数,在这里不做具体限定。并且,若在一次判断过程中没有判断出拼接后的文字中存在实体,可以调整获取的前子文本中末尾的文字的个数,和/或调整获取的后子文本中开头的文字的个数,再判断重新拼接后的文字中是否存在实体,如此,能够避免前子文本与后子文本之间实际存在被拆分的实体,而因为获取的文字个数错误而导致没有判断出存在实体的情况。

另外还需要说明的是,上述两种判断方式仅为判断多个子文本中相邻的两个子文本之间是否存在被拆分的实体中的两种具体的方式,当然,还存在其它的判断方式判断多个子文本中相邻的两个子文本之间是否存在被拆分的实体,在此不做限定。

步骤b:将被拆分的实体划入相邻的两个子文本中的一个子文本。

示例性的,图6为本发明实施例中的根据预设字数拆分待识别文本的示意图二,参见图6所示,假设待识别文本600为“我今天下午两点要去朝阳区小营路8号的七天酒店”,第二预设字数为15字。按照第二预设字数,待识别文本600被拆分成子文本601“我今天下午两点要去朝阳区小营路”、子文本602“8号的七天酒店”。通过判断可知,子文本601与子文本602之间存在被拆分的实体603“朝阳区小营路8号”,那么,就将实体603划入子文本601或子文本602中,若将实体603划入子文本601中,就得到子文本604“我今天下午两点要去朝阳区小营路8号”和子文本605“的七天酒店”,若将实体603划入子文本602中,就得到子文本606“我今天下午两点要去”和子文本607“朝阳区小营路8号的七天酒店”。

对于将上述被拆分的实体划入上述相邻的两个子文本中前面的子文本还是后面的子文本,可以根据被拆分的实体的两个部分的字数多少确定,若这两个部分中前半部分的字数少于后半部分的字数,则将该被拆分的实体划入上述后面的子文本中,若这两个部分中前半部分的字数多于后半部分的字数,则将该被拆分的实体划入上述前面的子文本中,若这两个部分中前半部分的字数多等于后半部分的字数,则可以将该被拆分的实体划入上述前面的子文本中,也可以将该被拆分的实体划入上述后面的子文本中。当然,还可以根据其它条件确定将上述被拆分的实体划入上述相邻的两个子文本中前面的子文本还是后面的子文本,在此不做限定。

在这里,通过上述第一种方式将待识别文本拆分成多个子文本,可能会导致某些子文本中无实体,而继续识别无实体的子文本中的实体,会降低实体依存关系确定的效率。例如:对于待识别文本a00“明天下午两点去五道口电影院看海王,记得哦”,通过上述第一种方式拆分成子文本a10“明天下午两点去五道口电影院看海王”和子文本a20“记得哦”,而子文本a20中并无实体,再去识别子文本a20中的实体,会降低实体依存关系确定的效率。

再有,通过上述第二种方式将待识别文本拆分成多个子文本,可能会导致某些子文本中的意思并不完整,会使实体依存关系判断错误,进而影响确定实体依存关系的准确性。例如:对于待识别文本b00“我今天下午要去五道口的肯德基而不去西二旗的麦当劳”,通过上述第二种方式拆分成子文本b10“我今天下午要去”、子文本b20“五道口的肯德基而不去”和子文本b30“西二旗的麦当劳”,而对于子文本b10,仅能够识别出实体b11“今天下午”,并不能够知道今天下午要做什么,而从子文本b20中能够识别出实体b21“五道口”和实体b22“肯德基”,以及从子文本b30中能够识别出实体b31“西二旗”和实体b32“麦当劳”,如此就会得到两种结果,一种是今天下午去肯德基,另一种是今天下午去麦当劳,而上述另一种结果并不是待识别文本中真实的意思,会导致实体依存关系确定错误。

为了解决第一种方式和第二种方式中存在的问题,还提出了第三种方式。

第三种方式:根据标点符号和预设字数,将待识别文本拆分成多个子文本。

在这里,根据使用标点符号和预设字数的先后顺序,可以从以下两个方面将待识别文本拆分成多个子文本。

第一方面:先根据标点符号将待识别文本拆分成多个子文本,再根据预设字数调整每个子文本中内容。

在具体实施过程中,可以包括以下两个步骤:

步骤一:从待识别文本中识别出标点符号。

步骤二:以标点符号为间隔,将待识别文本拆分成多个子文本。

步骤三:确定多个子文本中每个子文本的字数。

步骤四:判断多个子文本中是否存在字数小于第一预设字数的子文本,若是,则执行步骤五,若否,则维持现状。

步骤五:将字数小于第一预设字数的子文本并入与其相邻的一个子文本中。

其中,上述步骤一和上述步骤二与第一种方式中的步骤一和步骤二相同,在此不再赘述。

下面主要对步骤三、步骤四和步骤五进行说明。

一般的,子文本中的字数越少,子文本中存在有实体或能够表达出一个完整的意思的概率就越低。在确定了每个子文本中的字数后,判断多个子文本中是否存在字数小于第一预设字数的子文本,在这里,第一预设字数为一个固定的字数,可以根据实际情况进行设置,在此不做限定。在实际应用中,第一预设字数不宜过大,可以是1-5中任意一个正整数。若存在,则将该子文本并入与其相邻的子文本中,如此,能够减少未识别出实体的次数,进而提高实体依存关系确定的效率。

示例性的,图7为本发明实施例中的先根据标点符号再根据预设字数拆分待识别文本的示意图,参见图7所示,假设待识别文本700为“你去五道口的肯德基,我去西二旗的麦当劳,记得哦”,第一预设字数为5个字。通过上述步骤一和上述步骤二,待识别文本700被拆分成子文本701“你去五道口的肯德基”、子文本702“我去西二旗的麦当劳”和子文本703“记得哦”。首先,确定子文本701中有9个字,子文本702中有9个字,子文本703中有3个字;然后,将子文本701、子文本702和子文本703中的字数与第一预设字数进行对比,发现子文本703中的3个字少于第一预设字数5个字;最后,将子文本703并入子文本702中,最终的到子文本704“你去五道口的肯德基”和子文本705“我去西二旗的麦当劳,记得哦”。

需要说明的是:在确定出字数小于第一预设字数的子文本后,是将该子文本并入与其相邻的前面的子文本中,还是并入与其相邻的后面的子文本中,可以根据该子文本和与其相邻的子文本之间的标点符号的类型确定,例如:若该子文本和与其相邻的前面的子文本之间的标点符号是句号,则代表与该子文本相邻的前面的子文本的意思已经表达完,故将该子文本并入与其相邻的后面的子文本中。再例如:若该子文本和与其相邻的后面的子文本之间的标点符号是句号,则代表在该子文本的文末已经表达完一个完整的意思,故将该子文本并入与其相邻的前面的子文本中。当然,还可以根据其它因素确定是将该子文本并入与其相邻的前面的子文本中,还是并入与其相邻的后面的子文本中,在此不做限定。

第二方面:先根据预设字数将待识别文本拆分成多个子文本,再根据标点符号调整每个子文本中内容。

在具体实施过程中,可以包括以下五个步骤:

步骤一:按照第二预设字数,将待识别文本拆分成多个子文本。

步骤二:从多个子文本中,确定出其中有标点符号的目标子文本。

步骤三:获取目标子文本中的标点符号与目标子文本的开头之间的第一字数,以及目标子文本中的标点符号与目标子文本的末尾之间的第二字数,并判断第一字数与第二字数的大小,若第一字数大于第二字数,则执行步骤四,若第一字数小于第二字数,则执行步骤五。

步骤四:将目标子文本中标点符号后的文本划入目标子文本的下一个子文本。

步骤五:将目标子文本中标点符号前的文本划入目标子文本的上一个子文本。

其中,上述步骤一的具体实施过程与上述第二种方式相同,在此不再赘述。

下面主要对步骤二、步骤三、步骤四和步骤五进行说明。

一般的,若子文本中存在有标点符号,该子文本中的部分内容就有可能是该子文本的前一个子文本或该子文本的后一个子文本中的内容。那么,通过对比其中有标点符号的目标子文本中标点符号与目标子文本开头之间的第一字数和该标点符号与目标子文本末尾之间的第二字数的大小,将字数小的内容划入对应的子文本中,能够最大化的使每个子文本中的内容保持完整,进而提高实体依存关系确定的准确性。在这里,第一字数是指目标子文本中标点符号与目标子文本的开头之间的字数的多少,第二字数是指目标子文本中标点符号与目标子文本的末尾之间的字数的多少。

示例性的,图8为本发明实施例中的先根据预设字数再根据标点符号拆分待识别文本的示意图,参见图8所示,假设待识别文本800为“你明天晚上六点半去五道口电影院开会,要带上会议资料和笔记本电脑”,第二预设字数为15个字,通过上述步骤一,待识别文本800被拆分成子文本801“你明天晚上六点半去五道口电影院”和子文本802“开会,要带上会议资料和笔记本电脑”。在子文本802中存在有标点符号803“,”,标点符号803与子文本802的开头之间有2个字,标点符号803与子文本802的末尾之间有13个字,很明显,2个字少于13个字,即标点符号803与子文本802的开头之间的字数少于标点符号803与子文本802的末尾之间的字数,那么,就将标点符号803与子文本802的开头之间的字划入子文本801中,最终得到子文本804“你明天晚上六点半去五道口电影院开会”和子文本805“要带上会议资料和笔记本电脑”。

在此需要说明的是:若目标子文本中标点符号与目标子文本的开头之间的字数和目标子文本中标点符号与目标子文本的末尾之间的字数相同,若目标子文本与其前面的子文本之间存在被拆分的实体,那么就将目标子文本中标点符号与目标子文本的开头之间的字划入其前面的子文本中;若目标子文本与其后面的子文本之间存在被拆分的实体,那么就将目标子文本中标点符号与目标子文本的末尾之间的字划入其后面的子文本中;若目标子文本与其前面的子文本之间不存在被拆分的实体,与其后面的子文本之间也不存在被拆分的实体,那么可以将目标子文本中标点符号与目标子文本的开头之间的字划入其前面的子文本中,也可以将目标子文本中标点符号与目标子文本的末尾之间的字划入其后面的子文本中,在此不做限定。

至此,通过以上三种方式中的任意一种方式,就可以将待识别文本拆分成多个子文本了。

s302:识别多个子文本中每个子文本中的实体。

s303:确定每个子文本中的实体的个数。

s304:判断每个子文本中是否存在实体的个数为一个的单子文本,若存在,则执行s305和s307,若不存在,则执行s306和s307。

s305:识别单子文本中的实体和与单子文本相邻的子文本中的实体之间的依存关系。

s306:识别每个子文本中的实体之间的依存关系。

s307:根据识别出的依存关系,确定待识别文本中的实体之间的依存关系。

下面以两个具体示例来说明在将待识别文本拆分成多个子文本后如何通过多个子文本来确定待识别文本中各实体之间的依存关系的。

示例一:图9为本发明实施例中的确定待识别文本中实体依存关系的示意图一,参见图9所示,假设待识别文本900为“我去五道口的肯德基,你去西二旗的麦当劳”,拆分后的子文本901为“我去五道口的肯德基”,拆分后的子文本902为“你去西二旗的麦当劳”,子文本901中有实体903“五道口”和实体904“肯德基”,子文本902中有实体905“西二旗”和实体906“麦当劳”,子文本901中有两个实体,子文本902中有两个实体,不存在单子文本,那么,识别子文本901中的实体903和实体904之间的依存关系,得到五道口是描述肯德基的,识别子文本902中的实体905和实体906之间的依存关系,得到西二旗是描述麦当劳的,最后,分析得到肯德基与麦当劳是并列的,所以,最终从待识别文本900中确定出的各实体的依存关系是:五道口是描述肯德基的,西二旗是描述麦当劳的。

示例二:图10为本发明实施例中的确定待识别文本中实体依存关系的示意图二,参见图10所示,假设待识别文本1000为“明天早上九点去首都机场接张小明,再去五道口电影院开会”,拆分后的子文本1001为“明天早上九点”,拆分后的子文本1002为“去首都机场接张小明”,拆分后的子文本1003为“再去五道口电影院开会”,子文本1001中有实体1004“明天早上九点”、子文本1002中有实体1005“首都机场”和实体1006“接张小明”、子文本1003中有实体1007“五道口电影院”和实体1008“开会”,子文本1001中有一个实体,子文本1002中有两个实体,子文本1003中有两个实体,其中,子文本1001为单子文本,那么,将子文本1001中的实体1004与子文本1002中的实体1005和实体1006一起进行识别,得到明天早上九点和首都机场都是描述接张小明的,再识别子文本1003中的实体1007和实体1008之间的依存关系,得到五道口电影院是描述开会的,最后,分析得到接张小明和开会是并列的,所以,最终从待识别文本1000中确定出的各实体的依存关系是:明天早上九点和首都机场都是描述接张小明的,五道口电影院是描述开会的。

需要说明的是:若多个子文本中存在单子文本,是将该单子文本中的单个实体与单子文本前的子文本中的实体一起确定依存关系,还是将该单子文本中的单个实体与单子文本后的子文本中的实体一起确定依存关系,可以根据前子文本中的语义或后子文本中的语义确定,当然,还可以根据其它条件确定,在此不做限定。

至此,就确定出了待识别文本中各实体之间的依存关系。

为了能够使用户直接清楚地了解待识别文本中各实体之间的依存关系,可以将确定出的依存关系进行展示。

s308:将待识别文本中相互之间具有依存关系的实体合并显示。

示例性的,图11为本发明实施例中的合并显示具有依存关系的实体的示意图,参见图11所示,待识别文本1101为“晚上六点半去五道口电影院开会”,从待识别文本1101中确定出的依存关系为:“晚上六点半”和“五道口电影院”都是描述“开会”的。将“晚上六点半”、“五道口电影院”、“开会”合并显示,合并显示结果是便签1102中的内容,在这里,图11中的“会议提醒”即是本示例中所说的“开会”。

在具体实施过程中,为了使用户能够快速地了解待识别文本中的信息层级,可以将具有依存关系的各实体分级显示。

具体的,可以包括以下步骤:

步骤一:识别待识别文本中相互之间具有依存关系的实体的类型。

其中,类型包括:主体和客体,主体为依存关系中被描述的对象,客体用于描述主体。例如:对于待识别文本“晚上六点半去五道口电影院开会”,相互之间具有依存关系的实体为“晚上六点半”、“五道口电影院”和“开会”,其中,类型为主体的实体是“开会”,类型为客体的实体是“晚上六点半”和“五道口电影院”。

步骤二:将类型为主体的实体与类型为客体的实体区别设置,使得类型为主体的实体突出。

具体的,可以是将类型为主体的实体的字体放大显示,也可以是将类型为主体的实体的字体加粗显示,也可以是将类型为主体的实体的字体带颜色显示,也可以是使类型为主体的实体的字体闪烁,当然,还可以通过其它方式使类型为主体的实体突出显示,在此不做限定,总之,就是将类型为主体的实体与类型为客体的实体区别显示,并且使用户先注意到类型为主体的实体,方便用户直接清楚地了解待识别文本中的内容。

步骤三:将区别设置后的类型为主体的实体与类型为客体的实体合并显示。

需要说明的是:上述步骤二与上述步骤三的执行顺序也可以颠倒,也就是说,在执行完上述步骤一后,可以先执行步骤三,再执行步骤二,即,在识别待识别文本中相互之间具有依存关系的实体的类型后,先将类型为主体的实体与类型为客体的实体合并,再将类型为主体的实体与类型为客体的实体区别显示,使类型为主体的实体突出。

示例性的,仍参见图11所示,实体“晚上六点半”、“五道口电影院”和“会议提醒”合并显示在便签1102中,并且,“会议提醒”的字体相比于“晚上六点半”和“五道口电影院”的字体较大,使用户在看到便签1102时首先看到“会议提醒”,能够使用户直接了解便签1102是进行会议提醒的,接下来再看到“晚上六点半”和“五道口电影院”,使用户知道会议的时间和地点。可见,突出显示类型为主体的实体,能够使用户快速地了解待识别文本中的信息层级。

至此,就完成了确定待识别文本中各实体之间的依存关系,并将相互之间具有依存关系的实体进行合并显示的整个过程。

基于同一发明构思,作为对上述方法的实现,本发明实施例还提供了一种实体依存关系的确定装置。图12为本发明实施例中的实体依存关系的确定装置的结构示意图,参见图12所示,该装置1200可以包括:拆分模块1201,被配置为将待识别文本拆分成多个子文本;识别模块1202,被配置为识别多个子文本中每个子文本中的实体;确定模块1203,被配置为依据每个子文本中的实体和/或相邻子文本中的实体的依存关系,确定待识别文本中实体之间的依存关系。

基于前述实施例,拆分模块,被配置为从待识别文本中识别出标点符号;以标点符号为间隔,将待识别文本拆分成多个子文本。

基于前述实施例,该装置还可以包括:第一调整模块,被配置为确定多个子文本中每个子文本的字数;判断多个子文本中是否存在字数小于第一预设字数的子文本;若是,则将字数小于第一预设字数的子文本并入与其相邻的一个子文本中。

基于前述实施例,拆分模块,被配置为按照第二预设字数,将待识别文本拆分成多个子文本。

基于前述实施例,该装置还可以包括:第二调整模块,被配置为判断多个子文本中相邻的两个子文本之间是否存在被拆分的实体;若是,则将被拆分的实体划入相邻的两个子文本中的一个子文本。

基于前述实施例,该装置还可以包括:第三调整模块,被配置为从多个子文本中,确定出其中有标点符号的目标子文本;获取目标子文本中的标点符号与目标子文本的开头之间的第一字数,以及目标子文本中的标点符号与目标子文本的末尾之间的第二字数;若第一字数大于第二字数,则将目标子文本中标点符号后的文本划入目标子文本的下一个子文本;若第一字数小于第二字数,则将目标子文本中标点符号前的文本划入目标子文本的上一个子文本。

基于前述实施例,确定模块,被配置为确定每个子文本中的实体的个数;判断每个子文本中是否存在实体的个数为一个的单子文本;若存在,则识别单子文本中的实体和与单子文本相邻的子文本中的实体之间的依存关系;若不存在,则识别每个子文本中的实体之间的依存关系;根据识别出的依存关系,确定待识别文本中的实体之间的依存关系。

基于前述实施例,该装置还可以包括:显示模块,被配置为将待识别文本中相互之间具有依存关系的实体合并显示。

基于前述实施例,显示模块,被配置为识别待识别文本中相互之间具有依存关系的实体的类型,类型包括:主体和客体,主体为依存关系中被描述的对象,客体用于描述主体;在相互之间具有依存关系的实体中,将类型为主体的实体与类型为客体的实体合并显示,使类型为主体的实体区别于类型为客体的实体,并突出显示类型为主体的实体。

这里需要指出的是:以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明装置实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。

基于同一发明构思,本发明实施例还提供了一种电子设备。图13为本发明实施例中的电子设备的结构示意图,参见图13所示,该电子设备1300可以包括:至少一个处理器1301;以及与处理器1301连接的至少一个存储器1302、总线1303;其中,处理器1301、存储器1302通过总线1303完成相互间的通信;处理器1301用于调用存储器1302中的程序指令,以执行上述一个或多个实施例中的方法。

这里需要指出的是:以上电子设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明实施例的电子设备的实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。

基于同一发明构思,本发明实施例还提供了一种计算机可读存储介质,上述计算机可读存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述一个或多个实施例中的方法。

这里需要指出的是:以上计算机可读存储介质实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明实施例的计算机可读存储介质的实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。存储器是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是:术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

a1、一种实体依存关系的确定方法,所述方法包括:

将待识别文本拆分成多个子文本;

识别所述多个子文本中每个子文本中的实体;

依据所述每个子文本中的实体和/或相邻子文本中的实体的依存关系,确定所述待识别文本中实体之间的依存关系。

a2、根据上述a1所述的方法,所述将待识别文本拆分成多个子文本,包括:

从所述待识别文本中识别出标点符号;

以所述标点符号为间隔,将所述待识别文本拆分成多个子文本。

a3、根据上述a2所述的方法,所述以所述标点符号为间隔,将所述待识别文本拆分成多个子文本后,所述方法还包括:

确定所述多个子文本中每个子文本的字数;

判断所述多个子文本中是否存在字数小于第一预设字数的子文本;

若是,则将字数小于所述第一预设字数的子文本并入与其相邻的一个子文本中。

a4、根据上述a1所述的方法,所述将待识别文本拆分成多个子文本,包括:

按照第二预设字数,将所述待识别文本拆分成多个子文本。

a5、根据上述a4所述的方法,所述按照第二预设字数,将所述待识别文本拆分成多个子文本后,所述方法还包括:

判断所述多个子文本中相邻的两个子文本之间是否存在被拆分的实体;

若是,则将所述被拆分的实体划入所述相邻的两个子文本中的一个子文本。

a6、根据上述a4所述的方法,所述按照第二预设字数,将所述待识别文本拆分成多个子文本后,所述方法还包括:

从所述多个子文本中,确定出其中有标点符号的目标子文本;

获取所述目标子文本中的标点符号与所述目标子文本的开头之间的第一字数,以及所述目标子文本中的标点符号与所述目标子文本的末尾之间的第二字数;

若所述第一字数大于所述第二字数,则将所述目标子文本中所述标点符号后的文本划入所述目标子文本的下一个子文本;

若所述第一字数小于所述第二字数,则将所述目标子文本中所述标点符号前的文本划入所述目标子文本的上一个子文本。

a7、根据上述a1至a6中任一项所述的方法,所述依据所述每个子文本中的实体和/或相邻子文本中的实体的依存关系确定所述待识别文本中实体之间的依存关系,包括:

确定所述每个子文本中的实体的个数;

判断所述每个子文本中是否存在实体的个数为一个的单子文本;

若存在,则识别所述单子文本中的实体和与所述单子文本相邻的子文本中的实体之间的依存关系;

若不存在,则识别所述每个子文本中的实体之间的依存关系;

根据识别出的依存关系,确定所述待识别文本中的实体之间的依存关系。

a8、根据上述a7所述的方法,所述根据识别出的依存关系,确定所述待识别文本中的实体之间的依存关系后,所述方法还包括:

将所述待识别文本中相互之间具有依存关系的实体合并显示。

a9、根据上述a8所述的方法,所述将所述待识别文本中相互之间具有依存关系的实体合并显示,包括:

识别所述待识别文本中相互之间具有依存关系的实体的类型,所述类型包括:主体和客体,所述主体为所述依存关系中被描述的对象,所述客体用于描述所述主体;

将类型为主体的实体与类型为客体的实体区别设置,使得类型为主体的实体突出;

将区别设置后的类型为主体的实体与类型为客体的实体合并显示。

b10、一种实体依存关系的确定装置,所述装置包括:

拆分模块,被配置为将待识别文本拆分成多个子文本;

识别模块,被配置为识别所述多个子文本中每个子文本中的实体;

确定模块,被配置为依据所述每个子文本中的实体和/或相邻子文本中的实体的依存关系,确定所述待识别文本中实体之间的依存关系。

b11、根据上述b10所述的方法,所述拆分模块,被配置为从所述待识别文本中识别出标点符号;以所述标点符号为间隔,将所述待识别文本拆分成多个子文本。

b12、根据上述b11所述的方法,所述装置还包括:

第一调整模块,被配置为确定所述多个子文本中每个子文本的字数;判断所述多个子文本中是否存在字数小于第一预设字数的子文本;若是,则将字数小于所述第一预设字数的子文本并入与其相邻的一个子文本中。

b13、根据上述b10所述的方法,所述拆分模块,被配置为按照第二预设字数,将所述待识别文本拆分成多个子文本。

b14、根据上述b13所述的方法,所述装置还包括:

第二调整模块,被配置为判断所述多个子文本中相邻的两个子文本之间是否存在被拆分的实体;若是,则将所述被拆分的实体划入所述相邻的两个子文本中的一个子文本。

b15、根据上述b13所述的方法,所述装置还包括:

第三调整模块,被配置为从所述多个子文本中,确定出其中有标点符号的目标子文本;获取所述目标子文本中的标点符号与所述目标子文本的开头之间的第一字数,以及所述目标子文本中的标点符号与所述目标子文本的末尾之间的第二字数;若所述第一字数大于所述第二字数,则将所述目标子文本中所述标点符号后的文本划入所述目标子文本的下一个子文本;若所述第一字数小于所述第二字数,则将所述目标子文本中所述标点符号前的文本划入所述目标子文本的上一个子文本。

b16、根据上述b10至b15中任一项所述的方法,所述确定模块,被配置为确定所述每个子文本中的实体的个数;判断所述每个子文本中是否存在实体的个数为一个的单子文本;若存在,则识别所述单子文本中的实体和与所述单子文本相邻的子文本中的实体之间的依存关系;若不存在,则识别所述每个子文本中的实体之间的依存关系;根据识别出的依存关系,确定所述待识别文本中的实体之间的依存关系。

b17、根据上述b16所述的方法,所述装置还包括:

显示模块,被配置为将所述待识别文本中相互之间具有依存关系的实体合并显示。

b18、根据上述b17所述的方法,所述显示模块,被配置为识别所述待识别文本中相互之间具有依存关系的实体的类型,所述类型包括:主体和客体,所述主体为所述依存关系中被描述的对象,所述客体用于描述所述主体;将类型为主体的实体与类型为客体的实体区别设置,使得类型为主体的实体突出;将区别设置后的类型为主体的实体与类型为客体的实体合并显示。

c19、一种电子设备,所述电子设备包括:至少一个处理器;以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述a1至a9中任一项所述的方法。

d20、一种计算机可读存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述a1至a9中任一项所述的方法。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1