一种文本比对方法、合同审阅方法、审核系统
文献发布时间:2023-06-19 11:19:16
技术领域
本发明涉及语言处理技术,具体的涉及一种自动文本比对、自动合同审阅技术。
背景技术
中小型及以上企业在进行正常的商务活动过程中,会有一系列的合同流转和审核过程。其中,一般的流程为,企业的销售或者商务人员负责与客户沟通并拟定好合同,合同拟定好后将交与法务人员对合同进行审核,法务人员审核通过后会将合同提交给财务人员审核、财务审核通过后往往还有相关领导等的审核,审核通过后合同工将流转到企业合同相关的发起方和盖章方,在整个审核和流转的过程中,任意一步审核不通过都会打回给商务人员重新对合同进行调整。这个过程不仅效率低下,而且整个流转的过程中还存在大量与版本有关的风险问题,任意一步审核人员一旦出错,都将会对企业的业务和运营造成巨大风险。
当前相关业务人员通过常用文档工具可以进行比对,但是一般常用文档工具是机械化的比对,比如仅有新增和删除比对功能,如果修改者对文本进行了其他结构调整,则这类常用文档工具不能标注和体现。
发明内容
本发明针对现有技术中的缺点,提供了一种文本比对方法、合同审阅方法,增加了替换、替换修改、以及条款之间位置变动、条款内字符位置变动提示的功能。
为了解决上述技术问题,本发明通过下述技术方案得以解决:
一种文本比对方法,包括以下步骤,
将比对文本分别进行段落划分;
解析条款标题,形成条款标题列表,根据两文本的条款标题列表的重合度解析是否有增加、删除或更换位置的条款;
比对两文本的相同条款标题下的段落,解析是否有连续删除字符串或连续新增字符串;或,连续删除字符串和连续新增字符串;
根据解析出的连续修改的字符串内容,判断修改内容为删除、新增、替换和位置变更中的一项或多项。
可选的,若为连续删除字符串和连续新增字符串,且所述连续删除字符串和所述连续新增字符串前后文相同,则标记修改的部分为替换,由新增字符串替换删除字符串。
可选的,若为连续删除字符串或连续新增字符串,则判断删除或新增的字符数,若删除或新增的字符数小于第一阈值,则标记为删除字符串或者新增字符串;
若删除或新增的字符数大于等于第一阈值,则判断连续删除字符串或连续新增字符串是否存在与之相似的其他字符串,
若无,则标记为新增字符串或者删除字符串;
若有,则标记为位置变更。
可选的,判断连续删除字符串或连续新增字符串是否存在与之相似的其他字符串的方法包括,
将所有其他连续新增字符串或连续删除字符串组成比对列表,使用比对列表中的字符串与所述大于等于第一阈值的连续删除字符串或连续新增字符串进行相似度比对;
若相似度小于第二阈值,则标记为新增字符或删除字符;
若相似度大于等于第二阈值,则标记为位置变更。
可选的,若标记为位置变更,将两文本中位置变更的字符串进行比对,判断位置变更的字符串中是否存在删除或者新增的字符,若有,则标记删除或者新增的字符。
可选的,比对在条款标题重合的标题列表是否有重复的条款标题,不重复的条款标题及其条款内容则进入同条款标题下的段落比对;
对于条款标题存在重复的部分,按照顺序依次进行条款中具体段落比对,增加的条款标题,如果在参照文本中,则标注为整条删除条款,若在比对文本中,则标注为整条新增条款。
可选的,根据字符和字符的坐标是否重复对字进行去重;以及,
根据文本整体的横纵坐标设置阈值,对于所在的横纵坐标超出阈值的文本文字进行过滤;
将表格的坐标与所有文字的坐标进行比对,将隶属于每一个表格的文字单独划出,组成单独的段落。
可选的,创建文本段落开头标志的正则表达式,采用所述正则表达式提取文本中每一个段落中开头的位置,将在两个段落开头之间的文本划归到第一个开头所在的段落;
创建文本段落开头标志的正则表达式,将最后一个段落开头之后的文本用结尾正则表达式进行匹配,将匹配到的结尾与最后一个段落开头之间的文字组成最后一个正文段落。
创建附件开头的正则表达式,将识别到的两个附件开头之间的文字划入第一个附件段落,最后一个附件段落包含最后一个附件段落开头之后的所有文本。
将在各个段落之间未被归段的文本依据所在位置依次新建并划入非正文条款。
最后将所有划归好的段落根据首字的页码和纵坐标进行排序,后得到段落划分好的结构化文本。
本发明还提供一种合同审阅方法,采用权利要求1所述的文本比对方法,
调用实体识别模块解析修改内容的实体内容,判断修改内容是否包含风险修改;
若修改内容包含命名实体,则输出为高风险修改,若不包含命名实体,则输出为一般风险修改。
可选的,所述命名实体包括人名、公司名、身份证号、公司相关识别号码、时间、金额和数字。
本发明还提供一种审核系统,包括段落划分模块,用于划分段落;
条款比对模块,用于计算是否有新增、删除或位置变更的条款;
段落比对模块,用于计算是否有新增、删除或位置变更的字符串;
风险评估模块,用于分析修改内容的风险等级。
可选的,还包括展示模块,用于展示修改内容,分别显示参照本文和比对文本文档,并且根据坐标将修改位置标注高亮;风险详情模块,展示所有修改位置,并且与展示模块坐标连接;风险统计模块,实时统计风险剩余数目。
本发明的有益效果:与传统的比对工具相比,增加了替换、替换修改、位置变动、位置变动后修改等比对新功能。考虑了文本的结构化信息、段落句子的连接方式、表述方式,较传统的直接全文比对在准确率上有较大的提升。辅助流转过程中各级人员对合同进行审核,降低审核过程中的工作量,提升审核的效率,并且降低审核过程中潜在的由于操作不当或者版本管理不当导致合同内容错误,从而降低企业经营和运营中的风险。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是一种文本比对方法的总流程图;
图2是段落划分的流程图;
图3是条款比对的流程图;
图4是段落比对的流程图;
图5是风险评估的流程图。
具体实施方式
下面结合实施例对本发明做进一步的详细说明,以下实施例是对本发明的解释而本发明并不局限于以下实施例。
实施例1:
本实施例以合同文本作为比对主体,拟所述合同文本包括参照文本和比对文本,其中所述参照文本可以是输入文本,也可以是存储于系统数据库的经过处理的已有文本。
本文中所述的匹配,比对方法均采用 “gestalt pattern matching”法,在其他实施例中也可以使用其他文本相似度计算方法,在此不做限制。
如图1所示,一种文本比对方法,其中,本实施例中将参照文本和比对文本的处理方法都描述,在其他实施例中,可以只执行比对文本处理,将处理的比对文本和已处理完成的已有参照文本进行比对。
其中,总的流程包括以下步骤,
合同文件带有非常多的结构化信息,文本往往按照条款、子条款等进行组织和修改。因此在进行合同比对时,直接比对全部文本忽略了编改者的修改意图,比对结果往往不能反应修改者的真正意图,例如对于文本新增、删减、替换等的意图识别错误,对于段落换位置后的新增和删减识别错误,由于纳入页眉页脚进行比对导致的识别错误等等。本技术方案首先将文本段落结构梳理清楚、对于数据进行规整、去除不必要比对的文本,将合同编改者条款意图相同的部分进行比对。为了达到这个目的,应该首先进行段落划分。
(一)段落划分,如图2所示,将参照文本和比对文本分别进行段落划分,即对文件中提取出来的文本按照条款进行结构化处理,使杂乱无章的文本变成按照条款、段落、表格等进行划分的结构化文本,去除不必要的文本。
1)文本预处理:根据字符和字符的坐标是否重复对字符进行去重;以及,根据文本整体的横纵坐标设置阈值,对于所在的横纵坐标超出阈值的文本文字进行过滤,以此来过滤掉文本的页眉页脚页码编号等信息。
2)表格处理:将表格的坐标与所有文字的坐标进行比对,将隶属于每一个表格的文字单独划出,组成单独的段落。
依次遍历字符所在坐标与表格坐标,将在表格坐标内部的字符从总文本中划出并且划入相应表格,依次组成表格段落,并且依次对表格进行编号。
3)根据合同文本中对段落的划分方式,如“第一条”、“第一章”等进行合同文本的段落划分。
创建文本段落开头标志的正则表达式,采用所述正则表达式提取文本中每一个段落中开头的位置,将在两个段落开头之间的文本划归到第一个开头所在的段落;
创建文本段落结尾标志的正则表达式,将最后一个段落开头之后的文本用结尾正则表达式进行匹配,将匹配到的结尾与最后一个段落开头之间的文字组成最后一个正文段落。
创建附件开头的正则表达式,将识别到的两个附件开头之间的文字划入第一个附件段落,最后一个附件段落包含最后一个附件段落开头之后的所有文本。
将在各个段落之间未被归段的文本依据所在位置依次新建并划入非正文条款。
其中结尾标志的正则表达式中包含“以下无正文”、“甲方盖章”以及“附件”等关键词;
其中开头标志的正则表达式中包含“第一条”以及“第一章”等关键词,附件开头的正则表达式中包含“附件”、“风险提示函”等关键词。在这里仅例举部分,有其他的同类标志语也属于本方案的概括范围内。
4)最后将所有划归好的段落根据首字的页码和纵坐标进行排序,得到段落划分好的结构化文本。
(二)条款比对,如图3所示,由于合同文本通常按照条款进行划分,并且条款标题意味着整个条款所表述的意图,因此可以认为条款标题就是同一条款中所有段落的代表,条款标题相同或相近的所有段落为同一条款中的段落。
1)对参照文本和比对文本解析条款标题,形成两组或多组(如果有一个以上参照文本或一个以上比对文本同时解析,就会存在两组或多组条款标题列表)条款标题列表,根据参照文本和比对文本的条款标题列表的重合度解析是否有增加、删除或更换位置的条款段落;
对比对文本和参照文本的条款标题列表进行比对;
若条款标题仅在参照文本的标题列表中出现,则标注整段为删除条款;
若条款标题仅在比对文本的标题列表中出现,则标注整段为新增条款。
若解析为两条款标题列表的条款标题顺序有变动,则将变动部分标注为条款位置变更。此种情况并非传统比对工具认为的新增和删除行为,而是条款位置变动行为。在进行更进一步的比对时,也并非传统比对工具的直接按照原位置的文本进行比对,而是将换位置后的条款标题相同的条款段落进行更进一步的比对。
在比对文本的条款标题重合的标题列表中检查是否有重复的条款标题部分,不重复的条款标题及其内容直接开始条款中具体段落比对,对于条款标题存在重复的部分,按照顺序依次进行条款中具体段落比对,多出来的条款标题,如果在参照文本中,则标注为整条删除条款,若在比对文本中,则标注为整条新增条款。
综上,合同文本的修改不同于通常文本的修改,还存在段落结构的调整,当前常见的文本比对工具往往不具备段落整体删除、新增、位置变动等的识别能力,或者容易理解错误编改者的修改意图。因此整个方案的第一步应该首先进行段落级别的比对,对修改意图进行更准确的识别。包括识别段落是否是同一段落、区分段落究竟是新增、删除还是仅仅是换位置的意图。
(三)段落比对,如图4所示,即对参照文本和比对文本中相同的条款标题中的段落是否有修改。由于合同条款不同于通常的文本,文本内容往往会按照子条款进行划分,并且变动时也存在子条款整体变动的情况,因此进行比对时,不仅仅需要考虑新增、删除、替换问题,也需要考虑子条款的位置变动、位置变动后修改等问题。
将需要比对的条款段落,按照字符顺序依次连接组成字符串,对两组字符串进行比对。
比对两文本的相同条款标题下的段落,解析是否仅有连续删除字符串或仅有连续新增字符串;或,连续删除字符串和连续新增字符串;
根据解析出的连续修改的字符串内容,判断修改内容为删除、新增、替换和位置变更中的一项或多项。
以下描述均为以比对文本与参照文本比对后的新增或删除含义。
1)具体的,若为连续删除字符串和连续新增字符串,且所述连续删除字符串和所述连续新增字符串相同,则标记修改的部分为替换,由新增内容替换了删除内容。如有连续删除字符“abc”,又同时存在有连续新增字符“abc”。
若为连续删除字符串,则判断删除的字符数,若删除的字符数小于第一阈值,则标记为删除字符串;
若删除的字符数大于等于第一阈值,则判断连续删除字符串是否存在与之相似的其他字符串,若无,则标记为删除字符串;
若有,则标记为位置变更。
2)若为连续新增字符串,则判断连续新增的字符数,若连续新增的字符数小于第一阈值,则标记为新增字符串;
若连续新增的字符数大于等于第一阈值,则判断连续新增字符串是否存在与之相似的其他字符串,若无,则标记为新增字符串;
若有,则标记为位置变更。
本实施例中的第一阈值,即字数阈值为10个字符,即10字或10字以上的连续删除或连续新增字符串需要进行是否有位置变更的可能性,反之,则无需判断是否有位置变更,直接标记为删除字符串或新增字符串。
3)关于上述判断连续删除字符串或连续新增字符串是否存在与之相似的其他字符串的方法包括,
将与所述大于等于第一阈值的连续删除字符串或连续新增字符串相似的所有连续新增字符串或连续删除字符串组成比对列表,使用比对列表中的字符串与所述大于等于第一阈值的连续删除字符串或连续新增字符串进行相似度比对;
举例:比对文本中有删除(缺少)字符串xxxttedfgq,比对文本中下文又出现新增若干字符串,如xxtttedfgq、xxeetedfgqq、xaatteofgqq等,则将比对文本中相似的所有连续新增字符串组成比对列表,将所述xxxttedfgq,与所述比对列表依次进行比对。
若相似度小于第二阈值,相似度低,则标记本字符串(比对文本中字符串)为新增字符串或删除字符串;
若相似度大于等于第二阈值,则标记为位置变更,并标记出删除或者新增的字符串部分。
本实施例中第二阈值,即相似度阈值为60%以上,即两组字符串相似的内容超过60%及判断为相似字符串。
举例:比对后,找到相似度与xxxttedfgq大于等于60%的字符串xxtttedfgq,则原来与参照文本比对出现的删除(缺少)的字符串又在下文新增了相似的xxtttedfgq,即为位置变更。
适当调整第二阈值可以调整比对过程中的精度和容错率。
4)承上3),虽然上述步骤中已经判断出位置变更修改,但是在相似度判断中并非100%的相似度,所以,进一步的,需要将两文本中位置变更的字符串进行比对,判断位置变更的字符串中是否存在删除、新增或替换的字符,若有,则标记删除、新增或替换的字符。
举例:将删除字符串xxxttedfgq与下文新增字符串xxtttedfgq进行比对,在删除字符串中第三个x被替换为t;
则系统自动审阅机制完成后以上例子会被标注两处修改:1.位置变更修改;2.位置变动后x与t的替换修改。
5)进一步的, 步骤3)中,为了得到比对列表,需要找到符合条件的所有字符串,这里的所有符合条件的字符串可以通过字符数比对方法或相似度比对方法,如:
判断两字符串字符数差值是否在第三阈值内;或,
判断字符串的内容相似度是否大于第四阈值。
实施例2:
一种合同审阅方法,基于实施例1所描述的文本比对方法,进一步的需要判断合同文本修改内容是否存在风险。
如图5所示:调用实体识别模块解析修改内容的实体内容,判断修改内容是否包含风险修改;
若修改内容包含命名实体,则输出为高风险修改,若不包含命名实体,则输出为一般风险修改。
其中,所述命名实体包括人名、公司名、身份证号、公司相关识别号码、时间、金额和数字。
实施例3:
一种审核系统,用于实现上述实施例1所述的一种文本比对方法的审核软件系统,包括:
段落划分模块,用于划分段落;
条款标题比对模块,用于计算是否有新增、删除或位置变更的条款;
段落比对模块,用于计算是否有新增、删除或位置变更的字符串;
风险分析模块,用于分析修改内容的风险等级。
除了上述功能模块,本系统还包括UI界面,即审核界面,具体包括:
展示模块,用于展示修改内容,分别显示参照本文和比对文本文档,并且根据坐标将修改位置标注高亮。
风险详情模块,展示所有修改位置,并且与展示模块坐标联动。为审阅人员提供每一处的审核通过或者不通过按钮,当审阅人员点击通过后,此处修改将会被标注为无风险。当审阅人员点击不通过,则维持原来风险评定,并且提供评审意见录入窗口。
风险统计模块,实时统计风险剩余数目。
传统的比对工具往往只是一个比对软件,当比对的工作需要嵌入到公司实际的运营工作流中后往往无法有效的进行软件层面的协作。审核人员由于自身的疲劳、比对工具的缺陷等存在着漏审、错审的风险。因此,比对工具需要合理的页面、软件架构、接口设计等来良好的与公司当前的工作流展开软件层面的协作,以规避风险、提升效率。
其他需要说明的:为了能够嵌入到用户的数字化系统中,比对结果需要有比较通用的数据交互格式。其中比对结果的数据格式为json格式,比对的结果将包含文本段落的信息、段落修改的信息、相关修改位置坐标、风险等级等。软件开发和接口格式采用标准RESTful标准。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。
所述单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何在本发明揭露的技术范围内的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
- 一种文本比对方法、合同审阅方法、审核系统
- 基于文本分析的合同风险审核方法、装置及终端设备