CN115114412B - 文档中的信息检索方法及电子设备、存储介质 - Google Patents
文档中的信息检索方法及电子设备、存储介质 Download PDFInfo
- Publication number
- CN115114412B CN115114412B CN202211050540.1A CN202211050540A CN115114412B CN 115114412 B CN115114412 B CN 115114412B CN 202211050540 A CN202211050540 A CN 202211050540A CN 115114412 B CN115114412 B CN 115114412B
- Authority
- CN
- China
- Prior art keywords
- target
- clusters
- target character
- confidence
- keywords
- 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
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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3346—Query execution using probabilistic model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Probability & Statistics with Applications (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种文档中的信息检索方法及电子设备、存储介质,该方法包括:通过对待处理文档进行解析,获得包含坐标位置信息的多个候选文字块;根据输入的多个关键词,将候选文字块与关键词进行模糊匹配,筛选出置信度大于第一阈值的目标文字块;根据每个目标文字块的坐标位置信息和置信度,将所有目标文字块进行聚类,得到多个簇;根据每个簇内包含的目标文字块,筛选得到多个关键词对应的检索结果。该方案由于无需创建多样化的版式,无需进行复杂的深度学习过程,可以显著的降低实施成本,缩短耗费时间。
Description
技术领域
本申请涉及自然语言处理技术领域,特别涉及一种文档中的信息查询方法及电子设备、计算机可读存储介质。
背景技术
在文档检索领域,现有模式通常对含有表格的非结构化文档,如PDF、图片等格式的文档,需要进行单独的解析或处理从而实现数据结构化,进一步基于结构化数据实现关键词的查询功能。
在结构化过程中,需要适配不同的类型版式(如合同类、表格类),其中,文档结构化需要准备不同类型版式的文档进行单独训练,故训练成本居高不下,项目实施周期长。
在实际应用中常遇到如下场景:一,对搜索的关键词召回要求高的场景。二、对搜索的关键词所涉及的内容只需要判定在文档中是否出现即可。而现有的实施过程在满足上述需求时,需要适配不同的版式,开发成本高,耗费时间长。
发明内容
本申请实施例提供了一种文档中的信息检索方法,用以降低实施成本,缩短耗费时间。
本申请实施例提供了一种文档中的信息检索方法,包括:
对待处理文档进行解析,获得包含坐标位置信息的多个候选文字块;
根据输入的多个关键词,将所述候选文字块与所述关键词进行模糊匹配,筛选出置信度大于第一阈值的目标文字块;
根据每个目标文字块的坐标位置信息和置信度,将所有目标文字块进行聚类,得到多个簇;
根据每个簇内包含的目标文字块,筛选得到所述多个关键词对应的检索结果。
在一实施例中,所述根据输入的多个关键词,将所述候选文字块与所述关键词进行模糊匹配,筛选出置信度大于第一阈值的目标文字块,包括:
针对任一候选文字块和任一关键词,计算所述候选文字块和所述关键词之间的第一相似度;
根据所述关键词与所述候选文字块之间的共同字符,计算所述共同字符与所述关键词之间的第二相似度;
根据所述第一相似度和第二相似度,计算所述候选文字块与关键词相匹配的置信度,并将置信度大于第一阈值的候选文字块作为所述目标文字块。
在一实施例中,所述根据每个目标文字块的坐标位置信息和置信度,将所有目标文字块进行聚类,得到多个簇,包括:
针对任意两个目标文字块,根据每个所述目标文字块的坐标位置信息,计算所述两个目标文字块之间的第一距离;
根据每个所述目标文字块的置信度,对所述第一距离进行调整,得到所述两个目标文字块之间的第二距离;
根据任意两个目标文字块之间的第二距离,通过聚类算法将所有目标文字块聚类得到多个簇。
在一实施例中,所述针对任意两个目标文字块,根据每个所述目标文字块的坐标位置信息,计算所述两个目标文字块之间的第一距离,包括:
根据每个目标文字块的坐标位置信息,通过坐标转换函数调整每个目标文字块的坐标值;
根据每个目标文字块的坐标值,计算所述任意两个目标文字块之间的第一距离。
在一实施例中,所述根据每个目标文字块的坐标位置信息,通过坐标转换函数调整每个目标文字块的坐标值,包括:
根据每个目标文字块的中心坐标,对所述中心坐标的横坐标值和纵坐标值进行加权,得到每个目标文字块调整后的坐标值。
在一实施例中,在所述根据每个簇内包含的目标文字块,筛选得到所述多个关键词对应的检索结果之前,所述方法还包括:
根据每个簇内的目标文字块命中的关键词个数,将所有簇进行分组;
针对任一目标组,根据目标组内簇的最大置信度,对所述目标组内的簇进行过滤;
根据除所述目标组外,其余组的平均置信度,对所述目标组内的簇进行过滤。
在一实施例中,所述针对任一目标组,根据目标组内簇的最大置信度,对所述目标组内的簇进行过滤,包括:
根据每个簇包含的目标文字块的置信度,计算得到每个簇的平均置信度;
针对任一目标组,根据所述目标组内指定簇的平均置信度和所述目标组内簇的最大置信度,若所述指定簇命中的关键词被所述目标组内其余簇命中的关键词完全覆盖,且,所述指定簇的平均置信度减去所述目标组内簇的最大置信度的差值大于第二阈值,则删除所述指定簇。
在一实施例中,所述根据除所述目标组外,其余组的平均置信度,对所述目标组内的簇进行过滤,包括:
根据所述目标组内单个簇对应命中的第一关键词个数,从其余分组中筛选出组内单个簇命中关键词个数大于所述第一关键词个数的指定分组;
根据所述指定分组包含的簇,以及每个簇包含的目标文字块的置信度,计算得到所述指定分组的平均置信度;
针对任一目标组,根据所述目标组内指定簇的平均置信度和所述指定分组的平均置信度,若所述指定簇命中的关键词被所述指定分组内簇命中的关键词完全覆盖,且,所述指定簇的平均置信度减去所述指定分组的平均置信度的差值大于第三阈值,则删除所述指定簇。
在一实施例中,所述根据每个簇内包含的目标文字块,筛选得到所述多个关键词对应的检索结果,包括:
针对剩余的簇,根据同一簇内包含的目标文字块的坐标位置信息,构建同一簇内包含的目标文字块的最小外接矩形;
对所述最小外接矩形和/或所述最小外接矩形内所有的目标文字块进行突出显示。
另一方面,本申请一实施例示出的文档中的信息检索装置,该装置包括:
文档解析模块,用于对待处理文档进行解析,获得包含坐标位置信息的多个候选文字块;
模糊匹配模块,用于根据输入的多个关键词,将所述候选文字块与所述关键词进行模糊匹配,筛选出置信度大于第一阈值的目标文字块;
文字聚类模块,用于根据每个目标文字块的坐标位置信息和置信度,将所有目标文字块进行聚类,得到多个簇;
结果输出模块,用于根据每个簇内包含的目标文字块,筛选得到所述多个关键词对应的检索结果。
本申请实施例还提供了一种电子设备,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述文档中的信息检索方法。
本申请实施例提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成上述文档中的信息检索方法。
本申请实施例提供的方法,通过对待处理文档进行解析,获得包含坐标位置信息的多个候选文字块;根据输入的多个关键词,将候选文字块与关键词进行模糊匹配,筛选出置信度大于第一阈值的目标文字块;根据每个目标文字块的坐标位置信息和置信度,将所有目标文字块进行聚类,得到多个簇;根据每个簇内包含的目标文字块,筛选得到多个关键词对应的检索结果。该方案由于无需创建多样化的版式,无需进行复杂的深度学习过程,可以显著的降低实施成本,缩短耗费时间。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍。
图1是本申请实施例提供的电子设备的结构示意图;
图2是本申请实施例提供的一种文档中的信息检索方法的流程图;
图3是图2对应实施例中步骤S230的细节流程图;
图4是在图2对应实施例基础上进行簇过滤的流程示意图;
图5是图4对应实施例中步骤S430的细节流程图;
图6是本申请实施例一种包含表格的非结构文档进行解析后的候选文字块示意图;
图7是本申请实施例提供的进行模糊匹配得到的目标文字块示意图;
图8是本申请实施例进行检索结果显示的效果示意图;
图9是本申请实施例提供的一种文档中的信息检索装置的框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图1是本申请实施例提供的电子设备的结构示意图。该电子设备100可以用于执行本申请实施例提供的文档中的信息检索方法。如图1所示,该电子设备100包括:一个或多个处理器102、一个或多个存储处理器可执行指令的存储器104。其中,所述处理器102被配置为执行本申请下述实施例提供的文档中的信息检索方法。
所述处理器102可以是网关,也可以为智能终端,或者是包含中央处理单元(CPU)、图像处理单元(GPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元的设备,可以对所述电子设备100中的其它组件的数据进行处理,还可以控制所述电子设备100中的其它组件以执行期望的功能。
所述存储器104可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器102可以运行所述程序指令,以实现下文所述的文档中的信息检索方法。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。
在一实施例中,图1示电子设备100还可以包括输入装置106、输出装置108以及数据采集装置110,这些组件通过总线系统112和/或其它形式的连接机构(未示出)互连。应当注意,图1示的电子设备100的组件和结构只是示例性的,而非限制性的,根据需要,所述电子设备100也可以具有其他组件和结构。
所述输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。所述输出装置108可以向外部(例如,用户)输出各种信息(例如,图像或声音),并且可以包括显示器、扬声器等中的一个或多个。所述数据采集装置110可以采集对象的图像,并且将所采集的图像存储在所述存储器104中以供其它组件使用。示例性地,该数据采集装置110可以为摄像头。
在一实施例中,用于实现本申请实施例的文档中的信息检索方法的示例电子设备100中的各器件可以集成设置,也可以分散设置,诸如将处理器102、存储器104、输入装置106和输出装置108集成设置于一体,而将数据采集装置110分离设置。
在一实施例中,用于实现本申请实施例的文档中的信息检索方法的示例电子设备100可以被实现为诸如智能手机、平板电脑、服务器、台式电脑、车载设备等智能终端。
非结构化文档中关键词查询的代表性流程是:准备项目数据进行标注;训练端到端的数据结构化模型(如表格识别和提取模型);根据数据结构化模型的识别结果进行数据存储(关系、对象或图谱数据库);数据存储设备中进行关键词的匹配。数据结构化模型的训练需要准备不同类型版式的文档进行单独训练,故训练成本居高不下,项目实施周期长。基于此,本申请实施例提供了一种文档中的信息检索方法,用以降低实施成本,缩短耗费时间。
图2是本申请实施例提供的一种文档中的信息检索方法的流程图。该方法可以由上述电子设备100执行,如图2所示,该方法包括以下步骤S210-步骤S240。
步骤S210:对待处理文档进行解析,获得包含坐标位置信息的多个候选文字块。
其中,待处理文档可以是包含表格的非结构化文档,例如PDF(Portable DocumentFormat,便携文件格式)文档、图片文档。对待处理文档进行解析可以采用第三方解析工具,例如PDF解析器或OCR(Optical Character Recognition,光学字符识别)工具实现。候选文字块是指待处理文档中每个字符串的最小外接矩形框。坐标位置信息可以是最小外接矩形框的左上角坐标和右下角坐标。
步骤S220:根据输入的多个关键词,将所述候选文字块与所述关键词进行模糊匹配,筛选出置信度大于第一阈值的目标文字块。
其中,多个关键词可以直接输入电子设备中,也可以由电子设备对输入的检索语句进行分词操作,进而得到多个关键词。具体的,分词操作可以先判断检索语句中是否包含专用名词(是某一特定实体的名称,例如人名、地名、专业名词(如阿司匹林)),如果包含专用名词,可以先将专用名词分为一个词,然后对剩余语句基于n-gram(n元语言模型)进行分词。n元代表一个分词中包含n个文字。举例来说,“中国农业大学”,如果设定n=2,分词候选为“中国”“国农”“农业”“业大”“大学”等。由于语言模型库中“国农”、“业大”出现的概率较低,那么按照概率,“中国农业大学”就会分为“中国”“农业”“大学”。
将每个候选文字块和每个关键词一一进行模糊匹配。具体的,模糊匹配可以采用基于条件概率的置信度算法对匹配程度打分,最后输出置信度大于第一阈值的候选文字块。为进行区分,置信度大于第一阈值的候选文字块可以称为目标文字块。置信度越高表示候选文字块和关键字匹配程度越高。
在一实施例中,上述基于条件概率的置信度算法对匹配程度打分的具体过程如下:(1)针对任一候选文字块和任一关键词,计算所述候选文字块和所述关键词之间的第一相似度。(2)根据所述关键词与所述候选文字块之间的共同字符,计算所述共同字符与所述关键词之间的第二相似度。(3)根据所述第一相似度和第二相似度,计算所述候选文字块与关键词相匹配的置信度,并将置信度大于第一阈值的候选文字块作为所述目标文字块。
其中,候选文字块和关键词之间的第一相似度,以及共同字符与关键词之间的第二相似度可以采用相似度函数计算得到,举例来说,相似度函数可以有jaccard、dice等。
共有字符是指关键词和候选文字块中相同的字符。举例来说,关键词是abc,候选文字块是bcd,则共有字符是bc。
其中,候选文字块与关键词相匹配的置信度可以是第一相似度和第二相似度的乘积。
在一实施例中,上述基于条件概率的置信度算法可以用以下公式表示:
confidence(dt,hits)=sim(dt,q)*sim(q,hits)。
其中,q表示关键词;dt表示候选文字块;hits表示关键词与候选文字块的共有字符。sim为不限于jaccard、dice等的相似度函数。confidence为置信度。
上述实施例通过实际匹配(计算关键词和候选文字块之间的第一相似度)和目标匹配(计算共有字符和关键词之间的第二相似度)双重约束,相较于简单计算关键词和候选文字块的相似度方法,上述实施例双重约束可以显著抑制误召回率。
步骤S230:根据每个目标文字块的坐标位置信息和置信度,将所有目标文字块进行聚类,得到多个簇。
聚类是指结合目标文字块的坐标位置信息和置信度,将最有可能处于同一逻辑行或逻辑列的目标文字块聚成一个簇。逻辑行或逻辑列可以统称逻辑单元。
在一实施例中,如图3所示,上述步骤S230具体包括:步骤S231-步骤S233。
步骤S231:针对任意两个目标文字块,根据每个所述目标文字块的坐标位置信息,计算所述两个目标文字块之间的第一距离。
具体的,坐标位置信息可以包括目标文字块的左上顶点坐标和右下顶点坐标。根据每个目标文字块的左上顶点坐标和右下顶点坐标,可以计算出每个目标文字块的中心点坐标,之后通过距离公式计算两个目标文字块的中心点坐标之间的距离。该距离可以是欧式距离。为进行区分,两个目标文字块之间的距离可以称为第一距离。
在一实施例中,上述步骤S231具体包括:根据每个目标文字块的坐标位置信息,通过坐标转换函数调整每个目标文字块的坐标值;根据每个目标文字块的坐标值,计算所述任意两个目标文字块之间的第一距离。
目标文字块的坐标位置信息可以包括目标文字块的中心坐标。目标文字块的坐标转换函数采用coord函数,转换包括但不限于对于目标文字块的中心坐标进行加权,得到转换后的坐标值,进而基于转换后的坐标值,计算任意两个目标文字块之间的第一距离。
举例来说,假设目标文字块的中心坐标是(x,y),则x坐标可以转换成x*x_weight,y坐标可以转换成y*y_weight。其中x_weight和y_weight是一个经验值,相当于给x坐标和y坐标做加权。为了便于后续将目标文字块聚类形成逻辑行或逻辑列,提高聚类效果,假设主要关注y轴上的聚集情况,则可以降低x坐标的权重,增大y坐标的权重。
步骤S232:根据每个所述目标文字块的置信度,对所述第一距离进行调整,得到所述两个目标文字块之间的第二距离。
具体的,遍历所有目标文字块,每次遍历选取任意两个目标文字块,可以根据任意两个目标文字块的第一距离,以及这两个目标文字块的置信度,可以基于置信度的大小,对第一距离进行缩放,得到这两个目标文字块的第二距离,在遍历所有目标文字块后可以得到所有目标文字块两两之间的第二距离。
举例来说,假设第一距离为dis,第一个目标文字块的置信度为s1. confidence ,第二个目标文字块的置信度为s2. confidence ,则第二距离可以表示为dis/(s1.confidence*s2.confidence)。这样就进行了目标文字块的坐标位置信息和置信度的融合,因为距离不只是通过坐标位置信息计算的了,还基于目标文字块的置信度(confidence)进行了缩放,可以理解为置信度大的目标文字块将很大概率成为簇的重心,也就是说在该目标文字块的周围最有可能形成逻辑行。
在一实施例中,第二距离的计算可以参照以下公式:d(s1,s2)=adjust(dis(coord(s1),coord(s2)),s1,s2)。
其中,s1,s2分别为需要计算距离的2个目标文字块的信息,该信息例如可以是目标文字块的置信度,dis为不限于欧式距离的距离函数,计算得到的是第一距离。coord为单个目标文字块的坐标转换函数,转换包括但不限于对于目标文字块的中心坐标进行加权,返回转换后的坐标值。adjust为距离调整函数,返回基于s1,s2文字块的置信度调整后的第二距离。
步骤S233:根据任意两个目标文字块之间的第二距离,通过聚类算法将所有目标文字块聚类得到多个簇。
其中,聚类算法可以是密度聚类算法(例如dbscan)。根据所有目标文字块两两之间的第二距离,如果一个目标文字块e的ε邻域(与目标文字块e的距离小于预设值ε的区域内)包含多于m个目标文字块,则创建一个e作为核心对象的新簇;2、寻找并合并核心对象直接密度可达的对象;3、没有新目标文字块可以更新簇的时候,算法结束。其中,直接密度可达(directly density-reachable)是指:给定一个对象集合D,如果对象集合中样本b是在样本a的ε邻域内,而且样本a是一个核心对象,可以说样本b从样本a出发是直接密度可达的。由此所有目标文字块可以通过密度距离算法,划分成多个簇。
步骤S240:根据每个簇内包含的目标文字块,得到所述多个关键词对应的检索结果。
在一实施例中,同一簇内的目标文字块可以认为处于同一个逻辑行或逻辑列。检索结果可以包括包围同一个簇的目标文字块的最小外接矩形框,也可以包括该最小外接矩形框中所有的目标文字块所在区域,还可以包括目标文字块的文字内容。
为了在保证召回的情况下最大程度提高查询的精准度,在上述步骤S240之前,如图4所示,还可以执行以下步骤S410-步骤S430。
步骤S410:根据每个簇内的目标文字块命中的关键词个数,将所有簇进行分组。
其中,如果一个目标文字块包含的字符串包含关键词,则认为这个目标文字块命中了关键词。命中关键词个数相同的簇可以划分到一个组。
举例来说,假设有三个簇C1、C2、C3,对于C1这个簇,假设簇内所有的目标文字块命中的关键词有“连续式真空镀机”、“AR线”,“4635000”,对于C2这个簇,簇内所有的目标文字块命中的关键词有“连续式真空镀机”、“AR线”,“05872132”,对于C3这个簇,簇内所有的目标文字块命中的关键词有“AR线”、“058722323”。此时,簇C1命中的关键词个数KN为3,簇C2命中的关键词个数KN为3,簇C3命中的关键词个数KN为2,那么,在这个例子中可以有两个分组G,第一个分组G1包括C1和C2,第二个分组G2包括C3。此时,第一个分组G1的KN为3,第二个分组G2的KN为2。
步骤S420:针对任一目标组,根据目标组内簇的最大置信度,对所述目标组内的簇进行过滤。
其中,目标组是指步骤S410所有分组中的任意一个组,为进行区分,称为目标组。目标组内簇的最大置信度是指目标组内所有目标文字块的置信度的最大值。
在一实施例中,可以根据每个簇包含的目标文字块的置信度,计算得到每个簇的平均置信度。针对任一目标组,根据所述目标组内指定簇的平均置信度和所述目标组内簇的最大置信度,若所述指定簇命中的关键词被所述目标组内其余簇命中的关键词完全覆盖,且,所述指定簇的平均置信度减去所述目标组内簇的最大置信度的差值大于第二阈值,则删除所述指定簇。
其中,簇的平均置信度是指簇中所有目标文字块的置信度的算术平均数。指定簇是指目标组中的任意一个簇,为进行区分,称为指定簇。指定簇命中的关键词被目标组内其余簇命中的关键词完全覆盖是指目标组内其余任一簇命中的关键词包含了指定簇命中的所有关键词。举例来说,假设簇C4命中的关键词有“上海,北京”、簇C5命中的关键词有“上海,天津,北京”,可以认为簇C4被簇C5完全覆盖。假设簇C4命中的关键词有“上海,北京”、簇C6命中的关键词有“上海,天津”,则认为C4未被C6完全覆盖。
举例来说,针对一个目标组G中的指定簇C4,若指定簇C4命中的关键词被目标组G内簇C5的关键词完全覆盖,且,指定簇C4的平均置信度减去所述目标组内簇的最大置信度的差值大于第二阈值,则删除所述指定簇C4,否则保留指定簇C4。第二阈值可以是0.5。
步骤S430:根据除所述目标组外,其余组的平均置信度,对所述目标组内的簇进行过滤。
需要说明的是,上述步骤S420是根据组内簇的最大置信度,对组内的簇进行过滤,而步骤S430是根据组外簇的平均置信度,对组内的簇进行过滤。组间过滤采用平均置信度是因为平均值相对最大值更容易召回,不遗漏。组内过滤时,因为组内的簇命中的关键词个数相同,所以要求更加严格。在其他实施例中,也可以根据组外簇的最大置信度,对组内的簇进行过滤。
在一实施例中,如图5所示,上述步骤S430具体包括:
步骤S431:根据所述目标组内单个簇对应命中的第一关键词个数,从其余分组中筛选出组内单个簇命中关键词个数大于所述第一关键词个数的指定分组。
需要说明的是,同一个组内每个簇命中关键词的个数是相等的,才会划分到一个组。其中,其余分组是指所有分组中除目标组以外的分组。目标组内单个簇命中的关键词个数称为第一关键词个数。对于目标组G1,假设存在除目标组G1以外的任意一个分组G2,G2中单个簇命中的关键词个数KN2大于G1中单个簇命中的关键词个数KN1,则分组G2认为是筛选出的指定分组GS。指定分组GS可能有一个或多个。
步骤S432:根据所述指定分组包含的簇,以及每个簇包含的目标文字块的置信度,计算得到所述指定分组的平均置信度。
指定分组GS的平均置信度可以是指定分组GS中所有簇包含的目标文字块的置信度的算术平均值。
步骤S433:针对任一目标组,根据所述目标组内指定簇的平均置信度和所述指定分组的平均置信度,若所述指定簇命中的关键词被所述指定分组内簇命中的关键词完全覆盖,且,所述指定簇的平均置信度减去所述指定分组的平均置信度的差值大于第三阈值,则删除所述指定簇。
举例来说,目标组G1中的指定簇可以记为C1,C1平均置信度参见上文可以是C1中所有目标文字块的置信度的算术平均值。
如果指定分组GS中任意一个簇命中的关键词包含了指定簇C1命中的关键词,则认为指定簇命中的关键词被指定分组内簇命中的关键词完全覆盖。并且,指定簇的平均置信度减去指定分组的平均置信度的差值大于第三阈值,第三阈值可以是0.5,则删除指定簇C1,上述两个条件任意一个不满足,则保留指定簇C1。由此可以根据组外簇的平均置信度和组内簇的最大置信度,对组内置信度较低的簇进行丢弃,保留置信度较高的簇,提高检索的准确性。
在经过上述对簇的过滤后,针对剩余的簇,可以根据同一簇内包含的目标文字块的坐标位置信息,构建同一簇内包含的目标文字块的最小外接矩形(该最小外接矩形内包含同一簇内的所有目标文字块);将所述最小外接矩形和/或所述最小外接矩形内所有的目标文字块进行突出显示。
如图6所示,是一张包含表格的图片,从图中可以看出,表格包含的信息量非常大,包含多行多列。通过OCR解析工具可以检测出该图片中包含的候选文字块,参见图6,候选文字块可以是每个字符串的最小外接矩形。
假设输入的关键词包括“双由令球阀”,“PN10”,如图7所示,可以匹配得到目标文字块有“双由令球阀”和“DN65 PN10”,由于显示范围有限,其余目标文字块未示出。
如图8所示,“双由令球阀”和“DN65 PN10”这两个目标文字块由于距离相近,被划分为同一个簇,从而构建了包含这两个目标文字块的最小外接矩形,在一实施例中,可以该最小外接矩形进行突出显示。在一实施例中,还可以对最小外接矩形内所有的目标文字块进行突出显示。目标文字块突出显示的方式,可以包括高亮显示目标文字块所在区域的边框,还可以包括在目标文字块的预设范围内高亮显示目标文字块包含的文字内容。具体文字内容可以通过OCR识别得到。多个关键词的检索结果可以采用图7所示的方式进行展示。最小外接矩形的突出显示可以很好的提高匹配的精准率,尤其在多关键词组合查询的情况下可以更好的贴近期望匹配到的表格中的行/区域。进而可以解决包含表格的文档在基于机器学习的通用表格识别和提取方案中效果不理想的问题,尤其在以下几种情况下:1. 文档过长需要切分:通用的表格识别模型对于框线以及表格完整性比较敏感,所以切分的位置如果错误,会直接影响表格识别结果。2. 复杂表格版式:跨多行,多列的情况。3. 一个单元格内存在多个待查询字段。
非结构化文档版式相对复杂,如果使用深度学习模型要达到实际可用的水平实施周期长,成本高并且还存在训练需要的业务数据不足等不确定因素。而本申请实施例提供的方法,由于无需创建多样化的版式,无需进行复杂的深度学习过程,可以显著的减少信息检索时间和复杂度,并且把对业务数据的依赖降到最低。本申请提出的方法可以兼容各种版式的文档和图片,具有广泛的应用场景。对于簇按照本申请的方式进行过滤,可以在保证召回的情况下最大程度提高查询的精准度。不仅对文字块进行高亮显示,还可以对包含文字块的最小外接矩形进行高亮,可以帮助用户理解多个关键词的组合关系,更贴近传统数据搜索应用,更直观。
下述为本申请装置实施例,可以用于执行本申请上述文档中的信息检索方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请文档中的信息检索方法实施例。
图9为本申请一实施例示出的文档中的信息检索装置的框图。如图9所示,该装置包括:
文档解析模块710,用于对待处理文档进行解析,获得包含坐标位置信息的多个候选文字块;
模糊匹配模块720,用于根据输入的多个关键词,将所述候选文字块与所述关键词进行模糊匹配,筛选出置信度大于第一阈值的目标文字块;
文字聚类模块730,用于根据每个目标文字块的坐标位置信息和置信度,将所有目标文字块进行聚类,得到多个簇;
结果输出模块740,用于根据每个簇内包含的目标文字块,得到所述多个关键词对应的检索结果。
上述装置中各个模块的功能和作用的实现过程具体详见上述文档中的信息检索方法中对应步骤的实现过程,在此不再赘述。
在本申请所提供的几个实施例中,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (8)
1.一种文档中的信息检索方法,其特征在于,包括:
对待处理文档进行解析,获得包含坐标位置信息的多个候选文字块;
根据输入的多个关键词,将所述候选文字块与所述关键词进行模糊匹配,筛选出置信度大于第一阈值的目标文字块;
根据每个目标文字块的坐标位置信息和置信度,将所有目标文字块进行聚类,得到多个簇;
根据每个簇内包含的目标文字块,筛选得到所述多个关键词对应的检索结果;
其中,所述根据每个目标文字块的坐标位置信息和置信度,将所有目标文字块进行聚类,得到多个簇,包括:
针对任意两个目标文字块,根据每个所述目标文字块的坐标位置信息,计算所述两个目标文字块之间的第一距离;
根据每个所述目标文字块的置信度,对所述第一距离进行调整,得到所述两个目标文字块之间的第二距离;
根据任意两个目标文字块之间的第二距离,通过聚类算法将所有目标文字块聚类得到多个簇;
其中,所述针对任意两个目标文字块,根据每个所述目标文字块的坐标位置信息,计算所述两个目标文字块之间的第一距离,包括:
根据每个目标文字块的坐标位置信息,通过坐标转换函数调整每个目标文字块的坐标值;
根据每个目标文字块的坐标值,计算所述任意两个目标文字块之间的第一距离;
其中,所述根据每个目标文字块的坐标位置信息,通过坐标转换函数调整每个目标文字块的坐标值,包括:
根据每个目标文字块的中心坐标,对所述中心坐标的横坐标值和纵坐标值进行加权,得到每个目标文字块调整后的坐标值。
2.根据权利要求1所述的方法,其特征在于,所述根据输入的多个关键词,将所述候选文字块与所述关键词进行模糊匹配,筛选出置信度大于第一阈值的目标文字块,包括:
针对任一候选文字块和任一关键词,计算所述候选文字块和所述关键词之间的第一相似度;
根据所述关键词与所述候选文字块之间的共同字符,计算所述共同字符与所述关键词之间的第二相似度;
根据所述第一相似度和第二相似度,计算所述候选文字块与关键词相匹配的置信度,并将置信度大于第一阈值的候选文字块作为所述目标文字块。
3.根据权利要求1所述的方法,其特征在于,在所述根据每个簇内包含的目标文字块,筛选得到所述多个关键词对应的检索结果之前,所述方法还包括:
根据每个簇内的目标文字块命中的关键词个数,将所有簇进行分组;
针对任一目标组,根据目标组内簇的最大置信度,对所述目标组内的簇进行过滤;
根据除所述目标组外,其余组的平均置信度,对所述目标组内的簇进行过滤。
4.根据权利要求3所述的方法,其特征在于,所述针对任一目标组,根据目标组内簇的最大置信度,对所述目标组内的簇进行过滤,包括:
根据每个簇包含的目标文字块的置信度,计算得到每个簇的平均置信度;
针对任一目标组,根据所述目标组内指定簇的平均置信度和所述目标组内簇的最大置信度,若所述指定簇命中的关键词被所述目标组内其余簇命中的关键词完全覆盖,且,所述指定簇的平均置信度减去所述目标组内簇的最大置信度的差值大于第二阈值,则删除所述指定簇。
5.根据权利要求3所述的方法,其特征在于,所述根据除所述目标组外,其余组的平均置信度,对所述目标组内的簇进行过滤,包括:
根据所述目标组内单个簇对应命中的第一关键词个数,从其余分组中筛选出组内单个簇命中关键词个数大于所述第一关键词个数的指定分组;
根据所述指定分组包含的簇,以及每个簇包含的目标文字块的置信度,计算得到所述指定分组的平均置信度;
针对任一目标组,根据所述目标组内指定簇的平均置信度和所述指定分组的平均置信度,若所述指定簇命中的关键词被所述指定分组内簇命中的关键词完全覆盖,且,所述指定簇的平均置信度减去所述指定分组的平均置信度的差值大于第三阈值,则删除所述指定簇。
6.根据权利要求3所述的方法,其特征在于,所述根据每个簇内包含的目标文字块,筛选得到所述多个关键词对应的检索结果,包括:
针对剩余的簇,根据同一簇内包含的目标文字块的坐标位置信息,构建同一簇内包含的目标文字块的最小外接矩形;
对所述最小外接矩形和/或所述最小外接矩形内所有的目标文字块进行突出显示。
7.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-6任意一项所述的文档中的信息检索方法。
8.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成权利要求1-6任意一项所述的文档中的信息检索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211050540.1A CN115114412B (zh) | 2022-08-31 | 2022-08-31 | 文档中的信息检索方法及电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211050540.1A CN115114412B (zh) | 2022-08-31 | 2022-08-31 | 文档中的信息检索方法及电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115114412A CN115114412A (zh) | 2022-09-27 |
CN115114412B true CN115114412B (zh) | 2022-11-08 |
Family
ID=83335752
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211050540.1A Active CN115114412B (zh) | 2022-08-31 | 2022-08-31 | 文档中的信息检索方法及电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115114412B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108416279A (zh) * | 2018-02-26 | 2018-08-17 | 阿博茨德(北京)科技有限公司 | 文档图像中的表格解析方法及装置 |
CN110688825A (zh) * | 2019-08-13 | 2020-01-14 | 北京众信博雅科技有限公司 | 一种版式文档中的含线表格信息提取方法 |
CN113157869A (zh) * | 2021-05-06 | 2021-07-23 | 日照蓝鸥信息科技有限公司 | 一种文档精准定位检索方法及系统 |
CN113468316A (zh) * | 2021-06-07 | 2021-10-01 | 广发银行股份有限公司 | 一种快速检索svn文档库的方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5295605B2 (ja) * | 2008-03-27 | 2013-09-18 | 株式会社東芝 | 検索キーワード改良装置、サーバ装置、および方法 |
-
2022
- 2022-08-31 CN CN202211050540.1A patent/CN115114412B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108416279A (zh) * | 2018-02-26 | 2018-08-17 | 阿博茨德(北京)科技有限公司 | 文档图像中的表格解析方法及装置 |
CN110688825A (zh) * | 2019-08-13 | 2020-01-14 | 北京众信博雅科技有限公司 | 一种版式文档中的含线表格信息提取方法 |
CN113157869A (zh) * | 2021-05-06 | 2021-07-23 | 日照蓝鸥信息科技有限公司 | 一种文档精准定位检索方法及系统 |
CN113468316A (zh) * | 2021-06-07 | 2021-10-01 | 广发银行股份有限公司 | 一种快速检索svn文档库的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115114412A (zh) | 2022-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111143479B (zh) | 基于dbscan聚类算法的知识图谱关系抽取与rest服务可视化融合方法 | |
WO2022116537A1 (zh) | 一种资讯推荐方法、装置、电子设备和存储介质 | |
CN111026671B (zh) | 测试用例集构建方法和基于测试用例集的测试方法 | |
CN105824959B (zh) | 舆情监控方法及系统 | |
Dong et al. | Tablesense: Spreadsheet table detection with convolutional neural networks | |
CN111177591B (zh) | 面向可视化需求的基于知识图谱的Web数据优化方法 | |
CN113297975A (zh) | 表格结构识别的方法、装置、存储介质及电子设备 | |
WO2015149533A1 (zh) | 一种基于网页内容分类进行分词处理的方法和装置 | |
Rastan et al. | TEXUS: A unified framework for extracting and understanding tables in PDF documents | |
CN111428494A (zh) | 专有名词的智能纠错方法、装置、设备及存储介质 | |
US20150199567A1 (en) | Document classification assisting apparatus, method and program | |
JP2022191412A (ja) | マルチターゲット画像テキストマッチングモデルのトレーニング方法、画像テキスト検索方法と装置 | |
CN107526721B (zh) | 一种对电商产品评论词汇的歧义消除方法及装置 | |
CN109857957B (zh) | 建立标签库的方法、电子设备及计算机存储介质 | |
CN111666766A (zh) | 数据处理方法、装置和设备 | |
CN109840255A (zh) | 答复文本生成方法、装置、设备及存储介质 | |
CN112465020A (zh) | 训练数据集的生成方法及装置、电子设备、存储介质 | |
JP2022541199A (ja) | データテーブルの画像表現に基づいて構造化されたデータベースにデータ挿入するためのシステムおよび方法。 | |
CN110489032B (zh) | 用于电子书的词典查询方法及电子设备 | |
CN113836316B (zh) | 三元组数据的处理方法、训练方法、装置、设备及介质 | |
Babatunde et al. | Automatic table recognition and extraction from heterogeneous documents | |
CN113343658B (zh) | 一种pdf文件信息抽取方法、装置以及计算机设备 | |
CN115114412B (zh) | 文档中的信息检索方法及电子设备、存储介质 | |
CN116225956A (zh) | 自动化测试方法、装置、计算机设备和存储介质 | |
CN115730158A (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 |