CN113434636B - 基于语义的近似文本搜索方法、装置、计算机设备及介质 - Google Patents
基于语义的近似文本搜索方法、装置、计算机设备及介质 Download PDFInfo
- Publication number
- CN113434636B CN113434636B CN202110732513.1A CN202110732513A CN113434636B CN 113434636 B CN113434636 B CN 113434636B CN 202110732513 A CN202110732513 A CN 202110732513A CN 113434636 B CN113434636 B CN 113434636B
- Authority
- CN
- China
- Prior art keywords
- word
- text
- keywords
- queried
- candidate
- 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
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000004364 calculation method Methods 0.000 claims description 36
- 239000011159 matrix material Substances 0.000 claims description 26
- 238000013507 mapping Methods 0.000 claims description 21
- 230000011218 segmentation Effects 0.000 claims description 17
- 239000013598 vector Substances 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 12
- 238000007781 pre-processing Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 abstract description 6
- 238000013473 artificial intelligence Methods 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- 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 Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Probability & Statistics with Applications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例属于人工智能领域,涉及一种基于语义的近似文本搜索方法,包括获取待查询文本,提取待查询文本中的关键词,获得与待查询文本对应的关键词集合,将关键词集合输入词嵌入模型中,通过词嵌入模型计算出关键词的相近词,并将关键词和相近词作为查询关键词,根据查询关键词查询到与待查询文本相似的候选文本,计算待查询文本与候选文本之间的相似度,根据相似度确定出目标文本。本申请还提供一种基于语义的近似文本搜索装置、计算机设备及存储介质。此外,本申请还涉及区块链技术,待查询文本可存储于区块链中。本申请可以提高搜索结果的准确率。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种基于语义的近似文本搜索方法、装置、计算机设备及介质。
背景技术
随着科技的不断发展,计算机人工智能技术变得日益完善和成熟,人工智能技术的发展使人们的生活越来越便利。例如,在海量数据的背景下进行近似文本搜索。
传统文本近似模型主要分为特征提取、向量相似度计算两个步骤,但是在文本特征提取时,传统文本近似模型主要基于概率抽取关键词方式,这种方式的缺点是很难从人的先验概率抓住文本的核心关键词。此外,在完成特征提取后没有考虑近似语义关键词占据的权重,如“人脸识别”和“人脸比对”在词意上本身存在关联性,从而导致搜索出的信息不够准确。
发明内容
本申请实施例的目的在于提出一种基于语义的近似文本搜索方法、装置、计算机设备及存储介质,以解决相关技术中特征提取难以抓住核心关键词,造成搜索结果准确性低的问题。
为了解决上述技术问题,本申请实施例提供一种基于语义的近似文本搜索方法,采用了如下所述的技术方案:
获取待查询文本,提取所述待查询文本中的关键词,获得与所述待查询文本对应的关键词集合;
将所述关键词集合输入词嵌入模型中,通过所述词嵌入模型计算出所述关键词的相近词,并将所述关键词和所述相近词作为查询关键词;
根据所述查询关键词查询到与所述待查询文本相似的候选文本;
计算所述待查询文本与所述候选文本之间的相似度,根据所述相似度确定出目标文本。
进一步的,所述提取所述待查询文本中的关键词包括:
对所述待查询文本进行分词和去停用词处理,得到候选关键词;
获取所述候选关键词的词语权重、词长、词现以及出现所述候选关键词的句子的位置信息;
根据所述词语权重、所述词长、所述词现以及所述位置信息,计算出所述候选关键词的词语重要度,所述词语重要度的计算采用如下公式:
其中,f为词语重要度,α、β、γ是超参,TFIDFi为词语权重,lw为词长,minpos为位置信息,C为词现;
根据所述词语重要度确定出关键词。
进一步的,所述获取所述候选关键词的词语权重包括:
采用TF-IDF算法计算所述候选关键词的词频和逆文本频率;
根据所述词频和所述逆文本频率,计算出所述候选关键词的词语权值。
进一步的,所述根据所述词语重要度确定出关键词包括:
按照所述词语重要度从大到小对候选关键词进行排序,得到排序结果;
从所述排序结果中选取预设个数的候选关键词作为关键词。
进一步的,所述通过所述词嵌入模型计算出所述关键词的相近词包括:
步骤A、确定所述关键词集合中的其中一个关键词作为中心词,使用预设大小的滑动窗口捕获所述中心词的上下文词;
步骤B、对所述中心词和每个所述上下文词进行one-hot编码,形成词语矩阵;
步骤C、通过索引映射,将所述中心词和每个所述上下文词映射到T维空间,形成映射矩阵;
步骤D、根据所述中心词和每个所述上下文词,初始化所述词嵌入模型的映射层与隐藏层之间的权重矩阵;
步骤E、取出所述中心词的词向量,与所述权重矩阵做内积运算,得到所述中心词和每个所述上下文词的计算结果,根据计算结果确定出所述相近词;
步骤F、重复步骤A至步骤E,为所述关键词集合中的每个所述关键词确定出相近词。
进一步的,所述计算所述待查询文本与所述候选文本之间的相似度包括:
计算所述待查询文本的关键词与每个所述候选文本的关键词之间的第一相似度,并计算所述待查询文本的相近词与每个所述候选文本的相近词之间的第二相似度;
通过对所述第一相似度和所述第二相似度进行加权求和计算,得到所述待查询文本与每个所述候选文本的最终相似度。
进一步的,所述根据所述相似度确定出符合条件的目标文本包括:
将所述最终相似度大于等于预设阈值的候选文本作为目标文本。
为了解决上述技术问题,本申请实施例还提供一种基于语义的近似文本搜索装置,采用了如下所述的技术方案:
获取模块,用于获取待查询文本,提取所述待查询文本中的关键词,获得与所述待查询文本对应的关键词集合;
提取模块,用于将所述关键词集合输入词嵌入模型中,通过所述词嵌入模型计算出所述关键词的相近词,并将所述关键词和所述相近词作为查询关键词;
查询模块,用于根据所述查询关键词查询到与所述待查询文本相似的候选文本;及
计算模块,用于计算所述待查询文本与所述候选文本之间的相似度,根据所述相似度确定出目标文本。
为了解决上述技术问题,本申请实施例还提供一种计算机设备,采用了如下所述的技术方案:
该计算机设备包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如上所述的基于语义的近似文本搜索方法。
为了解决上述技术问题,本申请实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:
所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如上所述的基于语义的近似文本搜索方法。
与现有技术相比,本申请实施例主要有以下有益效果:
本申请通过获取待查询文本,提取待查询文本中的关键词,获得与待查询文本对应的关键词集合,将关键词集合输入词嵌入模型中,通过词嵌入模型计算出关键词的相近词,并将关键词和相近词作为查询关键词,根据查询关键词查询到与待查询文本相似的候选文本,计算待查询文本与候选文本之间的相似度,根据相似度确定出目标文本;本申请通过计算提取出的关键词的相近词,并将关键词和相近词作为查询关键词,查询到候选文本,可以提高搜索结果的准确率。
附图说明
为了更清楚地说明本申请中的方案,下面将对本申请实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请可以应用于其中的示例性系统架构图;
图2根据本申请的基于语义的近似文本搜索方法的一个实施例的流程图;
图3是图2中步骤S201的一种具体实施方式的流程图;
图4是根据本申请的基于语义的近似文本搜索装置的一个实施例的结构示意图;
图5是根据本申请的计算机设备的一个实施例的结构示意图。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请;本申请的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本申请的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了使本技术领域的人员更好地理解本申请方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
为了解决相关技术中特征提取难以抓住核心关键词,造成搜索结果准确性低的问题,本申请提供了一种基于语义的近似文本搜索方法,涉及人工智能,可以应用于如图1所示的系统架构100中,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器。
需要说明的是,本申请实施例所提供的基于语义的近似文本搜索方法一般由服务器/终端设备执行,相应地,基于语义的近似文本搜索装置一般设置于服务器/终端设备中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的基于语义的近似文本搜索方法的一个实施例的流程图,包括以下步骤:
步骤S201,获取待查询文本,提取待查询文本中的关键词,获得与待查询文本对应的关键词集合。
在本实施例中,基于语义的近似文本搜索方法运行于其上的电子设备(例如图1所示的服务器/终端设备)可以通过有线连接方式或者无线连接方式获取待查询文本。需要指出的是,上述无线连接方式可以包括但不限于3G/4G连接、WiFi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB(ultra wideband)连接、以及其他现在已知或将来开发的无线连接方式。
在本实施例中,获取到待查询文本,从待查询文本中提取出目标语料,对目标语料进行关键词提取。例如,对于专利文献,标题、摘要、权利要求字段是比对专利近似度的核心要素,将专利文献按照类别进行拆分,可以提取出这三部分的文本作为关键词提取的目标语料,其中,每部分文本打上对应标签。
需要强调的是,为进一步保证待查询文本的私密和安全性,上述待查询文本还可以存储于一区块链的节点中。
本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
在本实施例的一些可选的实现方式中,提取待查询文本中的关键词具体如下:
步骤S301,对待查询文本进行分词和去停用词处理,得到候选关键词。
对从待查询文本中提取出来的目标语料进行分词、去停用词处理。具体地,分词,在英文文本中存在天然的分割符,在中文中词语之间没有特殊的符号进行分割,而且中文中以双字词和多字词居多,文本的分词是中文处理中的第一步,也是至关重要的一步,中文分词的准确与否,它会对后续步骤产生重要的影响,分词器包括结巴中文分词器、斯坦福分词器、LTP分词器、THULAC分词器、NLPIR分词器、foolnltk分词器以及pullword在线分词引擎等。
分词后的文本往往包含很多无关紧要的词语,将它们加入运算会影响最终结果的准确性,同时更多的词也需要更多的计算性能,因此需要去停用词处理。去停用词在分词完成参照停用词表对原始数据进行处理,依次对分完词后的文本进行遍历,删除所有在停用词表中出现的词语,主要包括标点符号、语气词以及一些与文本主题毫不相关的词语,这种处理方法简单高效,并且可以随时根据语料库对停用词表进行增加或删减,可控性高。
步骤S302,获取候选关键词的词语权重、词长、词现以及出现候选关键词的句子的位置信息。
在本实施例中,采用TF-IDF算法(term frequency–inverse documentfrequency,词频-逆文本频率算法)计算候选关键词的词语权重,具体地,采用TF-IDF算法计算候选关键词的词频和逆文本频率,根据词频和逆文本频率,计算出候选关键词的词语权重。
其中,TF-IDF算法一种基于统计的计算方法,常用以评估一个单词在一个文档集合或语料库中的重要程度。从算法的名称就可以看出,TF-IDF算法由两部分组成:TF算法以及IDF算法。TF算法是统计一个词在一篇文档中出现的频次,其基本思想是,一个词在文档中出现的次数越多,则其对文档的表达能力也就越强。而IDF算法则是统计一个词在文档集的多少个文档中出现,其基本的思想是,如果一个词在越少的文档中出现,则其对文档的区分能力也就越强;在此计算的TF-IDF值越高,也就说明其对应的词语更为关键。
词频的计算公式具体如下:
其中,ni为候选关键词i在所有文本中出现的频次,Nk为包含候选关键词i的第k个文本的总词数。
逆文本频率采用的计算公式如下:
其中,|D|为文本总数,di为出现候选关键词i的文本数量。
词语权重的计算公式如下:
TFIDFi=TFi×IDFi
本实施例中通过TF-IDF算法计算词语权重,简单、快速。
应当理解,词长候选关键词的长度,例如,“中国”的长度为2,“广东省”的长度为3;词现为某候选关键词出现的类别数,例如,对于专利文献,某候选关键词只出现在标题类别中,则词现为1,某候选关键词出现在标题和摘要两个类别中,则词现为2。
在本实施例中,句子的位置信息可以通过对每个句子进行编号,例如,从1开始编号,某候选关键词出现的最小位置即为句子的位置信息。
步骤S303,根据词语权重、词长、词现以及位置信息,计算出候选关键词的词语重要度。
在本实施例中,候选关键词的词语重要度采用如下计算公式:
其中,α、β、γ是超参,用于平滑f值,使不同参数的f值更加合理化,初始α=2,β=1,γ=1;lw为词长;minpos为位置信息;C为词现;TFIDFi为词语权重。
步骤S304,根据词语重要度确定出关键词。
具体地,按照词语重要度从大到小对候选关键词进行排序,得到排序结果,从排序结果中选取预设个数的候选关键词作为关键词,可以是从排序结果中选取出排序在前的预设个数的候选关键词作为关键词。
本实施例中,在TFIDF算法中结合词长、句子位置信息以及词现等进行关键词获取,是考虑了从人的逻辑先验知识出发提取关键词,可以提高获取文本核心关键词的精确度。
步骤S202,将关键词集合输入词嵌入模型中,通过词嵌入模型计算出关键词的相近词,并将关键词和相近词作为查询关键词。
在本实施例中,词嵌入模型采用word2vec算法中的Skip-gram模型,使用Skip-gram模型计算出关键词相近词,具体步骤如下:
步骤A、确定关键词集合中的其中一个关键词作为中心词,使用预设大小的滑动窗口捕获中心词的上下文词。
滑动窗口为捕获窗口,用来生成以中心词为中心,长度为滑动窗口大小范围内的上下文词。假设在文本序列中有5个词,[“the”,“man”,“loves”,“his”,“son”],滑动窗口大小为skip-window=2,中心词为“loves”,获得与它距离不超过2的上下文词,那么上下文的词即为:“the”、“man”、“his”、“son”。
步骤B、对中心词和每个上下文词进行one-hot编码,形成词语矩阵。
One-Hot编码,又称为一位有效编码,主要是采用N位状态寄存器来对N个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候只有一位有效。
将中心词和上下文词进行one-hot编码,每个词语形成S*1的向量,整个词汇表就是S*S的词语矩阵。假设文本序列为[“the”,“man”,“loves”,“his”,“son”],那么可以进行如下编码:
the:[1,0,0,0,0]
man:[0,1,0,0,0]
loves:[0,0,1,0,0]
his:[0,0,0,1,0]
son:[0,0,0,0,1]
将编码后得到的词向量组成词语矩阵。
步骤C、通过索引映射,将中心词和每个上下文词映射到T维空间,形成映射矩阵。
映射,又被称作嵌入(embedding),用于将单词从原先所属的空间映射到新的多维空间中,也就是把原先词语所在空间嵌入到一个新的空间中去,这样方便后续的向量学习。
具体的,将中心词和每个上下文词映射到T维空间,形成映射矩阵,映射矩阵的形状为S*T,并且映射矩阵中的某列与每个词语一一对应。
步骤D、根据中心词和每个上下文词,初始化词嵌入模型的映射层与隐藏层之间的权重矩阵。
具体地,初始化Skip-Gram模型的映射层与Skip-Gram模型的隐藏层之间的权重矩阵W′,权重矩阵W′是一个S行T列的矩阵。
步骤E、取出中心词的词向量,与权重矩阵做内积运算,得到中心词和每个上下文词的计算结果,根据计算结果确定出相近词。
具体地,取出作为中心词的关键词向量Sc(为T维的向量1*T),与权重矩阵W′中的其他上下文相似词向量做内积运算,得到每个词语的输出概率,根据输出概率确定出相近词。
在Skip-Gram神经网络的输出层处,对得到的S个数字,采用Softmax函数对输出向量进行归一化处理,得到一个N维的概率值P;P是一个经由Softmax函数进行归一化处理获得N维的概率值,每一维都代表一个预测词语,其中概率最大的一行为预测出的中心词词语。
步骤F、重复步骤A至步骤E,为关键词集合中的每个关键词确定出相近词。
本实施例通过词嵌入模型计算出关键词的相近词,同时考虑到了关键词本身和关键词的近似语义词,提高了计算文本相似度的精确度。
步骤S203,根据查询关键词查询到与待查询文本相似的候选文本。
在本实施例中,通过查询关键词在数据库进行查询,匹配到对应的文本,并将查询到的文本作为候选文本。
步骤S204,计算待查询文本与候选文本之间的相似度,根据相似度确定出目标文本。
在计算待查询文本与候选文本之间的相似度之前,需要将候选文本进行关键词提取以及计算出关键词的相近词。
相似度的计算方法包括但不限于余弦相似度、Jaccard相似度、皮尔逊相关系数等。在本实施例中,可以采用余弦相似度计算待查询文本与候选文本之间的相似度。
具体地,计算待查询文本的关键词与每个候选文本的关键词之间的第一相似度,并计算待查询文本的相近词与每个候选文本的相近词之间的第二相似度;通过对第一相似度和第二相似度进行加权求和计算,得到待查询文本与每个候选文本的最终相似度。
余弦相似度计算公式如下:
其中,A是待查询文本的关键词或相近词的词频向量,B是候选文本的关键词或相近词的词频向量。
分别计算出第一相似度S1和第二相似度S2,则最终相似度为Sim=α*S1+β*S2,其中,α和β分别为关键词的权重和相近词的权重,二者可以根据实际经验预先设置。
本实施例基于查询到的候选文本集合完成向量矩阵相似度计算,明显提升计算速度。
在本实施例中,计算出查询到的每个候选文本的相似度后,将最终相似度大于等于预设阈值的候选文本作为目标文本,这样可以更快、更准确地找到与待查询文本相似的文本。
本申请通过计算提取出的关键词的相近词,并将关键词和相近词作为查询关键词,查询到候选文本,可以提高搜索结果的准确率。
本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
进一步参考图4,作为对上述图2所示方法的实现,本申请提供了一种基于语义的近似文本搜索装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图4所示,本实施例所述的基于语义的近似文本搜索装置400包括:获取模块401、提取模块402、查询模块403以及计算模块404。其中:
获取模块401用于获取待查询文本,提取所述待查询文本中的关键词,获得与所述待查询文本对应的关键词集合;
提取模块402用于将所述关键词集合输入词嵌入模型中,通过所述词嵌入模型计算出所述关键词的相近词,并将所述关键词和所述相近词作为查询关键词;
查询模块403用于根据所述查询关键词查询到与所述待查询文本相似的候选文本;
计算模块404用于计算所述待查询文本与所述候选文本之间的相似度,根据所述相似度确定出目标文本。
需要强调的是,为进一步保证待查询文本的私密和安全性,上述待查询文本还可以存储于一区块链的节点中。
上述基于语义的近似文本搜索装置,通过获取待查询文本,提取待查询文本中的关键词,获得与待查询文本对应的关键词集合,将关键词集合输入词嵌入模型中,通过词嵌入模型计算出关键词的相近词,并将关键词和相近词
作为查询关键词,根据查询关键词查询到与待查询文本相似的候选文本,计算待查询文本与候选文本之间的相似度,根据相似度确定出符合条件的目标文本;本申请通过计算提取出的关键词的相近词,并将关键词和相近词作为查询关键词,查询到候选文本,可以提高搜索结果的准确率。
在本实施例中,获取模块401包括预处理子模块、获取子模块、计算子模块以及确定子模块,预处理子模块用于对所述待查询文本进行分词和去停用词处理,得到候选关键词;获取子模块用于获取所述候选关键词的词语权重、词长、词现以及出现所述候选关键词的句子的位置信息;计算子模块用于根据所述词语权重、所述词长、所述词现以及所述位置信息,计算出所述候选关键词的词语重要度,所述词语重要度的计算采用如下公式:其中,f为词语重要度,α、β、γ是超参,TFIDFi为词语权重,lw为词长,minpos为位置信息,C为词现;确定子模块用于根据所述词语重要度确定出关键词。
本实施例中,在TFIDF算法中结合词长、句子位置信息以及词现等进行关键词获取,是考虑了从人的逻辑先验知识出发提取关键词,可以提高获取文本核心关键词的精确度。
在本实施例的一些可选的实现方式中,获取子模块包括计算单元,计算单元用于:
采用TF-IDF算法计算所述候选关键词的词频和逆文本频率;
根据所述词频和所述逆文本频率,计算出所述候选关键词的词语权值。
本实施例中通过TF-IDF算法计算词语权重,简单、快速。
在本实施例中,确定子模块包括排序单元和筛选单元,排序单元用于按照所述词语重要度从大到小对候选关键词进行排序,得到排序结果;筛选单元用于从所述排序结果中选取预设个数的候选关键词作为关键词。
在本实施例的一些可选的实现方式中,提取模块402进一步用于:
步骤A、确定所述关键词集合中的其中一个关键词作为中心词,使用预设大小的滑动窗口捕获所述中心词的上下文词;
步骤B、对所述中心词和每个所述上下文词进行one-hot编码,形成词语矩阵;
步骤C、通过索引映射,将所述中心词和每个所述上下文词映射到T维空间,形成映射矩阵;
步骤D、根据所述中心词和每个所述上下文词,初始化所述词嵌入模型的映射层与隐藏层之间的权重矩阵;
步骤E、取出所述中心词的词向量,与所述权重矩阵做内积运算,得到所述中心词和每个所述上下文词的计算结果,根据计算结果确定出所述相近词;
步骤F、重复步骤A至步骤E,为所述关键词集合中的每个所述关键词确定出相近词。
本实施例通过词嵌入模型计算出关键词的相近词,同时考虑到了关键词本身和关键词的近似语义词,提高了计算文本相似度的精确度。
在本实施例中,计算模块404包括计算子模块,计算子模块用于:
计算所述待查询文本的关键词与每个所述候选文本的关键词之间的第一相似度,并计算所述待查询文本的相近词与每个所述候选文本的相近词之间的第二相似度;
通过对所述第一相似度和所述第二相似度进行加权求和计算,得到所述待查询文本与每个所述候选文本的最终相似度。
本实施例基于查询到的候选文本集合完成向量矩阵相似度计算,明显提升计算速度。
在本实施例中,计算模块404还包括选择子模块,用于将所述最终相似度大于等于预设阈值的候选文本作为目标文本,这样可以更快、更准确地找到与待查询文本相似的文本。
为解决上述技术问题,本申请实施例还提供计算机设备。具体请参阅图5,图5为本实施例计算机设备基本结构框图。
所述计算机设备5包括通过系统总线相互通信连接存储器51、处理器52、网络接口53。需要指出的是,图中仅示出了具有组件51-53的计算机设备5,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、可编程门阵列(Field-Programmable GateArray,FPGA)、数字处理器(Digital Signal Processor,DSP)、嵌入式设备等。
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
所述存储器51至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器51可以是所述计算机设备5的内部存储单元,例如该计算机设备5的硬盘或内存。在另一些实施例中,所述存储器51也可以是所述计算机设备5的外部存储设备,例如该计算机设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器51还可以既包括所述计算机设备5的内部存储单元也包括其外部存储设备。本实施例中,所述存储器51通常用于存储安装于所述计算机设备5的操作系统和各类应用软件,例如基于语义的近似文本搜索方法的计算机可读指令等。此外,所述存储器51还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器52在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器52通常用于控制所述计算机设备5的总体操作。本实施例中,所述处理器52用于运行所述存储器51中存储的计算机可读指令或者处理数据,例如运行所述基于语义的近似文本搜索方法的计算机可读指令。
所述网络接口53可包括无线网络接口或有线网络接口,该网络接口53通常用于在所述计算机设备5与其他电子设备之间建立通信连接。
本实施例通过处理器执行存储在存储器的计算机可读指令时实现如上述实施例基于语义的近似文本搜索方法,通过计算提取出关键词的相近词,并将关键词和相近词作为查询关键词,查询到候选文本,可以提高搜索结果的准确率。
本申请还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的基于语义的近似文本搜索方法,通过计算提取出关键词的相近词,并将关键词和相近词作为查询关键词,查询到候选文本,可以提高搜索结果的准确率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本申请各个实施例所述的方法。
显然,以上所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,附图中给出了本申请的较佳实施例,但并不限制本申请的专利范围。本申请可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本申请的公开内容的理解更加透彻全面。尽管参照前述实施例对本申请进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本申请说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本申请专利保护范围之内。
Claims (9)
1.一种基于语义的近似文本搜索方法,其特征在于,包括下述步骤:
获取待查询文本,提取所述待查询文本中的关键词,获得与所述待查询文本对应的关键词集合;
将所述关键词集合输入词嵌入模型中,通过所述词嵌入模型计算出所述关键词的相近词,并将所述关键词和所述相近词作为查询关键词;
根据所述查询关键词查询到与所述待查询文本相似的候选文本;
计算所述待查询文本与所述候选文本之间的相似度,根据所述相似度确定出目标文本;
其中,所述提取所述待查询文本中的关键词包括:
对所述待查询文本进行分词和去停用词处理,得到候选关键词;
获取所述候选关键词的词语权重、词长、词现以及出现所述候选关键词的句子的位置信息;其中,所述词长为所述候选关键词的长度,所述词现为所述候选关键词出现的类别数,所述句子的位置信息为所述候选关键词出现的最小位置;
根据所述词语权重、所述词长、所述词现以及所述位置信息,计算出所述候选关键词的词语重要度,所述词语重要度的计算采用如下公式:
其中,f为词语重要度,α、β、γ是超参,TFIDFi为词语权重,lw为词长,minpos为位置信息,C为词现;
根据所述词语重要度确定出关键词。
2.根据权利要求1所述的基于语义的近似文本搜索方法,其特征在于,所述获取所述候选关键词的词语权重包括:
采用TF-IDF算法计算所述候选关键词的词频和逆文本频率;
根据所述词频和所述逆文本频率,计算出所述候选关键词的词语权值。
3.根据权利要求1所述的基于语义的近似文本搜索方法,其特征在于,所述根据所述词语重要度确定出关键词包括:
按照所述词语重要度从大到小对候选关键词进行排序,得到排序结果;
从所述排序结果中选取预设个数的候选关键词作为关键词。
4.根据权利要求1所述的基于语义的近似文本搜索方法,其特征在于,所述通过所述词嵌入模型计算出所述关键词的相近词包括:
步骤A、确定所述关键词集合中的其中一个关键词作为中心词,使用预设大小的滑动窗口捕获所述中心词的上下文词;
步骤B、对所述中心词和每个所述上下文词进行one-hot编码,形成词语矩阵;
步骤C、通过索引映射,将所述中心词和每个所述上下文词映射到T维空间,形成映射矩阵;
步骤D、根据所述中心词和每个所述上下文词,初始化所述词嵌入模型的映射层与隐藏层之间的权重矩阵;
步骤E、取出所述中心词的词向量,与所述权重矩阵做内积运算,得到所述中心词和每个所述上下文词的计算结果,根据计算结果确定出所述相近词;
步骤F、重复步骤A至步骤E,为所述关键词集合中的每个所述关键词确定出相近词。
5.根据权利要求1所述的基于语义的近似文本搜索方法,其特征在于,所述计算所述待查询文本与所述候选文本之间的相似度包括:
计算所述待查询文本的关键词与每个所述候选文本的关键词之间的第一相似度,并计算所述待查询文本的相近词与每个所述候选文本的相近词之间的第二相似度;
通过对所述第一相似度和所述第二相似度进行加权求和计算,得到所述待查询文本与每个所述候选文本的最终相似度。
6.根据权利要求5所述的基于语义的近似文本搜索方法,其特征在于,所述根据所述相似度确定出符合条件的目标文本包括:
将所述最终相似度大于等于预设阈值的候选文本作为目标文本。
7.一种基于语义的近似文本搜索装置,其特征在于,包括:
获取模块,用于获取待查询文本,提取所述待查询文本中的关键词,获得与所述待查询文本对应的关键词集合;
提取模块,用于将所述关键词集合输入词嵌入模型中,通过所述词嵌入模型计算出所述关键词的相近词,并将所述关键词和所述相近词作为查询关键词;
查询模块,用于根据所述查询关键词查询到与所述待查询文本相似的候选文本;及
计算模块,用于计算所述待查询文本与所述候选文本之间的相似度,根据所述相似度确定出目标文本;
其中,获取模块包括预处理子模块、获取子模块、计算子模块以及确定子模块;
预处理子模块用于对所述待查询文本进行分词和去停用词处理,得到候选关键词;
获取子模块用于获取所述候选关键词的词语权重、词长、词现以及出现所述候选关键词的句子的位置信息;其中,所述词长为所述候选关键词的长度,所述词现为所述候选关键词出现的类别数,所述句子的位置信息为所述候选关键词出现的最小位置;
计算子模块用于根据所述词语权重、所述词长、所述词现以及所述位置信息,计算出所述候选关键词的词语重要度,所述词语重要度的计算采用如下公式:其中,f为词语重要度,α、β、γ是超参,TFIDFi为词语权重,lw为词长,minpos为位置信息,C为词现;
确定子模块用于根据所述词语重要度确定出关键词。
8.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如权利要求1至6中任一项所述的基于语义的近似文本搜索方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如权利要求1至6中任一项所述的基于语义的近似文本搜索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110732513.1A CN113434636B (zh) | 2021-06-30 | 2021-06-30 | 基于语义的近似文本搜索方法、装置、计算机设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110732513.1A CN113434636B (zh) | 2021-06-30 | 2021-06-30 | 基于语义的近似文本搜索方法、装置、计算机设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113434636A CN113434636A (zh) | 2021-09-24 |
CN113434636B true CN113434636B (zh) | 2024-06-18 |
Family
ID=77757927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110732513.1A Active CN113434636B (zh) | 2021-06-30 | 2021-06-30 | 基于语义的近似文本搜索方法、装置、计算机设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113434636B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114358210A (zh) * | 2022-01-14 | 2022-04-15 | 平安科技(深圳)有限公司 | 文本相似度计算方法、装置、计算机设备及存储介质 |
CN114492371A (zh) * | 2022-02-11 | 2022-05-13 | 网易传媒科技(北京)有限公司 | 文本处理方法及装置、存储介质、电子设备 |
CN115017361A (zh) * | 2022-05-25 | 2022-09-06 | 北京奇艺世纪科技有限公司 | 一种视频搜索方法、装置、电子设备及存储介质 |
CN115186665B (zh) * | 2022-09-15 | 2023-02-21 | 北京智谱华章科技有限公司 | 一种基于语义的无监督学术关键词提取方法及设备 |
CN116340467B (zh) * | 2023-05-11 | 2023-11-17 | 腾讯科技(深圳)有限公司 | 文本处理方法、装置、电子设备、及计算机可读存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110287321A (zh) * | 2019-06-26 | 2019-09-27 | 南京邮电大学 | 一种基于改进特征选择的电力文本分类方法 |
CN111737560A (zh) * | 2020-07-20 | 2020-10-02 | 平安国际智慧城市科技股份有限公司 | 内容搜索方法、领域预测模型训练方法、装置及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019003472A (ja) * | 2017-06-16 | 2019-01-10 | 株式会社プリマジェスト | 情報処理装置及び情報処理方法 |
JP6653833B1 (ja) * | 2019-11-29 | 2020-02-26 | 株式会社AI Samurai | 文書情報評価装置および文書情報評価方法並びに文書情報評価プログラム |
CN111143516A (zh) * | 2019-12-30 | 2020-05-12 | 广州探途网络技术有限公司 | 一种文章搜索结果展示方法及相关装置 |
-
2021
- 2021-06-30 CN CN202110732513.1A patent/CN113434636B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110287321A (zh) * | 2019-06-26 | 2019-09-27 | 南京邮电大学 | 一种基于改进特征选择的电力文本分类方法 |
CN111737560A (zh) * | 2020-07-20 | 2020-10-02 | 平安国际智慧城市科技股份有限公司 | 内容搜索方法、领域预测模型训练方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113434636A (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113434636B (zh) | 基于语义的近似文本搜索方法、装置、计算机设备及介质 | |
WO2021121198A1 (zh) | 基于语义相似度的实体关系抽取方法、装置、设备及介质 | |
KR101754473B1 (ko) | 문서를 이미지 기반 컨텐츠로 요약하여 제공하는 방법 및 시스템 | |
WO2021135469A1 (zh) | 基于机器学习的信息抽取方法、装置、计算机设备及介质 | |
CN111797214A (zh) | 基于faq数据库的问题筛选方法、装置、计算机设备及介质 | |
CN112287069B (zh) | 基于语音语义的信息检索方法、装置及计算机设备 | |
CN114780727A (zh) | 基于强化学习的文本分类方法、装置、计算机设备及介质 | |
CN113722438B (zh) | 基于句向量模型的句向量生成方法、装置及计算机设备 | |
CN111737997A (zh) | 一种文本相似度确定方法、设备及储存介质 | |
CN112085091B (zh) | 基于人工智能的短文本匹配方法、装置、设备及存储介质 | |
CN115203421A (zh) | 一种长文本的标签生成方法、装置、设备及存储介质 | |
CN113987125A (zh) | 基于神经网络的文本结构化信息提取方法、及其相关设备 | |
CN114780746A (zh) | 基于知识图谱的文档检索方法及其相关设备 | |
CN112949320B (zh) | 基于条件随机场的序列标注方法、装置、设备及介质 | |
CN111191011B (zh) | 一种文本标签的搜索匹配方法、装置、设备及存储介质 | |
CN112199954B (zh) | 基于语音语义的疾病实体匹配方法、装置及计算机设备 | |
CN116796730A (zh) | 基于人工智能的文本纠错方法、装置、设备及存储介质 | |
CN111061939B (zh) | 基于深度学习的科研学术新闻关键字匹配推荐方法 | |
CN110705287B (zh) | 一种用于文本摘要的生成方法和系统 | |
CN112926340A (zh) | 一种用于知识点定位的语义匹配模型 | |
CN111985217A (zh) | 一种关键词提取方法及计算设备 | |
CN113792549B (zh) | 一种用户意图识别的方法、装置、计算机设备及存储介质 | |
CN113688268B (zh) | 图片信息抽取方法、装置、计算机设备及存储介质 | |
CN112732913B (zh) | 一种非均衡样本的分类方法、装置、设备及存储介质 | |
She et al. | Deep neural semantic network for keywords extraction on short text |
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 |