CN115599885A - 文档全文检索方法、装置、计算机设备、存储介质及产品 - Google Patents
文档全文检索方法、装置、计算机设备、存储介质及产品 Download PDFInfo
- Publication number
- CN115599885A CN115599885A CN202211278972.8A CN202211278972A CN115599885A CN 115599885 A CN115599885 A CN 115599885A CN 202211278972 A CN202211278972 A CN 202211278972A CN 115599885 A CN115599885 A CN 115599885A
- Authority
- CN
- China
- Prior art keywords
- document
- sliced
- initial
- word
- determining
- 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.)
- Pending
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/31—Indexing; Data structures therefor; Storage structures
- G06F16/316—Indexing structures
- G06F16/319—Inverted lists
-
- 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/284—Lexical analysis, e.g. tokenisation or collocates
-
- 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)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本文涉及金融科技领域,尤其涉及文档全文检索方法、装置、计算机设备、存储介质及产品,方法包括:获取初始文档,对所述初始文档进行切片后得到切片文档;确定所述切片文档的编号;根据预先建立的文档关键词提取模型,确定所述切片文档中的关键词;根据所述切片文档的编号及所述关键词,建立倒序索引表;根据所述倒序索引表,检索初始文档中包含的关键词。本方案通过将文件进行分页切分,以每页为维度进行分词处理,内存占用大幅减少,同时能多分页并行处理,加快抽取关键词处理速度。结合深度学习模型,准确快速获取文档中的关键词,配合分组和索引,支持托管档案大文件的快速全文检索。
Description
技术领域
本文涉及金融科技领域,尤其是文档全文检索方法、装置、计算机设备、存储介质及产品。
背景技术
托管档案往往单个档案原文较大,整体数量较多,在档案检索的时,根据特定关键字搜索档案原文内并进行全文检索的需求是托管档案检索领域常用的方法。
当前公开的一些全文检索方法,多是基于开源的全文检索软件进行分词检索,或针对页数较多的文件将文件切割之后计算切片文件的特征值,根据特征值进行匹配检索。其中,开源的全文检索软件适用于数量较多、可直接读取文字的小文件,无法针对扫描版本的pdf进行内容提取,且文件页数较多时整个文件进行全文检索分词时需要消耗大量的内存,容易造成全文检索响应时间长、内存溢出,影响系统稳定等问题。
另外,同类型的托管档案类文档内容和形式上有一定共性,通过切分文件后向量化方法得到的文本特征建立索引进行检索,难以得到显著的区分度。例如:合同类的托管档案,两个文档采用同样的模板,除了部分关键词不同之外,其他部分的文字基本一样,通过特征值建立索引检索很难进行区分。
针对目前技术存在的全文检索效率低、占用内存大、难以区分同类型文档的问题,需要一种文档全文检索方法。
发明内容
为解决上述现有技术的问题,本文实施例提供了一种文档全文检索方法、装置及计算机设备。
本文实施例提供了一种文档全文检索方法,所述方法包括:获取初始文档,对所述初始文档进行切片后得到切片文档;确定所述切片文档的编号;根据预先建立的文档关键词提取模型,确定所述切片文档中的关键词;根据所述切片文档的编号及所述关键词,建立倒序索引表;根据所述倒序索引表,检索初始文档中包含的关键词。
根据本文实施例的一个方面,所述文档关键词提取模型的构建方法包括:获取历史样本文档,确定模型训练的训练样本集,所述训练样本集包括历史样本文档中的样本词向量、各样本词向量对应的预先标注的词标签及各样本词向量在所述历史样本文档中的位置;根据BERT及CRF算法构建文档关键词提取初始模型,将所述训练样本集输入至所述文档关键词提取初始模型,输出得到各样本词向量属于不同词标签的概率;根据各样本词向量属于不同词标签的概率及文档关键词提取初始模型的损失函数,训练所述文档关键词提取初始模型,得到训练完成的文档关键词提取模型。
根据本文实施例的一个方面,根据所述历史样本文档,确定模型训练的训练样本集包括:对所述历史样本文档进行切片,得到历史样本切片文档;对所述历史样本切片文档中的文本进行文本分词,得到文本分词的样本词向量;对所述样本词向量的标注词标签及所述样本的词标签在历史样本文档中的位置,所述样本词向量、所述词标签及所述样本词标签在历史样本文档中的位置为将所述训练样本集。
根据本文实施例的一个方面,所述对所述初始文档进行切片处理包括:扫描所述初始文档,将所述初始文档转化为图片形式;识别图片形式的初始文档中的文字信息;按照页面容量,将文字信息处理为切片文档。
根据本文实施例的一个方面,在确定切片文档中的关键词之前,所述方法还包括:对切片文档中的文本进行分词;对所述分词进行嵌入表示,得到切片文档中所有词的向量表示。
根据本文实施例的一个方面,所述方法进一步包括:预先确定待标注词,所述待标注词包括公司名称、存款金额、托管期限;根据命名实体规则,将所述待标注词标记为不同类型的词标签。
根据本文实施例的一个方面,所述词标签进一步划分为首字标签、中间字标签及末字标签。
根据本文实施例的一个方面,所述方法进一步包括:为不同的初始文档确定文档编号;按照切片顺序,为同一初始文档的多个切片文档确定切片文档编号;根据文档编号及切片文档编号,确定多个切片文档与所述初始文档的关联关系。
根据本文实施例的一个方面,所述方法进一步包括:将切片文档进行分组,得到多组切片文档;将所述多组切片文档分别输入至所述文档关键词提取模型,确定多组切片文档中的关键词。
根据本文实施例的一个方面,根据所述倒序索引表,确定初始文档中包含的关键词包括:根据倒序索引表中的切片文档的编号,确定所述切片文档中包含的所有关键词;根据切片文档与所述初始文档的关联关系,确定初始文档中包含的所有关键词。
根据本文实施例的一个方面,所述方法还包括:根据所述倒序索引表,确定某一关键词所属的所有切片文档及所述关键词在所述切片文档中的位置;根据切片文档与所述初始文档的关联关系,确定某一关键词所属的初始文档及所述关键词在所述初始文档中的位置。
本文实施例还提供了一种文档全文检索装置,所述装置包括:切片文档确定单元,用于获取初始文档,对所述初始文档进行切片后得到切片文档;切片文档编号确定单元,用于确定所述切片文档的编号;关键词确定单元,用于根据预先建立的文档关键词提取模型,确定所述切片文档中的关键词;倒序索引表建立单元,用于根据所述切片文档的编号及所述关键词,建立倒序索引表;关键词检索单元,用于根据所述倒序索引表,检索初始文档中包含的关键词。
本文实施例还提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述文档全文检索方法。
本文实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述文档全文检索方法。
本文实施例还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现所述文档全文检索方法。
本方案通过将文件进行分页切分,以每页为维度进行分词处理,内存占用大幅减少,同时能多分页并行处理,加快抽取关键词处理速度。结合深度学习模型,准确快速获取文档中的关键词,配合分组和索引,支持托管档案大文件的快速全文检索。
附图说明
为了更清楚地说明本文实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本文的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1所示为本文实施例一种文档全文检索的方法流程图;
图2所示为本文实施例一种文档关键词提取模型的方法流程图;
图3所示为本文实施例一种确定模型的训练样本集的方法流程图;
图4所示为本文实施例对初始文档进行切片处理的方法流程图;
图5所示为本文实施例一种标记词标签的方法流程图;
图6所示为本文实施例一种确定文档编号的方法流程图;
图7所示为本文实施例一种确定初始文档中的关键词的方法流程图;
图8所示为本文实施例一种确定关键词位置的方法流程图;
图9所示为本文实施例一种文档全文检索装置的结构示意图;
图10所示为本文实施例文档全文检索装置的具体结构示意图;
图11所示为本文实施例一种计算机设备的结构示意图。
附图符号说明:
901、切片文档获取单元;
9011、初始文档转化模块;
9012、文字信息识别模块;
9013、切片文档处理模块;
902、切片文档编号确定单元;
903、关键词确定单元;
9031、训练样本集确定模块;
9032、文档关键词提取初始模型构建模块;
9033、文档关键词提取模型训练模块;
904、倒序索引表建立单元;
905、检索单元;
1102、计算机设备;
1104、处理器;
1106、存储器;
1108、驱动机构;
1110、输入/输出模块;
1112、输入设备;
1114、输出设备;
1116、呈现设备;
1118、图形用户接口;
1120、网络接口;
1122、通信链路;
1124、通信总线。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本文实施例中的附图,对本文实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本文一部分实施例,而不是全部的实施例。基于本文中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本文保护的范围。
需要说明的是,本文的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本文的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、装置、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或装置产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行。
需要说明的是,本文的文档全文检索方法可用于金融科技领域,也可以用于软件开发领域,本文对文档全文检索方法及装置的应用领域不做限定。
图1所示为本文实施例一种文档全文检索方法的流程图,具体包括如下步骤:
步骤101,获取初始文档,对所述初始文档进行切片后得到切片文档。在本说明书的一些实施例中,初始文档为合同、技术文档、使用手册、指南等原文内容较多的文档。在本步骤中,初始文档可以是托管档案。具体的,托管档案是证券、基金、投资等资产公司将资产托管到银行等金融单位,并签订、交互的一系列合约、协议、支付支付指令的资料。基于此,初始文档可以包括合约信息、指令任务、资金账户报告、协议存款合同等。
在本说明书的一些实施例中,初始文档原文内容较大、页数较多,且文件格式大多数为pdf格式。在档案检索时,业务人员有通过特定的业务关键字欧索档案原文是否包含该关键字,以进行全文检索的业务需求。因此,首先需要对原始文档进行切片,将一个完整的原始文件进行切片,得到切片后的原始文档。
步骤102,确定所述切片文档的编号。在本说明书中,将切片后的切片文档按照切片顺序依次进行编号。例如,初始文档1切片后得到1000个切片文档,根据切片顺序依次对切片文档进行编号,得到编号为1-1、1-2、1-3......1-998、1-999、1-10001的切片后的初始文档。又例如,初始文档2切片后得到200个初始文档,根据对初始文档2的切片顺序依次对文档进行编号。例如,得到编号为2-1、2-2、2-3......2-199、2-200的切片后的初始文档。
步骤103,根据预先建立的文档关键词提取模型,确定所述切片文档中的关键词。在本步骤中,根据业务人员日常的业务需求,通常对初始文档中的关键信息进行提取、分析。因此,本申请需要自动识别初始文档中的不同类型的关键词。例如,存在两个协议存款合同类型的托管文档的模版基本相同,两个文档中可能仅仅是文档关键词不同,例如,公司名称、存款金额、托管期限等,而其他部分的文字基本相同。因此,本步骤训练文档关键词提取模型,确定切片文档中的关键词。利用文档关键词提取模型,从切片文档中提取关键词。在本说明书中,也可以利用文档关键词提取模型,从初始文档中直接提取关键词。本申请对文档关键词提取模型的使用场景并不限定。
在本说明书的一些实施例中,在确定切片文档中的关键词之前,所述方法还包括:对切片文档中的文本进行分词;对所述分词进行嵌入表示,得到切片文档中所有词的向量表示。关于对切片文档中的内容进行分词、并将分词转换为词向量表示的描述详细可参考图2描述。关于文档关键词提取模型的训练过程及方法,在本文其他地方做了描述。详见图2描述。
步骤104,根据所述切片文档的编号及所述关键词,建立倒序索引表。具体的,根据步骤103中从切片文档中提取的关键词,建立倒序索引。其中,倒序索引为关键词-文档矩阵的形式。倒序索引表包括关键词列表及切片文档集合。关键词列表为切片文档集合中出现过的所有关键词的集合,切片文档集合为出现过某一个关键词的所有切片文档的集合及该关键词在各个切片文档中的位置。例如,有4个切片文档,分别为A1、A2、A3和A4,通过文档关键词提取模型对这4个切片文档同时进行关键字提取,提取到这4个切片文档中的关键词有3个,分别为“金额”、“合同”、“出售”。其中,“金额”在A1和A4中出现,“合同”在4个切片文档中均出现,“出现”在A2、A3、A4中出现。因此,基于如下表1的倒序索引表。
表1
A1 | A2 | A3 | A4 | |
金额 | √ | √ | ||
合同 | √ | √ | √ | √ |
出售 | √ | √ | √ |
进一步可以将表1的倒序索引表进行改进,得到如表2所示的倒序索引表。
表2
关键词编号 | 关键词 | 倒序列表 |
1 | 金额 | A1,A4 |
2 | 合同 | A1,A2,A3,A4 |
3 | 出售 | A2,A3,A4 |
其中,对3个关键词分别制定关键词编号,对“金额”确定关键词编号1、对“合同”确定关键词编号2、对“出售”确定关键词编号3。进一步根据表1,在倒序列表中确定关键词编号1的“金额”出现过的切片文档的编号为A1、A4。其他关键词以此类推,以同样的方式进行处理。基于此,可以确定倒序索引表。在本说明书中,通过建立倒序索引表,建立关键词与文档的映射关系,能够快速通过关键词定位到对应的切片文档,能够加快基于关键词的文档检索速度。
步骤105,根据所述倒序索引表,检索初始文档中包含的关键词。根据倒序索引表,可以确定包含关键词的文档、某文档中一共包含了哪些关键词。
图2所示为本文实施例一种文档关键词提取模型的方法流程图,具体包括如下步骤:
步骤201,获取历史样本文档,确定模型训练的训练样本集,所述训练样本集包括历史样本文档中的样本词向量、各样本词向量对应的预先标注的词标签及各样本词向量在所述历史样本文档中的位置。在本步骤中,通过人工标注过的历史样本文档进行模型训练。其中,对历史样本文档分词,并对历史样本文档的分词进行词向量表示,得到历史样本文档的样本词向量。具体的,可以使用jieba模块、hanlp模块等方式对历史样本文档中的内容进行分词,分词的方式包括但不限于:精确分词、全模式分词、搜索引擎模式分词、自定义词典分词、命名实体识别等。另外,对分词进行词向量表示可以利用one-hot独热编码、word2vec、skipgram模式、word embedding等方式将分词转换为分词向量。并进一步对各样本词向量进行人工标注,标注词向量的词标签及该词向量在当前历史样本文档中的位置。
例如,对历史样本文档中有一段话如下表示:A科技有限公司于合同起始日2022年9月起,每月向B金融公司支付人民币10万元,用于金融咨询服务,合同终止日为2022年12月31日。其中,对历史样本文档中的这段话进行分词,分别得到至少如下分词或其任意组合:A、A科技、有限公司、A科技有限公司、合同起始日、每月、B、B金融、B金融公司、支付、人民币、10万元、用于、金融、金融咨询、咨询服务、合同终止日、年、月、日等。进一步将上述分词转换为向量表示,得到上述分词的向量。进一步对这些分词的词向量进行人工标注词标签。其中,词标签为分词向量的类型,例如,词标签包括但不限于:普通字符、关键词字符、关键词开头字符、关键词中间字符、关键词结尾字符等。在本说明书的另外一些实施例中,词标签进一步可以敖阔:首字标签、中间字标签、末字标签等。
在上述例子中,对分词向量进行预标注。得到如下词标签:A-关键词开头字符、A科技-关键词中间字符、有限公司-关键词字符、A科技有限公司-关键词字符、合同起始日-关键词字符、每月-普通字符、B-关键词开头字符、B金融-关键词中间字符、B金融公司-关键词字符、支付-普通字符、人民币-关键词字符、10万元-关键词字符、用于-普通字符、金融-关键词开头字符、金融咨询-关键词中间字符、咨询服务-关键词字符、合同终止日-关键词字符、年-普通字符、月-普通字符、日-普通字符。
本步骤中,训练样本集还包括词向量在历史样本文档中的位置。例如,关键词“有限公司”在历史样本文档中在第几段、第几段第几个词。
步骤202,根据BERT及CRF算法构建文档关键词提取初始模型,将所述训练样本集输入至所述文档关键词提取初始模型,输出得到各样本词向量属于不同词标签的概率。在本步骤中,根BERT算法及CRF算法,确定文档关键词提取初始模型,并将步骤201中确定的训练样本集作为文档关键词提取初始模型的输入,得到初始模型的输出为训练样本集中各输入的词向量输入不同词标签的概率。其中,BERT将训练样本集中的分词处理为分词的向量表示,CRF算法进一步根据BERT处理得到的向量,输出向量对应不同词向量的概率。本步骤进一步选择概率最大的词标签,作为输入的样本词向量的词标签,进一步的,该输入的样本词向量所属的关键词类型即为该词标签。
例如,训练样本集中的分词包括:有限公司、人民币,经过文档关键词提取初始模型输出“有限公司”属于不同词标签的概率。其中,预先设定的词标签包括:关键词实体字符、普通字符-停用词、特殊符号等。文档关键词提取初始模型输出“有限公司”属于关键词实体字符的概率为0.9,属于普通字符-停用词的概率为0.2,属于特殊符号的概率为0.1。进一步的,若训练样本集中的分词为一段文本的分词,则可以分别确定这段文本中从第一个分词开始到最后一个分词中,各分词属于不同词标签的概率。
步骤203,根据各样本词向量属于不同词标签的概率及文档关键词提取初始模型的损失函数,训练所述文档关键词提取初始模型,得到训练完成的文档关键词提取模型。具体的,基于损失函数对模型训练过程中,训练样本集中不同样本词向量属于不同的词标签的概率进行约束。不断迭代文档关键词提取初始模型的模型参数和结构,直到损失函数收敛到预设条件,确定文档关键词提取模型训练完成,得到训练好的文档关键词提取模型。
图3所示为本文实施例一种确定模型的训练样本集的方法流程图,具体包括如下步骤:
步骤301,对所述历史样本文档进行切片,得到历史样本切片文档。在本步骤中,对历史样本文档进行切片的方式与步骤101中相同,本步骤在此不作赘述。
步骤302,对所述历史样本切片文档中的文本进行文本分词,得到文本分词的样本词向量。在本步骤中,对历史样本切片文档中的文本进行文本分词,并得到分词的样本词向量的方式与步骤201中相同,本步骤在此不做赘述。
步骤303,对所述样本词向量的标注词标签及所述样本的词标签在历史样本文档中的位置,所述样本词向量、所述词标签及所述样本词标签在历史样本文档中的位置为将所述训练样本集。例如,训练样本集可以为如下表示:A科技有限公司于合同起始日2022年9月起,每月向B金融公司支付人民币10万元,用于金融咨询服务,合同终止日为2022年12月31日。训练样本集可以是:A科技有限公司-关键词字符-文档中第3行第10个词、合同起始日-关键词字符-文档中第3行第12个词、B金融公司-关键词中间字符-文档中第3行第15个词、支付-普通字符-文档中第3行第20个词、人民币-关键词字符-文档中第4行第2个词等。本申请对训练样本集的形式及内容不作限定。
图4所示为本文实施例一种对初始文档进行切片处理的方法流程图,具体包括如如下步骤:
步骤401,扫描所述初始文档,将所述初始文档转化为图片形式。在本说明书的一些实施例中,初始文档通常为pdf格式,通过扫描pdf格式的初始文档,将初始文档转化为图片形式。例如,一个初始文档原本为100页的pdf格式的文档,将该初始文档转化为图片后,得到100张图片,形成由100张图片组成的文档。
步骤402,识别图片形式的初始文档中的文字信息。具体的,利用OCR技术识别pdf格式的初始文档,得到初始文档中的文字内容。
步骤403,根据页面容量,将文字信息处理为切片文档。在本说明书中,初始文档转换为图片形式之后,页数比较多,在后续步骤中若一次性对文档进行分词,存在内存占用大的问题。因此,将文档进行分页,并将分页后的文档分组存储。例如,将分页后的文档平均分为5份,以便在后续利用文档关键词提取模型进行关键词提取的时候,可以多组同步进行关键词提取,提高计算效率。
图5所示为本文实施例一种标记词标签的方法流程图,具体包括如下步骤:
步骤501,预先确定待标注词,所述待标注词包括公司名称、存款金额、托管期限。本步骤为基于步骤201的延伸。在确定训练样本集时,需要对各样本词向量确定预先标注的词标签。该词标签可以基于具有的待标注词处理后得到的标签。其中,待标注词可以是一类概括性的词的类型,也可以是具体的词,包括但不限于:公司名称、甲乙双方名称、业务类型、业务涉及的金额、合同类型、托管合同涉及的期限等。
步骤502,根据命名实体规则,将所述待标注词标记为不同类型的词标签。本步骤基于实体命名规则,将待标注词分为首字、中间字、末字等词标签。
图6所示为本文实施例一种确定文档编号的方法流程图,具体包括如下步骤:
步骤601,为不同的初始文档确定文档编号。如前文所述,可以为不同的初始文档确定不同的文档编号。例如,初始文档A的文档编号为1,初始文档B的文档编号为2,初始文档C的文档编号为3。
步骤602,按照切片顺序,为同一初始文档的多个切片文档确定切片文档编号。如前文所述,对初始文档进行切片,并得到切片文档后,进一步对切片文档确定切片文档编号。例如,初始文档A的文档编号为1,对初始文档A进行切片后,得到100各切片文档,则初始文档A的切片文档的切片文档编号为A-1、A-2、A-3......A-99、A-100。在本说明书中,可以对单个内容较多、数据量较大的单个初始文档进行分页切分,并对该初始文档进行分组存储,以便在计算词序列时可以多组并行,提高计算效率。
步骤603,根据文档编号及切片文档编号,确定多个切片文档与所述初始文档的关联关系。本步骤中,根据初始文档的文档编号及切片文档的切片文档编号之间的关系,可以确定切片文档和初始文档的关系。例如,根据切片文档的切片文档编号A-10,可以确定该切片文档是初始文档A的切片。
图7所示为本文实施例一种确定初始文档中的关键词的方法流程图,具体包括如下步骤:
步骤701,根据倒序索引表中的切片文档的编号,确定所述切片文档中包含的所有关键词。根据前文所述的倒序索引表,可以通过切片文档的编号,确定各切片文档中包含的关键词。例如,根据步骤104中的表1,可以明确获知切片文档A1中包含的关键词为“金额”、“合同”;可以获知切片文档A3中包含的关键词为“合同”、“出售”。
步骤702,根据切片文档与所述初始文档的关联关系,确定初始文档中包含的所有关键词。根据切片文档的切片文档编号及初始文档的初始文档编号,可以确定切片文档是属于哪一个初始文档的。例如,根据切片文档编号A1,可以确定切片文档属于初始文档A;根据切片文档A2、A3……An,可以确定这些切片文档均属于初始文档A。因此,可以根据步骤701中确定的切片文档中包含的关键词,进一步确定初始文档中包含的关键词,及关键词在初始文档中整体出现的次数及位置。
图8所示为本文实施例一种确定关键词位置的方法流程图,具体包括如下步骤:
步骤801,根据所述倒序索引表,确定某一关键词所属的所有切片文档及所述关键词在所述切片文档中的位置。根据步骤104所述的倒序索引表,如表2,可以直接确定该索引表中包含的关键词分别在哪些切片文档中出现;可以确定关键词在各切片文档中出现的次数及关键词在各切片文档中的位置。
步骤802,根据切片文档与所述初始文档的关联关系,确定某一关键词所属的初始文档及所述关键词在所述初始文档中的位置。通过切片文档的切片文档编号与初始文档的初始文档编号之间的关联关系,可以将关键词定位到初始文档。具体步骤与步骤702相类似,本步骤在此不作赘述。
如图9所示为本文实施例一种文档全文检索装置的结构示意图,在本图中描述了文档全文检索装置的基本结构,其中的功能单元、模块可以采用软件方式实现,也可以采用通用芯片或者特定芯片实现文档全文检索,该装置具体包括:
切片文档获取单元901,用于获取初始文档,对所述初始文档进行切片后得到切片文档;
切片文档编号确定单元902,用于确定所述切片文档的编号;
关键词确定单元903,用于根据预先建立的文档关键词提取模型,确定所述切片文档中的关键词;
倒序索引表建立单元904,用于根据所述切片文档的编号及所述关键词,建立倒序索引表;
检索单元905,用于根据所述倒序索引表,检索初始文档中包含的关键词。
本方案通过将文件进行分页切分,以每页为维度进行分词处理,内存占用大幅减少,同时能多分页并行处理,加快抽取关键词处理速度。结合深度学习模型,准确快速获取文档中的关键词,配合分组和索引,支持托管档案大文件的快速全文检索。
作为本文的一个实施例,还可以参考如图10所示为本实施例文档全文检索装置的具体结构示意图。
作为本文的一个实施例,所述切片文档获取单元901进一步包括:
初始文档转化模块9011,用于扫描所述初始文档,将初始文档转化为图片形式;
文字信息识别模块9012,用于识别图片形式的初始文档中的文字信息;
切片文档处理模块9013,用于根据页面容量,将文字信息处理为切片文档。
作为本文的一个实施例,所述关键词确定单元903进一步包括:
训练样本集确定模块9031,用于获取历史样本文档,确定模型训练的训练样本集;
文档关键词提取初始模型构建模块9032,用于根据BERT及CRF算法构建文档关键词提取初始模型;
文档关键词提取模型训练模块9033,用于根据各样本词向量属于不同词标签的概率及文档关键词提取初始模型的损失函数,训练所述文档关键词提取初始模型。
如图11所示为本文实施例提供的一种计算机设备的结构示意图,本文所述文档全文检索方法可以应用于该计算机设备中。所述计算机设备1102可以包括一个或多个处理器1104,诸如一个或多个中央处理单元(CPU),每个处理单元可以实现一个或多个硬件线程。计算机设备1102还可以包括任何存储器1106,其用于存储诸如代码、设置、数据等之类的任何种类的信息。非限制性的,比如,存储器1106可以包括以下任一项或多种组合:任何类型的RAM,任何类型的ROM,闪存设备,硬盘,光盘等。更一般地,任何存储器都可以使用任何技术来存储信息。进一步地,任何存储器可以提供信息的易失性或非易失性保留。进一步地,任何存储器可以表示计算机设备1102的固定或可移除部件。在一种情况下,当处理器1104执行被存储在任何存储器或存储器的组合中的相关联的指令时,计算机设备1102可以执行相关联指令的任一操作。计算机设备1102还包括用于与任何存储器交互的一个或多个驱动机构1108,诸如硬盘驱动机构、光盘驱动机构等。
计算机设备1102还可以包括输入/输出模块1110(I/O),其用于接收各种输入(经由输入设备1112)和用于提供各种输出(经由输出设备1114)。一个具体输出机构可以包括呈现设备1116和相关联的图形用户接口(GUI)1118。在其他实施例中,还可以不包括输入/输出模块1110(I/O)、输入设备1112以及输出设备1114,仅作为网络中的一台计算机设备。计算机设备1102还可以包括一个或多个网络接口1120,其用于经由一个或多个通信链路1122与其他设备交换数据。一个或多个通信总线1124将上文所描述的部件耦合在一起。
通信链路1122可以以任何方式实现,例如,通过局域网、广域网(例如,因特网)、点对点连接等、或其任何组合。通信链路1122可以包括由任何协议或协议组合支配的硬连线链路、无线链路、路由器、网关功能、名称服务器等的任何组合。
对应于图1至图8中的方法,本文实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法的步骤。
本文实施例还提供一种计算机可读指令,其中当处理器执行所述指令时,其中的程序使得处理器执行如图1至图8所示的方法。
本文实施例还提供了一种计算机程序产品,计算机程序产品包括计算机程序,计算机程序被处理器执行时实现如图1至图8所示的方法。
应理解,在本文的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本文实施例的实施过程构成任何限定。
还应理解,在本文实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本文的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本文所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本文实施例方案的目的。
另外,在本文各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本文的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本文各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本文中应用了具体实施例对本文的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本文的方法及其核心思想;同时,对于本领域的一般技术人员,依据本文的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本文的限制。
Claims (15)
1.一种文档全文检索方法,其特征在于,所述方法包括:
获取初始文档,对所述初始文档进行切片后得到切片文档;
确定所述切片文档的编号;
根据预先建立的文档关键词提取模型,确定所述切片文档中的关键词;
根据所述切片文档的编号及所述关键词,建立倒序索引表;
根据所述倒序索引表,检索初始文档中包含的关键词。
2.根据权利要求1所述的文档全文检索方法,其特征在于,所述文档关键词提取模型的构建方法包括:
获取历史样本文档,确定模型训练的训练样本集,所述训练样本集包括历史样本文档中的样本词向量、各样本词向量对应的预先标注的词标签及各样本词向量在所述历史样本文档中的位置;
根据BERT及CRF算法构建文档关键词提取初始模型,将所述训练样本集输入至所述文档关键词提取初始模型,输出得到各样本词向量属于不同词标签的概率;
根据各样本词向量属于不同词标签的概率及文档关键词提取初始模型的损失函数,训练所述文档关键词提取初始模型,得到训练完成的文档关键词提取模型。
3.根据权利要求2所述的文档全文检索方法,其特征在于,根据所述历史样本文档,确定模型训练的训练样本集包括:
对所述历史样本文档进行切片,得到历史样本切片文档;
对所述历史样本切片文档中的文本进行文本分词,得到文本分词的样本词向量;
对所述样本词向量的标注词标签及所述样本的词标签在历史样本文档中的位置,所述样本词向量、所述词标签及所述样本词标签在历史样本文档中的位置为将所述训练样本集。
4.根据权利要求2所述的文档全文检索方法,其特征在于,所述对所述初始文档进行切片处理包括:
扫描所述初始文档,将所述初始文档转化为图片形式;
识别图片形式的初始文档中的文字信息;
按照页面容量,将文字信息处理为切片文档。
5.根据权利要求4所述的文档全文检索方法,其特征在于,在确定切片文档中的关键词之前,所述方法还包括:
对切片文档中的文本进行分词;
对所述分词进行嵌入表示,得到切片文档中所有词的向量表示。
6.根据权利要求1所述的文档全文检索方法,其特征在于,所述方法进一步包括:
预先确定待标注词,所述待标注词包括公司名称、存款金额、托管期限;
根据命名实体规则,将所述待标注词标记为不同类型的词标签。
7.根据权利要求6所述的文档全文检索方法,其特征在于,所述词标签进一步划分为首字标签、中间字标签及末字标签。
8.根据权利要求1所述的文档全文检索方法,其特征在于,所述方法进一步包括:
为不同的初始文档确定文档编号;
按照切片顺序,为同一初始文档的多个切片文档确定切片文档编号;
根据文档编号及切片文档编号,确定多个切片文档与所述初始文档的关联关系。
9.根据权利要求7所述的文档全文检索方法,其特征在于,所述方法进一步包括:
将切片文档进行分组,得到多组切片文档;
将所述多组切片文档分别输入至所述文档关键词提取模型,确定多组切片文档中的关键词。
10.根据权利要求9所述的文档全文检索方法,其特征在于,根据所述倒序索引表,确定初始文档中包含的关键词包括:
根据倒序索引表中的切片文档的编号,确定所述切片文档中包含的所有关键词;
根据切片文档与所述初始文档的关联关系,确定初始文档中包含的所有关键词。
11.根据权利要求10所述的文档全文检索方法,其特征在于,所述方法还包括:
根据所述倒序索引表,确定某一关键词所属的所有切片文档及所述关键词在所述切片文档中的位置;
根据切片文档与所述初始文档的关联关系,确定某一关键词所属的初始文档及所述关键词在所述初始文档中的位置。
12.一种文档全文检索装置,其特征在于,所述装置包括:
切片文档确定单元,用于获取初始文档,对所述初始文档进行切片后得到切片文档;
切片文档编号确定单元,用于确定所述切片文档的编号;
关键词确定单元,用于根据预先建立的文档关键词提取模型,确定所述切片文档中的关键词;
倒序索引表建立单元,用于根据所述切片文档的编号及所述关键词,建立倒序索引表;
关键词检索单元,用于根据所述倒序索引表,检索初始文档中包含的关键词。
13.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至11任意一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至11任意一项所述的方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现权利要求1至11任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211278972.8A CN115599885A (zh) | 2022-10-19 | 2022-10-19 | 文档全文检索方法、装置、计算机设备、存储介质及产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211278972.8A CN115599885A (zh) | 2022-10-19 | 2022-10-19 | 文档全文检索方法、装置、计算机设备、存储介质及产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115599885A true CN115599885A (zh) | 2023-01-13 |
Family
ID=84849515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211278972.8A Pending CN115599885A (zh) | 2022-10-19 | 2022-10-19 | 文档全文检索方法、装置、计算机设备、存储介质及产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115599885A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116503889A (zh) * | 2023-01-18 | 2023-07-28 | 苏州工业园区航星信息技术服务有限公司 | 档案及电子文件的处理方法、装置、设备及存储介质 |
CN117349472A (zh) * | 2023-10-24 | 2024-01-05 | 雅昌文化(集团)有限公司 | 基于xml文档的索引词提取方法、装置、终端及介质 |
-
2022
- 2022-10-19 CN CN202211278972.8A patent/CN115599885A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116503889A (zh) * | 2023-01-18 | 2023-07-28 | 苏州工业园区航星信息技术服务有限公司 | 档案及电子文件的处理方法、装置、设备及存储介质 |
CN116503889B (zh) * | 2023-01-18 | 2024-01-19 | 苏州工业园区航星信息技术服务有限公司 | 档案及电子文件的处理方法、装置、设备及存储介质 |
CN117349472A (zh) * | 2023-10-24 | 2024-01-05 | 雅昌文化(集团)有限公司 | 基于xml文档的索引词提取方法、装置、终端及介质 |
CN117349472B (zh) * | 2023-10-24 | 2024-05-28 | 雅昌文化(集团)有限公司 | 基于xml文档的索引词提取方法、装置、终端及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115599885A (zh) | 文档全文检索方法、装置、计算机设备、存储介质及产品 | |
US10789281B2 (en) | Regularities and trends discovery in a flow of business documents | |
US20070300295A1 (en) | Systems and methods to extract data automatically from a composite electronic document | |
US20190244046A1 (en) | System and method for classifying images of an evidence | |
CN113064992A (zh) | 投诉工单结构化处理方法、装置、设备及存储介质 | |
CN113297379A (zh) | 一种文本数据多标签分类方法及装置 | |
Ha et al. | Recognition of OCR invoice metadata block types | |
CN112818117A (zh) | 标签映射方法、系统、计算机可读存储介质 | |
CN112395851A (zh) | 一种文本比对方法、装置、计算机设备及可读存储介质 | |
CN111831810A (zh) | 智能问答方法、装置、设备及存储介质 | |
CN115936624A (zh) | 基层数据管理方法及装置 | |
CN115730581A (zh) | 用于投标文档中项目和公司基础信息提取方法和装置 | |
TW202018616A (zh) | 智能會計帳務系統與會計憑證的辨識入帳方法 | |
CN111898378A (zh) | 政企客户的行业分类方法和装置、电子设备、存储介质 | |
CN115858470A (zh) | 政策法规文件的匹配方法、系统、服务器及存储介质 | |
CN102473176A (zh) | 文档数据处理装置 | |
CN114495138A (zh) | 一种智能文档识别与特征提取方法、装置平台和存储介质 | |
CN113128231A (zh) | 一种数据质检方法、装置、存储介质和电子设备 | |
CN117093548B (zh) | 一种招投标管理稽核系统 | |
Chiu et al. | Use text mining for financial reports analysis: long text to image converter | |
CN116303909B (zh) | 一种电子投标文件与条款的匹配方法、设备及介质 | |
CN115730074A (zh) | 文件分类方法、装置、计算机设备和存储介质 | |
CN113609860B (zh) | 文本切分方法、装置及计算机设备 | |
CN117034864B (zh) | 可视化标注方法、装置、计算机设备以及存储介质 | |
CN111931515B (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 |