CN117573815B - 一种基于向量相似度匹配优化的检索增强生成方法 - Google Patents

一种基于向量相似度匹配优化的检索增强生成方法 Download PDF

Info

Publication number
CN117573815B
CN117573815B CN202410069097.5A CN202410069097A CN117573815B CN 117573815 B CN117573815 B CN 117573815B CN 202410069097 A CN202410069097 A CN 202410069097A CN 117573815 B CN117573815 B CN 117573815B
Authority
CN
China
Prior art keywords
text
similarity
vector
field
texts
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
CN202410069097.5A
Other languages
English (en)
Other versions
CN117573815A (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.)
Zhejiang Lab
Original Assignee
Zhejiang Lab
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 Zhejiang Lab filed Critical Zhejiang Lab
Priority to CN202410069097.5A priority Critical patent/CN117573815B/zh
Publication of CN117573815A publication Critical patent/CN117573815A/zh
Application granted granted Critical
Publication of CN117573815B publication Critical patent/CN117573815B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • G06F16/3335Syntactic pre-processing, e.g. stopword elimination, stemming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本说明书公开了一种基于向量相似度匹配优化的检索增强生成方法,确定待处理文本的特征向量,根据指定的向量数据库中的候选向量、待处理文本的特征向量以及相似度预测模型,得到候选向量与待处理文本的特征向量之间的相似度,基于相似度确定与待处理文本关联的参考文本,将待处理文本和参考文本确定的提示文本输入到预训练的自然语言模型得到目标文本。可见,通过上述方案可以基于相似度预测模型匹配得到的参考文本能够适应于指定领域,并提高参考文本的准确性,从而提高目标文本的质量。

Description

一种基于向量相似度匹配优化的检索增强生成方法
技术领域
本说明书涉及计算机技术领域,尤其涉及一种基于向量相似度匹配优化的检索增强生成方法。
背景技术
随着深度学习和自然语言处理技术的快速发展,大语言模型在许多任务中表现出色,如文本生成、问答、摘要等。然而,对于知识密集型任务,如法律案例研究,由于知识的不断更新和多样性以及术语的专业性,传统模型往往面临挑战。
检索增强生成(Retrieval Augmented Generation,RAG)是一种融合深度学习和信息检索技术的新文本生成范式。在RAG中,从外部数据库中检索出与用户输入的信息(如文档、对话、上下文等)相关的信息,然后让大语言模型结合用户输入的信息以及检索到的相关信息来生成结果。
目前,通常采用通用的词向量嵌入模型分别得到用户输入的信息的向量,以及数据库中各信息的向量,然后基于欧氏距离、余弦相似度等相似度算法确定用户输入的信息的向量,和数据库中各信息的向量之间的相似度,进而基于相似度检索得到与用户输入的信息相关的信息。
但是上述方案仅适用于通用领域,当用户输入的信息属于特定领域的专业知识时,基于相似度算法确定向量相似度的检索方法无法准确检索到与用户输入的信息相关的信息,从而影响大语言模型输出的文本的准确性。
基于此,本说明书提供了一种基于向量相似度匹配优化的检索增强生成方法。
发明内容
本说明书提供一种基于向量相似度匹配优化的检索增强生成方法,以部分的解决现有技术存在的上述问题。
本说明书采用下述技术方案:
本说明书提供了一种基于向量相似度匹配优化的检索增强生成方法,包括:
获取待处理文本,并确定所述待处理文本的特征向量;
将预先构建的指定的向量数据库中存储的候选向量,与所述待处理文本的特征向量作为输入,输入到预先训练的相似度预测模型,得到所述候选向量与所述待处理文本的特征向量之间的相似度;其中,所述预先训练的相似度预测模型以指定领域的文本对为训练样本、以所述指定领域的文本对的相似度为标注训练得到;
根据所述候选向量与所述待处理文本的特征向量之间的相似度,确定与所述待处理文本关联的参考文本;
根据所述待处理文本和所述参考文本确定提示文本,并将所述提示文本输入到预训练的自然语言模型,得到所述待处理文本对应的目标文本。
可选地,预先构建指定的向量数据库,具体包括:
获取指定领域的文件;
将所述指定领域的文件包含的文本进行文本分割,并对分割结果进行预处理,得到指定领域的候选文本;
将所述指定领域的候选文本输入到预先训练的词向量嵌入模型,得到所述候选文本的候选向量;
将所述候选向量、所述候选文本,以及所述候选向量与所述候选文本之间的对应关系存储在指定的向量数据库中。
可选地,预先训练相似度预测模型,具体包括:
获取指定领域的多个文本;
根据所述指定领域的多个文本中任意两个文本,确定所述指定领域的文本对;
通过预先训练的词向量嵌入模型,确定所述指定领域的文本对包含的两个文本分别对应的特征向量作为第一训练样本,并确定所述指定领域的文本包含的两个文本之间的相似度作为所述第一训练样本的标注;
将所述第一训练样本输入待训练的相似度预测模型,得到所述第一训练样本包含的两个文本之间的预测相似度;
以所述预测相似度与所述第一训练样本的标注之间的差异的最小化为训练目标,训练所述待训练的相似度预测模型。
可选地,所述方法还包括:
从通用语料库中获取多个通用文本;
根据所述多个通用文本中任意两个文本,确定通用文本对,并通过预先训练的词向量嵌入模型得到所述通用文本对包含的两个文本分别对应的特征向量;
通过预设的相似度算法,确定所述通用文本对包含的两个文本之间的相似度;
所述以所述指定领域的文本对包含的两个文本分别对应的特征向量为第一训练样本,并确定所述指定领域的文本对包含的两个文本之间的相似度作为所述第一训练样本的标注,具体包括:
当以所述指定领域的文本对包含的两个文本分别对应的特征向量,以及所述通用文本对包含的两个文本分别对应的特征向量为第一训练样本时,确定所述指定领域的文本对包含的两个文本之间的相似度,并将所述指定领域的文本对包含的两个文本之间的相似度,以及所述通用文本对包含的两个文本之间的相似度作为所述第一训练样本的标注。
可选地,所述确定所述指定领域的文本对包含的两个文本之间的相似度作为所述第一训练样本的标注,具体包括:
展示标注界面,并在所述标注界面中展示所述指定领域的文本对,以及所述指定领域的文本对的键入栏;
响应于用户通过所述指定领域的文本对键入栏输入的指定信息,根据所述指定信息确定所述指定领域的文本对包含的两个文本之间的相似度,并将所述指定领域的文本对包含的两个文本之间的相似度作为所述第一训练样本的标注。
可选地,所述方法还包括:
响应于所述相似度预测模型的更新请求,获取指定领域的新的文本对包含的两个文本的特征向量作为第二训练样本;
确定所述指定领域的新的文本对包含的两个文本之间的相似度作为所述第二训练样本的标注;
根据所述第二训练样本和所述第二训练样本的标注,优化所述预先训练的相似度预测模型的模型参数。
可选地,所述方法还包括:
响应于所述指定的向量数据库的更新请求,获取指定领域的待更新文本;
将所述待更新文本输入预先训练的词向量嵌入模型,得到所述待更新文本的特征向量;
将所述待更新文本、所述待更新文本的特征向量,以及所述待更新文本与所述待更新文本的特征向量之间的对应关系存储在所述指定的向量数据库。
本说明书提供了一种基于向量相似度匹配优化的检索增强生成装置,包括:
获取模块,用于获取待处理文本,并确定所述待处理文本的特征向量;
相似度预测模块,用于将预先构建的指定的向量数据库中存储的候选向量,与所述待处理文本的特征向量作为输入,输入到预先训练的相似度预测模型,得到所述候选向量与所述待处理文本的特征向量之间的相似度;其中,所述预先训练的相似度预测模型以指定领域的文本对为训练样本、以所述指定领域的文本对的相似度为标注训练得到;
参考文本确定模块,用于根据所述候选向量与所述待处理文本的特征向量之间的相似度,确定与所述待处理文本关联的参考文本;
目标文本生成模块,用于根据所述待处理文本和所述参考文本确定提示文本,并将所述提示文本输入到预训练的自然语言模型,得到所述待处理文本对应的目标文本。
本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于向量相似度匹配优化的检索增强生成方法。
本说明书提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述基于向量相似度匹配优化的检索增强生成方法。
本说明书采用的上述至少一个技术方案能够达到以下有益效果:
本说明书提供的基于向量相似度匹配优化的检索增强生成方法中,确定待处理文本的特征向量,根据指定的向量数据库中的候选向量、待处理文本的特征向量以及相似度预测模型,得到候选向量与待处理文本的特征向量之间的相似度,基于相似度确定与待处理文本关联的参考文本,将待处理文本和参考文本确定的提示文本输入到预训练的自然语言模型得到目标文本。可见,通过上述方案可以基于相似度预测模型匹配得到的参考文本能够适应于指定领域,并提高参考文本的准确性,从而提高目标文本的准确性。
附图说明
此处所说明的附图用来提供对本说明书的进一步理解,构成本说明书的一部分,本说明书的示意性实施例及其说明用于解释本说明书,并不构成对本说明书的不当限定。在附图中:
图1为本说明书中一种传统的检索增强生成方法的流程示意图;
图2为本说明书中一种基于向量相似度匹配优化的检索增强生成方法的流程示意图;
图3为本说明书中一种预先构建指定的向量数据库的流程示意图;
图4为本说明书中一种预先训练相似度预测模型的流程示意图;
图5为本说明书提供的一种基于向量相似度匹配优化的检索增强生成装置的示意图;
图6为本说明书提供的对应于图2的电子设备示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
另外,需要说明的是,本说明书中所有获取信号、信息或数据的动作都是在遵照所在地相应的数据保护法规政策的前提下,并获得由相应装置所有者给予授权的情况下进行的。
需要说明的是,在不冲突的情况下,下述的实施例及实施方式中的特征可以相互组合。
如前所述,检索增强生成RAG能够将用户输入的信息(如文档、对话、上下文等)补充到预训练的自然语言模型中,预训练的自然语言模型利用这些信息来增强其生成的目标文本符合用户输入的待处理文本的程度。如图1所示为传统的基于预训练的自然语言模型的检索增强生成方案的流程示意图。将大量特定领域的文本通过预先训练的词向量嵌入(embedding)模型转化为低维稠密的向量存入向量数据库,该词向量可以表达这个词的某些特征,而词向量之间的距离也能反映词与词之间的相似性。向量数据库中包含大量的特定领域的文本与文本向量之间的对应关系,用于提供查询服务。当用户输入待处理文本时,采用与前述相同的词向量嵌入模型将用户输入的待处理文本转化为向量,利用得到的向量使用向量数据库中查询相似度最高的向量。传统的方案中,查询向量时所采用的是各种类型的相似度算法,如欧式距离、点积、余弦相似性等。匹配到相似度较高的向量后,从向量数据库中取出向量对应的文本,将查询到的文本作为上下文,并将用户输入的待处理文本作为提示传递给预训练的自然语言模型,预训练的自然语言模型就可以生成对应的基于检索增强的目标文本,从而返回给用户。
可见,上述流程中,向量匹配步骤尤为重要。查询得到的向量及其文本质量直接影响后续预训练的自然语言模型生成目标文本的质量。现有的基于相似性算法仅仅满足常见的、通用的向量匹配场景。然而,这类相似度算法是一种静态的度量方法,当面对专业化、领域化的知识密集型任务时,上述相似度算法无法及时调整适应新的领域知识,并给出准确的匹配结果,从而降低了预训练的自然语言模型生成的目标文本的质量。例如,在医药领域中,药物A和药物B的名称差异较大,通过词向量嵌入模型得到的药物A的向量与药物B的向量,通过相似度算法得到的相似度较低,但药物A和药物B的功效相近,实际上药物A和药物B在医药领域中匹配程度是较高的,可见,相似度算法并不适用于特定领域,尤其是知识密集型领域,知识的更新频率快,且术语的专业性和多样性强。
基于此,本说明书提供一种基于向量相似度匹配优化的检索增强生成方法,基于相似度预测模型匹配得到的参考文本,能够适应于指定领域,并提高参考文本的准确性,从而提高目标文本的准质量。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
图2为本说明书提供的一种基于向量相似度匹配优化的检索增强生成方法的流程示意图。
S100:获取待处理文本,并确定所述待处理文本的特征向量。
本说明书实施例中提供的一种基于向量相似度匹配优化的检索增强生成方法,该方法的执行过程可由用于检索增强生成的服务器等电子设备执行。另外,在执行该方法的过程中,所使用的预先训练的相似度预测模型以及预训练的自然语言模型,执行前述模型的模型训练的电子设备和执行该方法的电子设备可以相同也可以不同,本说明书对此不做限定。
在本说明书中,待处理文本可以是用户输入的信息,待处理文本所描述的提问或者是问题可以与指定领域相关。其中,指定领域可以是专业性较强的技术领域,如法律咨询、医学医药、金融分析、工程设计等知识密集型领域。指定领域中的专业知识较多,且知识较为复杂。待处理文本的文本长度可以根据具体的应用场景确定,本说明书对此不做限定。
进一步的,可以采用预先训练的词向量嵌入模型确定待处理文本的特征向量。具体的,本说明书中所采用的词向量嵌入模型是采用通用语料库中的通用语料训练得到的,将待处理文本输入到预先训练的词向量嵌入模型,即可得到模型输出的待处理文本的特征向量。词向量嵌入模型可以是Word2Vec、GloVe、FastText等结构,其中,Word2Vec结构的词向量嵌入模型可以采用连续词袋模型(Continuous Bag of Words,CBOW)或者跳字模型(Skip-gram),本说明书对词向量嵌入模型的模型结构不做具体限定。另外,词向量嵌入模型的训练样本可以来源于通用语料库。将通用语料库进行分词、去除停用词等预处理操作,转化为词向量嵌入模型可识别的形式,之后将与处理后的通用语料作为训练样本,对词向量嵌入模型进行训练,得到训练完成后的词向量嵌入模型。
需要说明的是,本说明书中并未对词向量嵌入模型进行适应指定领域的优化和调整,在S100以及后续步骤中确定文本的特征向量或词向量所采用的词向量嵌入模型均是基于上述方式训练得到的,后续不再赘述。
S102:将预先构建的指定的向量数据库中存储的候选文本对应的候选向量,与所述待处理文本的特征向量作为输入,输入到预先训练的相似度预测模型,得到所述候选向量与所述待处理文本的特征向量之间的相似度。其中,所述预先训练的相似度预测模型以指定领域的文本对为训练样本、以所述指定领域的文本对的相似度为标注训练得到。
具体的,本说明书中提供的基于向量相似度匹配优化的检索增强生成方法,与传统的检索增强生成方法的区别就在于:传统方法确定向量相似度所采用的是相似度算法,如欧氏距离、点积、余弦相似度等。而本说明书中,采用以指定领域的文本对为训练样本、以所述指定领域的文本对的相似度为标注训练的相似度预测模型确定向量相似度。
以指定领域的文本对为训练样本训练得到的相似度预测模型,能够精准确定指定领域的文本所对应的向量相似度,从而能够为待处理文本检索到更加匹配的指定领域的专业知识。
具体的,预先构建的指定的向量数据库中存储有多个候选文本,以及各候选文本对应的候选向量。针对每个候选向量,将该候选向量和待处理文本的特征向量作为输入,输入到预先训练的相似度预测模型,得到模型输出的该候选向量与所述待处理文本的特征向量之间的相似度。从而,基于在指定领域内训练过的相似度预测模型,得到了向量数据库中各个候选向量分别与待处理文本的特征向量之间的相似度。
S104:根据所述候选向量与所述待处理文本的特征向量之间的相似度,从所述候选文本中确定与所述待处理文本关联的参考文本。
进一步的,基于各个候选向量分别与待处理文本的特征向量之间的相似度,从各个候选文本中选择与待处理文本关联的参考文本。具体的,获取预设的相似度阈值,将相似度大于该预设的相似度阈值的候选向量筛选出来,基于指定的向量数据库中存储的候选向量与候选文本之间的对应关系,确定筛选出来的候选向量对应的候选文本作为待处理文本的参考文本。或者,还可以按照相似度从大到小将各个候选向量依次排列,将相似度较大的若干个候选向量作为筛选出的候选向量,之后,依然基于指定的向量数据库中存储的候选向量与候选文本之间的对应关系,确定筛选出来的候选向量对应的候选文本作为待处理文本的参考文本。
基于上述方案检索得到的待处理文本的参考文本的数量,和每个参考文本的文本长度,本说明书均不做限定。
S106:根据所述待处理文本和所述参考文本确定提示文本,并将所述提示文本输入到预训练的自然语言模型,得到所述待处理文本对应的目标文本。
具体的,预训练的自然语言模型是基于通用语料库预训练得到的,预训练的自然语言模型具有较好的上下文学习(In-Context Learning,ICL)能力,因此,可以将检索得到的参考文本作为上下文信息,插入到预设的提示模板的相应位置中,并将待处理文本同样插入提示模板的相应位置,得到提示文本。
将包含待处理文本和参考文本的提示文本作为预训练的自然语言模型的输入,通过预训练的自然语言模型生成的文本即为待处理文本对应的目标文本。
例如,待处理文本是用户输入的医学领域的提问“如何预防心脏病”,将待处理文本通过词向量嵌入模型得到待处理文本的特征向量,之后基于医学领域的向量数据库中存储的医学领域的候选文本的候选向量,以及医学领域的相似度预测模型,从医学领域的向量数据库中存储的医学领域的候选文本中查询得到待处理文本对应的参考文本,如“保护心脏的建议有健康饮食、控制体重和戒烟”、“降低心脏病发生风险的药物可以是降低血压的药物和降低血液胆固醇的药物”以及“心脏病的体检项目包括心电图和心脏核磁共振成像”。将前述三条参考文本插入到预设的提示模板的相应位置作为上下文信息,将待处理文本同样插入到提示模板中,即可得到提示文本。预训练的自然语言模型基于提示文本即可输出针对待处理文本这一问题的回答,如“预防心脏病,可以听从医生和健康专业人士的建议,保持良好的生活习惯和饮食习惯。首先,健康饮食尽量选择富含全谷类、蔬菜、水果等对心脏有益的食物。其次,保持健康的体重范围,可以降低患心脏病的风险。另外,戒烟也是预防心脏病的必要步骤。烟草中的有害物质会损害心脏和血管,增加患心脏病的风险。最后,根据医生的建议,服用预防心脏病的药物也是重要的。这些药物可能包括降低血压的药物和降低血液胆固醇的药物。此外,定期进行心脏病的体检也是必要的。这可以帮助及早发现心脏问题,及时采取措施来保护你的心脏健康”。
本说明提供的基于向量相似度匹配优化的检索增强生成方法中,确定待处理文本的特征向量,根据指定的向量数据库中的候选向量、待处理文本的特征向量以及相似度预测模型,得到候选向量与待处理文本的特征向量之间的相似度,基于相似度确定与待处理文本关联的参考文本,将待处理文本和参考文本确定的提示文本输入到预训练的自然语言模型得到目标文本。
可见,通过上述方案可以基于相似度预测模型匹配得到的参考文本能够适应于指定领域,并提高参考文本的准确性,从而提高目标文本的质量。
在本说明书一个或多个实施例中,S102所采用的指定的向量数据库的预先构建方法可如下所示,如图3所示:
S200:获取指定领域的文件。
在实际应用中,指定领域内的知识可以从指定领域内的专业化文件中提取出来。例如,法律领域的专业知识可以从法律条文、法庭判决书等法律文件中提取;医学领域的专业知识可以从医学教科书、临床病例、检查报告、医学文献、药物研发报告等医学文件中提取;金融领域的专业知识可以从财务报表、金融法规、行业发展报告、市场分析报告等金融经济文件中提取出来;地质勘探领域的专业知识可以从地质调查报告、钻探数据、地球物理勘探数据等地质学文件中提取出来。因此,构建适用于指定领域的指定的向量数据库时,需要首先获取指定领域的文件。指定领域的文件中包含以自然语言的形式记录的指定领域内的专业化知识。
S202:将所述指定领域的文件包含的文本进行文本分割,并对分割结果进行预处理,得到指定领域的候选文本。
具体的,指定领域的文件中所记录的指定领域的文本,其文本长度可能较长,因此,可以采用文本分割工具对指定领域的文件包含的文本进行文本分割,以得到文本长度较短的文本分割结果,该文本分割结果实际上就是文本长度较短的指定领域的文本。
进一步的,还可以使用数据预处理工具对分割结果进行清洗、去重、归一化等预处理操作,得到指定领域的候选文本,以确保预处理得到的指定领域的候选文本的质量和一致性。
S204:将所述指定领域的候选文本输入到预先训练的词向量嵌入模型,得到所述候选文本的候选向量。
本说明书中,预先训练的词向量嵌入模型能够将输入的文本转化为向量,因此,当指定领域的候选文本输入到预先训练的词向量嵌入模型,词向量嵌入模型可输出候选文本的候选向量。S204中所采用的词向量嵌入模型与前述S100得到待处理文本的特征向量所采用的词向量嵌入模型可以是同一模型,此处对词向量嵌入模型的模型结构和训练方式不做赘述。
S206:将所述候选向量、所述候选文本,以及所述候选向量与所述候选文本之间的对应关系存储在指定的向量数据库中。
指定的向量数据库中存储有指定领域的候选文本、候选文本对应的候选向量,以及二者之间的对应关系。由此,在利用指定的向量数据库查询与待处理文本相关的参考文本时,可基于向量相似度进行匹配和筛选。
另外,在实际应用中,指定领域内的知识是不断更新的,由此,适用于指定领域的指定的向量数据库中存储的候选文本和候选向量也需要随着指定领域内的知识的不断更新而更新,更新指定的向量数据库的方式可如下所示:
第一步:响应于所述指定的向量数据库的更新请求,获取指定领域的待更新文本。
具体的,指定领域的待更新文本可以由指定领域的用户(技术人员)提供,也可以响应于指定领域的文件的更新,采用S200类似的方法对更新的指定领域的文件进行处理,得到指定领域的待更新文本。
第二步:将所述待更新文本输入预先训练的词向量嵌入模型,得到所述待更新文本的特征向量。
第三步:将所述待更新文本、所述待更新文本的特征向量,以及所述待更新文本与所述待更新文本的特征向量之间的对应关系存储在所述指定的向量数据库。
基于上述指定的向量数据库的更新方案,当专业化的指定领域内的知识发生变化时,只需将变化的知识作为待更新文本,并将其对应的特征向量一并更新到指定的向量数据库中,就能够实现随着指定领域内的知识的不断更新而更新指定的向量数据库,从而使得指定的向量数据库能够知识的更新与变化,提高查询检索的灵活性和准确性,进一步提高目标文本的质量。
在本说明书一个或多个实施例中,S102中所采用的相似度预测模型可按照下述方案预先迭代训练得到,如图4所示:
S300:获取指定领域的多个文本。
在本说明书中,指定领域的多个文本可以由指定领域的用户(技术人员)提供,也可以从指定领域的若干个文件中提取得到,从指定领域的文件中提取得到指定领域的多个文本的提取方式可以与S200从指定领域的文件中提取指定领域的候选文本类似,此处不做赘述。
当然,当S300的执行时机晚于S200的执行时机时,可以直接将S200中得到的指定领域的候选文本作为S300中获取到的指定领域的多个文本。反之,当S200的执行时机晚于S300的执行时机时,可以直接将S300中得到的指定领域的多个文本作为S200中获取到的指定领域的候选文本。
S302:根据所述指定领域的多个文本中任意两个文本,确定所述指定领域的文本对。
本说明书中,相似度预测模型的输入通常为两个文本分别对应的向量,因此,可以基于指定领域的多个文本构建指定领域的文本对。具体的,可将指定领域的多个文本中任意两个文本选中,基于选中的两个文本构建得到指定领域的文本对。为了提升相似度预测模型的训练效率和准确性,指定领域的文本对的数量可以是多个,为此,可依次将指定领域的多个文本中任意两个文本构建指定领域的文本对。
例如,指定领域的多个文本为x1、x2、x3、x4,将这四个文本中任意两个文本选中,构建指定领域的文本对,可得:(x1,x2)、(x1,x3)、(x1,x4)等等。
S304:通过预先训练的词向量嵌入模型,确定所述指定领域的文本对包含的两个文本分别对应的特征向量作为第一训练样本,并确定所述指定领域的文本包含的两个文本之间的相似度作为所述第一训练样本的标注。
在此步骤中采用的预先训练的词向量嵌入模型与前述S100确定待处理文本的词向量嵌入模型可以为同一模型,此处对该词向量嵌入模型不再赘述。
具体的,将指定领域的文本对包含的两个文本分别输入预先训练的词向量嵌入模型,得到词向量嵌入模型输出的指定领域的文本对包含的两个文本分别对应的特征向量。模型输出的指定领域的文本对包含的两个文本分别对应的特征向量即为待训练的相似度预测模型的输入,因此将其作为第一训练样本。
另外,由于相似度预测模型用于确定两个文本之间的相似度,从而在实际应用中能够以相似度预测模型替代相似度算法,并适用于指定领域。因此,相似度预测模型所采用的第一训练样本的标注即为指定领域的文本对包含的两个文本之间的相似度。该第一训练样本的标注可以通过人工标注得到。
S306:将所述第一训练样本输入待训练的相似度预测模型,得到所述第一训练样本包含的两个文本之间的预测相似度。
本说明书中,相似度预测模型所利用的模型框架可以是如tensorflow、pytorch的深度学习框架,基于该模型框架采用现有的任意类型的模型架构构建相似度预测模型,如卷积神经网络(CNN)、循环神经网络(RNN)或Transformer等,并定义模型的层数、每层的神经元数量等参数。
S308:以所述预测相似度与所述第一训练样本的标注之间的差异的最小化为训练目标,训练所述待训练的相似度预测模型。
在迭代训练待训练的相似度预测模型时,基于有监督学习的方法进行训练,训练目标即为模型输出的预测相似度与第一训练样本的标注之间的差异的最小化。因此可定义模型训练所采用的损失函数,该损失函数用于衡量训练过程中相似度预测模型输出的预测相似度与真实结果(也即第一训练样本的标注)之间的差异。损失函数可以现有的任意类型的损失函数,如均方误差(MSE)、交叉熵损失(Cross-Entropy)等,本说明书对此不作限定。
在训练过程中,可以使用梯度下降法、Adam等优化算法来更新模型参数。在训练完成后,使用验证集和测试集来评估神经网络的性能。通过计算预测结果与真实标签之间的相似度或其他指标,评估神经网络的准确性和鲁棒性。根据验证和测试结果,对神经网络进行调整,例如增加或减少层数、调整每层的神经元数量等,以提高模型的性能。
之后,将训练完成的相似度预测模型应用在前述图2所示的检索增强生成链中。
基于上述方案训练得到的相似度预测模型能够提高指定领域下文本的特征向量之间的相似度的准确性,从而在检索增强生成中为待处理文本匹配到更为准确的参考问题,从而进一步提高预训练的自然语言模型生成的目标文本的质量。
在本说明书一个可选地实施例中,上述S304中第一训练样本中除了可以有指定领域的文本对,还可以有通用语料库中的通用文本构成的通用文本对,从而使得训练完成的相似度预测模型不仅能够根据为待处理文本匹配特定领域的特殊文本作为参考文本,还可以处理一般的词向量匹配任务,从而扩展相似度预测模型的使用场景。具体方案如下:
首先,从通用语料库中获取多个通用文本。
在实际应用中,仅依靠指定领域的文本对作为第一训练样本训练相似度预测模型可能存在下述问题:其一,指定领域的文本对的样本规模较小,导致训练得到的相似度预测模型的性能和泛化性交叉。其二,仅基于指定领域的文本对训练得到的相似度预测模型只能适用于指定领域下的文本的向量的相似度确定,无法适用于通用场景法中。
为此,在本说明书中,还可以在第一训练样本中引入通用文本构成的通用文本对,以解决上述问题。
为此,从通用语料库中获取多个通用文本。
其次,根据所述多个通用文本中任意两个文本,确定通用文本对,并通过预先训练的词向量嵌入模型得到所述通用文本对包含的两个文本分别对应的特征向量;
与前述S302类似,此处不做赘述。
之后,通过预设的相似度算法,确定所述通用文本对包含的两个文本之间的相似度。
在此步骤中,预设的相似度算法可以是现有的一个或多个任意类型的相似度算法,如欧式距离、点积、余弦相似度等,本说明书对此不做限定。
由于通用文本不包含特定领域的专业化的知识与信息,因此,基于预设的相似度算法也可以获得较为准确的相似度。
具体的,将通用文本对包含的两个文本分别输入到预先训练的词向量嵌入模型,得到通用文本对包含的两个文本分别对应的特征向量,根据预设的相似度算法,计算通用文本对包含的两个文本分别对应的特征向量之间的相似度,作为通用文本对包含的两个文本之间的相似度。
从而,基于上述方案得到了通用文本对及其相似度后,可以将通用文本对引入第一训练样本,相对应的,将通用文本对的相似度作为第一训练样本的标注。
具体的,当以所述指定领域的文本对包含的两个文本分别对应的特征向量,以及所述通用文本对包含的两个文本分别对应的特征向量为第一训练样本时,确定所述指定领域的文本对包含的两个文本之间的相似度,并将所述指定领域的文本对包含的两个文本之间的相似度,以及所述通用文本对包含的两个文本之间的相似度作为所述第一训练样本的标注。本说明书提供的相似度预测模型主要适用于指定领域的向量相似度的预测,因此,第一训练样本中至少包括指定领域的文本对包含的两个文本的特征向量,基于此,第一训练样本可以存在下述两种情况:其一为第一训练样本仅包括指定领域的文本对包含的两个文本的特征向量,其二是第一训练样本包括指定领域的文本对包含的两个文本的特征向量和通用文本对包含的两个文本的特征向量。第一训练样本的标注与第一训练样本相对应。另外,当第一训练样本包括指定领域的文本对包含的两个文本的特征向量和通用文本对包含的两个文本的特征向量时,指定领域的文本对和通用文本对之间的数量比例可以根据具体的应用场景确定,本说明书对此不做限定。
在本说明书一个可选的实施例中,上述S304中,指定领域的文本对包含的两个文本之间实际上都是指定领域的文本,传统的相似度算法无法得到准确定的相似度计算结果,因此,本说明书中,通过熟悉指定领域的用户作为标注人员,对确定出的指定领域的文本对包含的两个文本之间的相似度进行人工确定,具体方案如下:
首先,展示标注界面,并在所述标注界面中展示所述指定领域的文本对,以及所述指定领域的文本对的键入栏。
其次,响应于用户通过所述指定领域的文本对键入栏输入的指定信息,根据所述指定信息确定所述指定领域的文本对包含的两个文本之间的相似度。
具体的,用户可观察标注界面展示的制定领域的文本对,基于自身在指定领域内的知识和经验,人工标注指定领域的文本对包含的两个文本之间的相似程度和关联程度。其中,用户通过键入栏输入的指定信息可以是用于描述指定领域的文本对包含的两个文本之间的相似程度和关联程度文本,也可以是数值,本说明书对指定信息的具体形式不做限定。
进一步的,根据指定信息确定指定领域的文本对包含的两个文本之间的相似度。确定相似度的方式可以是直接将数值形式的指定信息进行标准化处理得到相似度,也可以是基于文本形式的指定信息进行自然语言理解,生成相似度。
例如,指定信息是数值形式,如用户通过键入栏输入的指定信息为0.7,则可以认为人工标注的指定领域的文本对包含的两个文本之间的相似度是取值范围在0到1之间的0.7。指定信息是文本形式,如用户通过键入栏输入的指定信息是“二者相似度程度极高”,则通过自然语言理解生成指定领域的文本对包含的两个文本之间的相似度为0.9。
之后,将所述指定领域的文本对包含的两个文本之间的相似度作为所述第一训练样本的标注。
在本说明书一个可选的实施例中,由于S102所采用的预先训练的相似度预测模型在训练时采用了指定领域的文本对作为训练样本,因此,该相似度预测模型一般仅用于确定符合指定领域内指示的待处理文本的词向量相似度确定。而当指定领域内的知识发生变化(新增或删除)时,相似度预测模型也需要根据变化的知识再次进行优化和调整,以便适应知识变化后的指定领域,从而具备灵活性和适应能力,进而提升指定领域内的文本的向量相似度的预测准确性,以便提升通过预训练的自然语言模型生成的目标文本的质量。具体方案如下:
第一步:响应于所述相似度预测模型的更新请求,获取指定领域的新的文本对包含的两个文本的特征向量作为第二训练样本。
与前述指定的向量数据库的更新类似,当指定领域内的知识发生更新时,适用于指定领域的相似度预测模型也许非要随着知识的更新进行适应性的调整和优化,以便提高相似度预测的准确性。
因此,可首先获取指定领域的新的文本,该指定领域的新的文本可以由指定领域的用户(技术人员)提供,也可以响应于指定领域的文件的更新,采用S200类似的方法对新的指定领域的文件进行处理,得到指定领域的新的文本。
第二步:确定所述指定领域的新的文本对包含的两个文本之间的相似度作为所述第二训练样本的标注。
此步骤与前述S304类似,此处不赘述。
第三步:根据所述第二训练样本和所述第二训练样本的标注,优化所述预先训练的相似度预测模型的模型参数。
需要注意的是,此步骤并非重新训练相似度预测模型,而是在训练完成的相似度预测模型的基础上,对模型参数进行二次优化和调整,提高优化效率的同时提升了模型的性能和灵活性。
以上为本说明书的一个或多个实施例提供的基于向量相似度匹配优化的检索增强生成方法,基于同样的思路,本说明书还提供了相应的基于向量相似度匹配优化的检索增强生成装置,如图5所示。
图5为本说明书提供的一种基于向量相似度匹配优化的检索增强生成装置示意图,具体包括:
获取模块400,用于获取待处理文本,并确定所述待处理文本的特征向量;
相似度预测模块402,用于将预先构建的指定的向量数据库中存储的候选向量,与所述待处理文本的特征向量作为输入,输入到预先训练的相似度预测模型,得到所述候选向量与所述待处理文本的特征向量之间的相似度;其中,所述预先训练的相似度预测模型以指定领域的文本对为训练样本、以所述指定领域的文本对的相似度为标注训练得到;
参考文本确定模块404,用于根据所述候选向量与所述待处理文本的特征向量之间的相似度,确定与所述待处理文本关联的参考文本;
目标文本生成模块406,用于根据所述待处理文本和所述参考文本确定提示文本,并将所述提示文本输入到预训练的自然语言模型,得到所述待处理文本对应的目标文本。
可选地,所述装置还包括:
数据库构建模块408具体用于,获取指定领域的文件;将所述指定领域的文件包含的文本进行文本分割,并对分割结果进行预处理,得到指定领域的候选文本;将所述指定领域的候选文本输入到预先训练的词向量嵌入模型,得到所述候选文本的候选向量;将所述候选向量、所述候选文本,以及所述候选向量与所述候选文本之间的对应关系存储在指定的向量数据库中。
可选地,所述装置还包括:
训练模块410,具体用于获取指定领域的多个文本;根据所述指定领域的多个文本中任意两个文本,确定所述指定领域的文本对;通过预先训练的词向量嵌入模型,确定所述指定领域的文本对包含的两个文本分别对应的特征向量作为第一训练样本,并确定所述指定领域的文本包含的两个文本之间的相似度作为所述第一训练样本的标注;将所述第一训练样本输入待训练的相似度预测模型,得到所述第一训练样本包含的两个文本之间的预测相似度;以所述预测相似度与所述第一训练样本的标注之间的差异的最小化为训练目标,训练所述待训练的相似度预测模型。
可选地,所述装置还包括:
通用文本确定模块412,具体用于从通用语料库中获取多个通用文本;根据所述多个通用文本中任意两个文本,确定通用文本对,并通过预先训练的词向量嵌入模型得到所述通用文本对包含的两个文本分别对应的特征向量;通过预设的相似度算法,确定所述通用文本对包含的两个文本之间的相似度;
可选地,所述训练模块410具体用于,当以所述指定领域的文本对包含的两个文本分别对应的特征向量,以及所述通用文本对包含的两个文本分别对应的特征向量为第一训练样本时,确定所述指定领域的文本对包含的两个文本之间的相似度,并将所述指定领域的文本对包含的两个文本之间的相似度,以及所述通用文本对包含的两个文本之间的相似度作为所述第一训练样本的标注。
可选地,所述训练模块410具体用于,展示标注界面,并在所述标注界面中展示所述指定领域的文本对,以及所述指定领域的文本对的键入栏;响应于用户通过所述指定领域的文本对键入栏输入的指定信息,根据所述指定信息确定所述指定领域的文本对包含的两个文本之间的相似度,并将所述指定领域的文本对包含的两个文本之间的相似度作为所述第一训练样本的标注。
可选地,所述装置还包括:
第一更新模块414,具体用于响应于所述相似度预测模型的更新请求,获取指定领域的新的文本对包含的两个文本的特征向量作为第二训练样本;确定所述指定领域的新的文本对包含的两个文本之间的相似度作为所述第二训练样本的标注;根据所述第二训练样本和所述第二训练样本的标注,优化所述预先训练的相似度预测模型的模型参数。
可选地,所述装置还包括:
第二更新模块416,具体用于响应于所述指定的向量数据库的更新请求,获取指定领域的待更新文本;将所述待更新文本输入预先训练的词向量嵌入模型,得到所述待更新文本的特征向量;将所述待更新文本、所述待更新文本的特征向量,以及所述待更新文本与所述待更新文本的特征向量之间的对应关系存储在所述指定的向量数据库。
本说明书还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图2所示的基于向量相似度匹配优化的检索增强生成方法。
本说明书还提供了图6所示的电子设备的示意结构图。如图6所述,在硬件层面,该电子设备包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述图2所示的基于向量相似度匹配优化的检索增强生成方法。当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device, PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

Claims (9)

1.一种基于向量相似度匹配优化的检索增强生成方法,其特征在于,包括:
获取待处理文本,并确定所述待处理文本的特征向量;
将预先构建的指定的向量数据库中存储的候选文本对应的候选向量,与所述待处理文本的特征向量作为输入,输入到预先训练的相似度预测模型,得到所述候选向量与所述待处理文本的特征向量之间的相似度;其中,所述预先训练的相似度预测模型以指定领域的文本对为训练样本、以所述指定领域的文本对的相似度为标注训练得到;
根据所述候选向量与所述待处理文本的特征向量之间的相似度,从所述候选文本中确定与所述待处理文本关联的参考文本;
根据所述待处理文本和所述参考文本确定提示文本,并将所述提示文本输入到预训练的自然语言模型,得到所述待处理文本对应的目标文本;
所述确定所述指定领域的文本对包含的两个文本之间的相似度作为第一训练样本的标注,具体包括:
展示标注界面,并在所述标注界面中展示所述指定领域的文本对,以及所述指定领域的文本对的键入栏;
响应于用户通过所述指定领域的文本对键入栏输入的指定信息,根据所述指定信息确定所述指定领域的文本对包含的两个文本之间的相似度,并将所述指定领域的文本对包含的两个文本之间的相似度作为第一训练样本的标注;其中,所述指定信息包括用于描述所述指定领域的文本对包含的两个文本之间的相似程度的文本或数值。
2.如权利要求1所述的方法,其特征在于,预先构建指定的向量数据库,具体包括:
获取指定领域的文件;
将所述指定领域的文件包含的文本进行文本分割,并对分割结果进行预处理,得到指定领域的候选文本;
将所述指定领域的候选文本输入到预先训练的词向量嵌入模型,得到所述候选文本的候选向量;
将所述候选向量、所述候选文本,以及所述候选向量与所述候选文本之间的对应关系存储在指定的向量数据库中。
3.如权利要求1所述的方法,其特征在于,预先训练相似度预测模型,具体包括:
获取指定领域的多个文本;
根据所述指定领域的多个文本中任意两个文本,确定所述指定领域的文本对;
通过预先训练的词向量嵌入模型,确定所述指定领域的文本对包含的两个文本分别对应的特征向量作为第一训练样本,并确定所述指定领域的文本包含的两个文本之间的相似度作为所述第一训练样本的标注;
将所述第一训练样本输入待训练的相似度预测模型,得到所述第一训练样本包含的两个文本之间的预测相似度;
以所述预测相似度与所述第一训练样本的标注之间的差异的最小化为训练目标,训练所述待训练的相似度预测模型。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
从通用语料库中获取多个通用文本;
根据所述多个通用文本中任意两个文本,确定通用文本对,并通过预先训练的词向量嵌入模型得到所述通用文本对包含的两个文本分别对应的特征向量;
通过预设的相似度算法,确定所述通用文本对包含的两个文本之间的相似度;
所述以所述指定领域的文本对包含的两个文本分别对应的特征向量为第一训练样本,并确定所述指定领域的文本对包含的两个文本之间的相似度作为所述第一训练样本的标注,具体包括:
当以所述指定领域的文本对包含的两个文本分别对应的特征向量,以及所述通用文本对包含的两个文本分别对应的特征向量为第一训练样本时,确定所述指定领域的文本对包含的两个文本之间的相似度,并将所述指定领域的文本对包含的两个文本之间的相似度,以及所述通用文本对包含的两个文本之间的相似度作为所述第一训练样本的标注。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述相似度预测模型的更新请求,获取指定领域的新的文本对包含的两个文本的特征向量作为第二训练样本;
确定所述指定领域的新的文本对包含的两个文本之间的相似度作为所述第二训练样本的标注;
根据所述第二训练样本和所述第二训练样本的标注,优化所述预先训练的相似度预测模型的模型参数。
6.如权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述指定的向量数据库的更新请求,获取指定领域的待更新文本;
将所述待更新文本输入预先训练的词向量嵌入模型,得到所述待更新文本的特征向量;
将所述待更新文本、所述待更新文本的特征向量,以及所述待更新文本与所述待更新文本的特征向量之间的对应关系存储在所述指定的向量数据库。
7.一种基于向量相似度匹配优化的检索增强生成装置,其特征在于,包括:
获取模块,用于获取待处理文本,并确定所述待处理文本的特征向量;
相似度预测模块,用于将预先构建的指定的向量数据库中存储的候选向量,与所述待处理文本的特征向量作为输入,输入到预先训练的相似度预测模型,得到所述候选向量与所述待处理文本的特征向量之间的相似度;其中,所述预先训练的相似度预测模型以指定领域的文本对为训练样本、以所述指定领域的文本对的相似度为标注训练得到;
参考文本确定模块,用于根据所述候选向量与所述待处理文本的特征向量之间的相似度,确定与所述待处理文本关联的参考文本;
目标文本生成模块,用于根据所述待处理文本和所述参考文本确定提示文本,并将所述提示文本输入到预训练的自然语言模型,得到所述待处理文本对应的目标文本;
所述装置还包括:
训练模块,具体用于展示标注界面,并在所述标注界面中展示所述指定领域的文本对,以及所述指定领域的文本对的键入栏;响应于用户通过所述指定领域的文本对键入栏输入的指定信息,根据所述指定信息确定所述指定领域的文本对包含的两个文本之间的相似度,并将所述指定领域的文本对包含的两个文本之间的相似度作为第一训练样本的标注。
8.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~6任一项所述的方法。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1~6任一项所述的方法。
CN202410069097.5A 2024-01-17 2024-01-17 一种基于向量相似度匹配优化的检索增强生成方法 Active CN117573815B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410069097.5A CN117573815B (zh) 2024-01-17 2024-01-17 一种基于向量相似度匹配优化的检索增强生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410069097.5A CN117573815B (zh) 2024-01-17 2024-01-17 一种基于向量相似度匹配优化的检索增强生成方法

Publications (2)

Publication Number Publication Date
CN117573815A CN117573815A (zh) 2024-02-20
CN117573815B true CN117573815B (zh) 2024-04-30

Family

ID=89896018

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410069097.5A Active CN117573815B (zh) 2024-01-17 2024-01-17 一种基于向量相似度匹配优化的检索增强生成方法

Country Status (1)

Country Link
CN (1) CN117573815B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019105134A1 (zh) * 2017-11-30 2019-06-06 阿里巴巴集团控股有限公司 词向量处理方法、装置以及设备
CN110852056A (zh) * 2018-07-25 2020-02-28 中兴通讯股份有限公司 一种获取文本相似度的方法、装置、设备及可读存储介质
WO2021051871A1 (zh) * 2019-09-18 2021-03-25 平安科技(深圳)有限公司 文本抽取方法、装置、设备及存储介质
CN115221977A (zh) * 2022-08-19 2022-10-21 广东工业大学 一种文本相似度计算模型训练方法、计算方法及相关装置
CN116340781A (zh) * 2022-12-27 2023-06-27 北京百度网讯科技有限公司 相似度确定方法、相似度预测模型训练方法及装置
CN116720498A (zh) * 2023-07-03 2023-09-08 武汉市万睿数字运营有限公司 一种文本相似度检测模型的训练方法、装置及其相关介质
CN116720008A (zh) * 2023-08-11 2023-09-08 之江实验室 一种机器阅读方法、装置、存储介质及电子设备
CN117171299A (zh) * 2023-08-15 2023-12-05 鼎富智能科技有限公司 一种文本生成方法和装置
CN117235226A (zh) * 2023-09-21 2023-12-15 支付宝(杭州)信息技术有限公司 一种基于大语言模型的问题应答方法及装置
US11861320B1 (en) * 2023-02-27 2024-01-02 Casetext, Inc. Text reduction and analysis interface to a text generation modeling system

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019105134A1 (zh) * 2017-11-30 2019-06-06 阿里巴巴集团控股有限公司 词向量处理方法、装置以及设备
CN110852056A (zh) * 2018-07-25 2020-02-28 中兴通讯股份有限公司 一种获取文本相似度的方法、装置、设备及可读存储介质
WO2021051871A1 (zh) * 2019-09-18 2021-03-25 平安科技(深圳)有限公司 文本抽取方法、装置、设备及存储介质
CN115221977A (zh) * 2022-08-19 2022-10-21 广东工业大学 一种文本相似度计算模型训练方法、计算方法及相关装置
CN116340781A (zh) * 2022-12-27 2023-06-27 北京百度网讯科技有限公司 相似度确定方法、相似度预测模型训练方法及装置
US11861320B1 (en) * 2023-02-27 2024-01-02 Casetext, Inc. Text reduction and analysis interface to a text generation modeling system
CN116720498A (zh) * 2023-07-03 2023-09-08 武汉市万睿数字运营有限公司 一种文本相似度检测模型的训练方法、装置及其相关介质
CN116720008A (zh) * 2023-08-11 2023-09-08 之江实验室 一种机器阅读方法、装置、存储介质及电子设备
CN117171299A (zh) * 2023-08-15 2023-12-05 鼎富智能科技有限公司 一种文本生成方法和装置
CN117235226A (zh) * 2023-09-21 2023-12-15 支付宝(杭州)信息技术有限公司 一种基于大语言模型的问题应答方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
RAGAS: Automated Evaluation of Retrieval Augmented Generation;Es, S等;《arXiv》;20231026;全文 *
基于深度学习的慢性肝病CT报告相似度分析;常炳国;刘清星;;计算机应用与软件;20180812(第08期);全文 *

Also Published As

Publication number Publication date
CN117573815A (zh) 2024-02-20

Similar Documents

Publication Publication Date Title
CN111613339B (zh) 一种基于深度学习的相似病历查找方法与系统
CN110472229A (zh) 序列标注模型训练方法、电子病历处理方法及相关装置
Li et al. Intelligent diagnosis with Chinese electronic medical records based on convolutional neural networks
CN111191002B (zh) 一种基于分层嵌入的神经代码搜索方法及装置
CN113435203B (zh) 多模态命名实体识别方法、装置以及电子设备
CN111316281A (zh) 基于机器学习的自然语言情境中数值数据的语义分类
CN109887562B (zh) 电子病历的相似度确定方法、装置、设备和存储介质
CN117573843B (zh) 一种基于知识校准和检索增强的医疗辅助问答方法及系统
KR20200040652A (ko) 자연어 처리 시스템 및 자연어 처리에서의 단어 표현 방법
CN116994694B (zh) 基于信息提取的患者病历数据筛选方法、装置和介质
CN106844738B (zh) 基于神经网络的食材之间容克关系的分类方法
CN112347781A (zh) 生成或修改表示输入数据内的关系的本体
CN112417093B (zh) 一种模型训练的方法及装置
CN111144093A (zh) 一种智能文本处理方法、装置、电子设备及存储介质
CN113722507B (zh) 基于知识图谱的住院费用预测方法、装置及计算机设备
CN114708976A (zh) 辅助诊断技术的方法、装置、设备及存储介质
CN116525125B (zh) 一种虚拟电子病历的生成方法及装置
CN117573815B (zh) 一种基于向量相似度匹配优化的检索增强生成方法
CN116028613B (zh) 常识问答方法、系统、计算机设备和存储介质
Dalloux et al. Supervised Learning for the ICD-10 Coding of French Clinical Narratives.
CN110060749B (zh) 基于sev-sdg-cnn的电子病历智能诊断方法
CN116860947A (zh) 面向文本阅读理解的选择题生成方法、系统及存储介质
US11809826B2 (en) Assertion detection in multi-labelled clinical text using scope localization
CN116230146A (zh) 数据处理方法、icd编码模型的训练方法及相关设备
CN116108163B (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