一种信息检索方法、装置、计算机设备及存储介质与流程

文档序号:31834466发布日期:2022-10-18 20:39阅读:73来源:国知局
一种信息检索方法、装置、计算机设备及存储介质与流程

1.本技术属于大数据技术领域,具体涉及一种信息检索方法、装置,计算 机设备及存储介质。


背景技术:

2.信息检索是用户常常需要使用的服务,例如在web搜索、大型分布式搜 索中,用户往往需要使用智能的、个性化的信息检索系统,以便可以根据用 户偏好简化信息访问和内容发现,并以最有价值和最方便的方式为用户提供 有关服务、产品和信息的个性化信息检索结果。
3.但是,目前的个性化信息检索通常是对用户隐私进行进行语义分析,通 过将语义分析结果作为检索要点,进行信息检索,但上述个性化信息检索方 案的误差较大,且容易出现用户隐私泄露的隐患,因为为用户提供个性化的 搜索体验往往是以牺牲其隐私为代价的,因此这要求在设计信息系统时必须 考虑如何保护用户的隐私。


技术实现要素:

4.本技术实施例的目的在于提出一种信息检索方法、装置、计算机设备及 存储介质,以解决现有个性化信息检索方案检索结果误差较大,且容易导致 用户隐私泄露的技术问题。
5.为了解决上述技术问题,本技术实施例提供一种信息检索方法,采用了 如下所述的技术方案:
6.一种信息检索方法,包括:
7.接收信息检索指令,并获取目标用户输入的查询语句;
8.对查询语句进行关键词提取,得到查询语句对应的关键词组合;
9.对关键词组合进行向量转化,得到初始查询向量;
10.从预设的兴趣库中获取目标用户的兴趣向量,得到兴趣向量集合;
11.计算初始查询向量和兴趣向量集合的相关度;
12.当初始查询向量和兴趣向量集合的相关度大于或等于预设阈值时,组合 初始查询向量和兴趣向量集合,得到查询组合向量;
13.基于预设的全同态加密算法对查询组合向量进行加密,得到加密向量;
14.基于加密向量在预设的加密文件索引表中进行同态检索,得到同态检索 结果,并对同态检索结果进行解密,得到信息检索结果。
15.进一步地,对查询语句进行关键词提取,得到查询语句对应的关键词组 合,具体包括:
16.对查询语句进行分词处理,得到文本分词;
17.基于预设的关键词提取算法从文本分词中提取关键词,得到查询语句对 应的关键词组合。
18.进一步地,对关键词组合进行向量转化,得到初始查询向量,具体包括:
19.获取预设的关键词列表;
20.分别判断关键词组合中的关键词是否存在于关键词列表中;
21.基于关键词判断结果对关键词组合进行向量转化,得到初始查询向量。
22.进一步地,基于关键词判断结果对关键词组合进行向量转化,得到初始 查询向量,具体包括:
23.若关键词组合中的关键词存在于关键词列表中,则关键词的赋值为“1”;
24.若关键词组合中的关键词不存在于关键词列表中,则关键词的赋值为“0”;
25.当关键词组合中的所有关键词均完成赋值后,组合所有关键词的赋值, 得到初始查询向量。
26.进一步地,在从预设的兴趣库中获取目标用户的兴趣向量,得到兴趣向 量集合之前,还包括:
27.获取目标用户的用户数据,得到目标用户数据;
28.从目标用户数据中提取兴趣特征,得到目标兴趣特征;
29.对得到的所有目标兴趣特征进行向量转化,得到兴趣向量集合;
30.将兴趣向量集合导入兴趣库进行存储。
31.进一步地,通过以下公式计算初始查询向量和兴趣向量集合的相关度:
[0032][0033]
式中,q0为初始查询向量,ij为目标用户的兴趣向量集合bi中的第j个 兴趣向量,兴趣向量集合bi由m个目标兴趣向量{i1,i2,...,im}构成,sj为目标用户的第j个目标兴趣向量ij和初始查询向量q0相关度。
[0034]
进一步地,在基于加密向量在预设的加密文件索引表中进行同态检索, 得到同态检索结果,并对同态检索结果进行解密,得到信息检索结果之后, 还包括:
[0035]
对兴趣向量集合进行更新。
[0036]
进一步地,对兴趣向量集合进行更新,具体包括:
[0037]
将兴趣向量集合中的每一个目标兴趣向量均乘以预设衰退因子,得到兴 趣衰退向量集合;
[0038]
计算兴趣衰退向量集合中每一个兴趣衰退向量的向量值;
[0039]
分别将每一个兴趣衰退向量的向量值与预设衰退阈值进行比对;
[0040]
将向量值小于预设衰退阈值的兴趣衰退向量从兴趣衰退向量集合中剔除, 得到兴趣更新向量合集;
[0041]
将初始查询向量添加到兴趣更新向量合集,以完成对兴趣向量集合的更 新。
[0042]
为了解决上述技术问题,本技术实施例还提供一种信息检索装置,采用 了如下所述的技术方案:
[0043]
一种信息检索装置,包括:
[0044]
指令接收模块,用于接收信息检索指令,并获取目标用户输入的查询语 句;
[0045]
关键词提取模块,用于对查询语句进行关键词提取,得到查询语句对应 的关键词
组合;
[0046]
向量转化模块,用于对关键词组合进行向量转化,得到初始查询向量;
[0047]
向量获取模块,用于从预设的兴趣库中获取目标用户的兴趣向量,得到 兴趣向量集合;
[0048]
相关度计算模块,用于计算初始查询向量和兴趣向量集合的相关度;
[0049]
向量组合模块,用于当初始查询向量和兴趣向量集合的相关度大于或等 于预设阈值时,组合初始查询向量和兴趣向量集合,得到查询组合向量;
[0050]
向量加密模块,用于基于预设的全同态加密算法对查询组合向量进行加 密,得到加密向量;
[0051]
同态检索模块,用于基于加密向量在预设的加密文件索引表中进行同态 检索,得到同态检索结果,并对同态检索结果进行解密,得到信息检索结果。
[0052]
为了解决上述技术问题,本技术实施例还提供一种计算机设备,采用了 如下所述的技术方案:
[0053]
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可 读指令,所述处理器执行所述计算机可读指令时实现如上述任一项所述的信 息检索方法的步骤。
[0054]
为了解决上述技术问题,本技术实施例还提供一种计算机可读存储介质, 采用了如下所述的技术方案:
[0055]
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可 读指令,所述计算机可读指令被处理器执行时实现如上述中任一项所述的信 息检索方法的步骤。
[0056]
与现有技术相比,本技术实施例主要有以下有益效果:
[0057]
本技术公开了一种信息检索方法、装置,计算机设备及存储介质,属于 大数据技术领域。本技术通过获取目标用户输入的查询语句,提取查询语句 的关键词组合,对关键词组合进行向量转化,得到初始查询向量,获取目标 用户的兴趣向量,得到兴趣向量集合,计算初始查询向量和兴趣向量集合的 相关度,当相关度大于或等于预设阈值时,组合初始查询向量和兴趣向量集 合,得到查询组合向量,基于预设的全同态加密算法对查询组合向量进行加 密,得到加密向量,基于加密向量在预设的加密文件索引表中进行同态检索, 得到同态检索结果,并对同态检索结果进行解密,得到信息检索结果。本申 请通过结合目标用户输入的查询语句的特征以及目标用户的兴趣特征生成查 询组合向量,通过查询组合向量进行信息检索,提高了信息检索的精度,同 时通过全同态加密算法对查询组合向量进行加密以及同态检索,避免了用户 隐私的泄露。
附图说明
[0058]
为了更清楚地说明本技术中的方案,下面将对本技术实施例描述中所需 要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本技术的 一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
[0059]
图1示出了本技术可以应用于其中的示例性系统架构图;
[0060]
图2示出了根据本技术的信息检索方法的一个实施例的流程图;
[0061]
图3示出了根据图2中步骤s203的一个实施例的流程图;
[0062]
图4示出了根据本技术的信息检索方法的兴趣向量集合更新的一个实施 例的流程图
[0063]
图5示出了根据本技术的信息检索装置的一个实施例的结构示意图;
[0064]
图6示出了根据本技术的计算机设备的一个实施例的结构示意图。
具体实施方式
[0065]
除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技 术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的 术语只是为了描述具体的实施例的目的,不是旨在于限制本技术;本技术的 说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们 的任何变形,意图在于覆盖不排他的包含。本技术的说明书和权利要求书或 上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描 述特定顺序。
[0066]
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或 特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该 短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备 选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施 例可以与其它实施例相结合。
[0067]
为了使本技术领域的人员更好地理解本技术方案,下面将结合附图,对 本技术实施例中的技术方案进行清楚、完整地描述。
[0068]
如图1所示,系统架构100可以包括终端设备101、102、103,网络104 和服务器105。网络104用以在终端设备101、102、103和服务器105之间提 供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信 链路或者光纤电缆等等。
[0069]
用户可以使用终端设备101、102、103通过网络104与服务器105交互, 以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户 端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、 邮箱客户端、社交平台软件等。
[0070]
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电 子设备,包括但不限于智能手机、平板电脑、电子书阅读器、mp3播放器(movingpicture expertsgroup audio layer iii,动态影像专家压缩标准音频层面3)、 mp4(moving pictureexperts group audio layer iv,动态影像专家压缩标 准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
[0071]
服务器105可以是提供各种服务的服务器,例如对终端设备101、102、 103上显示的页面提供支持的后台服务器,服务器可以是独立的服务器,也可 以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、 中间件服务、域名服务、安全服务、内容分发网络(content delivery network, cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
[0072]
需要说明的是,本技术实施例所提供的信息检索方法一般由服务器执行, 相应地,信息检索装置一般设置于服务器中。
[0073]
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。 根据实现需要,可以具有任意数目的终端设备、网络和服务器。
[0074]
继续参考图2,示出了根据本技术的信息检索方法的一个实施例的流程图。 本申
请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中, 人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算 机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识 获得最佳结果的理论、方法、技术及应用系统。
[0075]
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分 布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能 软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理 技术、自然语言处理技术以及机器学习/深度学习等几大方向。所述的信息检 索方法,包括以下步骤:
[0076]
s201,接收信息检索指令,并获取目标用户输入的查询语句。
[0077]
目前的个性化信息检索通常是对用户隐私进行进行语义分析,通过将语 义分析结果作为检索要点,进行信息检索,但现有的个性化信息检索方案的 误差较大,且容易出现用户隐私泄露的隐患。本技术通过结合目标用户输入 的查询语句的特征以及目标用户的兴趣特征生成查询组合向量,通过查询组 合向量进行信息检索,提高了信息检索的精度,同时通过全同态加密算法对 查询组合向量进行加密以及同态检索,避免了用户隐私的泄露。
[0078]
具体的,服务器在接收信息检索指令,并获取目标用户输入的查询语句, 目标用户为具有信息检索需求的用户。
[0079]
在本实施例中,信息检索方法运行于其上的电子设备(例如图1所示的服 务器)可以通过有线连接方式或者无线连接方式接收信息检索指令。需要指出 的是,上述无线连接方式可以包括但不限于3g/4g连接、wifi连接、蓝牙连 接、wimax连接、zigbee连接、uwb(ultra wideband)连接、以及其他现在 已知或将来开发的无线连接方式。
[0080]
s202,对查询语句进行关键词提取,得到查询语句对应的关键词组合。
[0081]
具体的,服务器基于预设的关键词提取算法对查询语句进行关键词提取, 得到查询语句对应的关键词组合。需要说明的是,预设的关键词提取算法可 以是无监督关键词提取方法或者有监督关键词提取方法中的任意一种,本申 请对此并不做限定。
[0082]
进一步地,对查询语句进行关键词提取,得到查询语句对应的关键词组 合,具体包括:
[0083]
对查询语句进行分词处理,得到文本分词;
[0084]
基于预设的关键词提取算法从文本分词中提取关键词,得到查询语句对 应的关键词组合。
[0085]
具体的,服务器在接收到查询语句之后,对查询语句进行分词处理,得 到文本分词,然后对文本分词进行去重处理,最后基于预设的关键词提取算 法从文本分词中提取关键词,得到查询语句对应的关键词组合。在本技术一 种具体的实施例中,关键词提取算法为tf-idf算法,tf-idf(term frequency
ꢀ–
inverse document frequency,词频-逆向文件频率)是一种用于信息检索 (information retrieval)与文本挖掘(text mining)的常用加权技术, tf-idf是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的 其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比 增加,但同时会随着它在语料库中出现的频率成反比下降,tf-idf的主要思 想是:如果某个单词在一篇文章中出现的频率tf高,并且在其他文章中很少 出现,则认为此词或者短语具有很好的类
别区分能力,适合用来分类。
[0086]
s203,对关键词组合进行向量转化,得到初始查询向量。
[0087]
具体的,服务器通过比对预设的关键词列表和关键词列表中的关键词来 对关键词组合进行赋值操作,赋值完成后得到初始查询向量。
[0088]
进一步地,请参考图3,对关键词组合进行向量转化,得到初始查询向量, 具体包括:
[0089]
s301,获取预设的关键词列表;
[0090]
s302,分别判断关键词组合中的关键词是否存在于关键词列表中;
[0091]
s303,基于关键词判断结果对关键词组合进行向量转化,得到初始查询 向量。
[0092]
进一步地,基于关键词判断结果对关键词组合进行向量转化,得到初始 查询向量,具体包括:
[0093]
若关键词组合中的关键词存在于关键词列表中,则关键词的赋值为“1”;
[0094]
若关键词组合中的关键词不存在于关键词列表中,则关键词的赋值为“0”;
[0095]
当关键词组合中的所有关键词均完成赋值后,组合所有关键词的赋值, 得到初始查询向量。
[0096]
具体的,服务器先获取预设的关键词列表a0,关键词列表a0具有全局性, 对所有用户均有效,然后分别将关键词组合a1中的每一个关键词与关键词列 表a0中的关键词进行比对,判断关键词组合a1中的关键词是否存在于关键词 列表a0中,根据关键词组合a1中的关键词是否存在于关键词列表a0中来为关 键词进行赋值,如果关键词组合a1中的关键词存在于关键词列表a0中,则关 键词的赋值为“1”,否则,关键词的赋值为“0”,最后组合所有关键词的赋 值,得到初始查询向量q0。
[0097]
在本技术具体的实施例中,关键词列表a0={a1,a2,

,an},关键词组 合a1={a2、a4、a5},则初始查询向量q0={0,1,0,1,1,0,

,0}。例如,在一 个实施例中,关键词列表a0中包含7个关键词{天气,篮球,足球,医学,智 能汽车,电影,红楼梦},目标用户搜索的语句是“足球比赛的进展”,通过 关键词提取可以提取出关键词组合a1{足球,比赛,进展},通过关键词比对 可知,只有“足球”这个关键词存在于关键词列表a0,将在关键词列表a0中 将关键词“足球”赋值为“1”,其余关键词赋值为“0”,得到初始查询向量q0=(0,0,1,0,0,0,0)。
[0098]
s204,从预设的兴趣库中获取目标用户的兴趣向量,得到兴趣向量集合。
[0099]
具体的,预设的兴趣库中存储有若干用户的兴趣向量,服务器从预设的 兴趣库中获取目标用户的兴趣向量,得到兴趣向量集合。目标用户可以有多 个兴趣,例如,某个用户可能同时是体育迷和文学爱好者,此时该用户可能 对应存在两个兴趣向量。
[0100]
进一步地,在从预设的兴趣库中获取目标用户的兴趣向量,得到兴趣向 量集合之前,还包括:
[0101]
获取目标用户的用户数据,得到目标用户数据;
[0102]
从目标用户数据中提取兴趣特征,得到目标兴趣特征;
[0103]
对得到的所有目标兴趣特征进行向量转化,得到兴趣向量集合;
[0104]
将兴趣向量集合导入兴趣库进行存储。
[0105]
具体的,服务器在从预设的兴趣库中获取目标用户的兴趣向量之前,还 需要获取目标用户的用户数据,得到目标用户数据,从目标用户数据中提取 兴趣特征,得到目标兴
趣特征,对得到的所有目标兴趣特征进行向量转化, 得到兴趣向量集合,将兴趣向量集合导入兴趣库进行存储。
[0106]
s205,计算初始查询向量和兴趣向量集合的相关度。
[0107]
具体的,服务器计算初始查询向量和兴趣向量集合的相关度,通过初始 查询向量和兴趣向量集合的相关度来组合生成查询向量,本技术通过结合目 标用户输入的查询语句的特征以及目标用户的兴趣特征生成查询组合向量, 通过查询组合向量进行信息检索,提高了信息检索的精度。
[0108]
进一步地,通过以下公式计算初始查询向量和兴趣向量集合的相关度:
[0109][0110]
式中,q0为初始查询向量,ij为目标用户的兴趣向量集合bi中的第j个 兴趣向量,兴趣向量集合bi由m个目标兴趣向量{i1,i2,...,im}构成,sj为目标用户的第j个目标兴趣向量ij和初始查询向量q0相关度。
[0111]
s206,当初始查询向量和兴趣向量集合的相关度大于或等于预设阈值时, 组合初始查询向量和兴趣向量集合,得到查询组合向量。
[0112]
具体的,服务器通过初始查询向量和兴趣向量集合的相关度,当初始查 询向量和兴趣向量集合的相关度大于或等于预设阈值时,组合初始查询向量 和兴趣向量集合,得到查询组合向量,通过查询组合向量进行信息检索,提 高了信息检索的精度。
[0113]
s207,基于预设的全同态加密算法对查询组合向量进行加密,得到加密 向量。
[0114]
其中,同态加密(homomorphic encryption)是一种加密形式,它允许 人们对密文进行特定形式的代数运算得到仍然是加密的结果,将其解密所得 到的结果与对明文进行同样的运算结果一样。换言之,这项技术令人们可以 在加密的数据中进行诸如检索、比较等操作,得出正确的结果,而在整个处 理过程中无需对数据进行解密。全同态加密(fully homomorphic encryption), 支持对密文进行任意计算的密码系统称为全同态加密(fhe)。这种方案能够为 任何所需功能构建程序,这些功能可以在加密输入上运行以产生结果加密。 由于这样的程序永远不需要解密其输入,因此它可以由不受信任的一方运行, 而不会泄露其输入和内部状态。
[0115]
具体的,服务器基于预设的全同态加密算法对查询组合向量进行加密, 得到加密向量,通过全同态加密算法对查询组合向量进行加密以及同态检索, 避免了用户隐私的泄露。需要说明的是,预设的全同态加密算法可以是ckks 算法、bgv算法或者能实现全同态加密的任意一种算法,本技术对此并不做限 定。
[0116]
s208,基于加密向量在预设的加密文件索引表中进行同态检索,得到同 态检索结果,并对同态检索结果进行解密,得到信息检索结果。
[0117]
具体的,服务器在得到加密向量后,将加密向量导入加密文件索引表中 进行同态检索,然后服务器继续对同态检索结果进行解密,得到信息检索结 果,并将信息检索结果展示给目标用户,在本技术中中文件索引表是通过全 同态加密算法提前进行加密的。本技术通过全同态加密算法对查询组合向量 进行加密以及同态检索,避免了用户隐私的泄露。
[0118]
需要额外说明的是,本技术中查询语句对应的初始查询向量、兴趣库中 的兴趣向
量以及加密文件索引表中各个文档对应的向量均为n维实数向量, 且其中每个向量的元素分量取值在实数区间[0,1]之内,即都是大于等于0, 小于等于1的实数。
[0119]
进一步地,在基于加密向量在预设的加密文件索引表中进行同态检索, 得到同态检索结果,并对同态检索结果进行解密,得到信息检索结果之后, 还包括:
[0120]
对兴趣向量集合进行更新。
[0121]
具体的,服务器在每一次信息检索完成后,均对目标用户的兴趣向量集 合进行一次更新。
[0122]
进一步地,请参考图4,对兴趣向量集合进行更新,具体包括:
[0123]
s401,将兴趣向量集合中的每一个目标兴趣向量均乘以预设衰退因子, 得到兴趣衰退向量集合;
[0124]
s402,计算兴趣衰退向量集合中每一个兴趣衰退向量的向量值;
[0125]
s403,分别将每一个兴趣衰退向量的向量值与预设衰退阈值进行比对;
[0126]
s404,将向量值小于预设衰退阈值的兴趣衰退向量从兴趣衰退向量集合 中剔除,得到兴趣更新向量合集;
[0127]
s405,将初始查询向量添加到兴趣更新向量合集,以完成对兴趣向量集 合的更新。
[0128]
具体的,服务器将兴趣向量集合中的每一个目标兴趣向量均乘以预设衰 退因子,衰退因子为一个小于1的系数,得到兴趣衰退向量集合,计算兴趣 衰退向量集合中每一个兴趣衰退向量的向量值,并分别将每一个兴趣衰退向 量的向量值与预设衰退阈值进行比对,将向量值小于预设衰退阈值的兴趣衰 退向量从兴趣衰退向量集合中剔除,得到兴趣更新向量合集,将初始查询向 量添加到兴趣更新向量合集,以完成对兴趣向量集合的更新,在每一次信息 检索完成后,通过衰退因子剔除一些向量值低于预设衰退阈值的兴趣向量, 进一步保证信息检索的精度,提升用户使用体验。
[0129]
在上述实施例中,本技术公开了一种信息检索方法,属于大数据技术领 域。本技术通过获取目标用户输入的查询语句,提取查询语句的关键词组合, 对关键词组合进行向量转化,得到初始查询向量,获取目标用户的兴趣向量, 得到兴趣向量集合,计算初始查询向量和兴趣向量集合的相关度,当相关度 大于或等于预设阈值时,组合初始查询向量和兴趣向量集合,得到查询组合 向量,基于预设的全同态加密算法对查询组合向量进行加密,得到加密向量, 基于加密向量在预设的加密文件索引表中进行同态检索,得到同态检索结果, 并对同态检索结果进行解密,得到信息检索结果。本技术通过结合目标用户 输入的查询语句的特征以及目标用户的兴趣特征生成查询组合向量,通过查 询组合向量进行信息检索,提高了信息检索的精度,同时通过全同态加密算 法对查询组合向量进行加密以及同态检索,避免了用户隐私的泄露。
[0130]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程, 是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可 存储于一计算机可读取存储介质中,该计算机可读指令在执行时,可包括如 上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读 存储记忆体(read-only memory,rom)等非易失性存储介质,或随机存储记 忆体(random access memory,ram)等。
[0131]
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显 示,但是
这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有 明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序 执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多 个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在 不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或 者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0132]
进一步参考图5,作为对上述图2所示方法的实现,本技术提供了一种信 息检索装置的一个实施例,该装置实施例与图2所示的方法实施例相对应, 该装置具体可以应用于各种电子设备中。
[0133]
如图5所示,本实施例所述的信息检索装置500包括:
[0134]
指令接收模块501,用于接收信息检索指令,并获取目标用户输入的查询 语句;
[0135]
关键词提取模块502,用于对查询语句进行关键词提取,得到查询语句对 应的关键词组合;
[0136]
向量转化模块503,用于对关键词组合进行向量转化,得到初始查询向量;
[0137]
向量获取模块504,用于从预设的兴趣库中获取目标用户的兴趣向量,得 到兴趣向量集合;
[0138]
相关度计算模块505,用于计算初始查询向量和兴趣向量集合的相关度;
[0139]
向量组合模块506,用于当初始查询向量和兴趣向量集合的相关度大于或 等于预设阈值时,组合初始查询向量和兴趣向量集合,得到查询组合向量;
[0140]
向量加密模块507,用于基于预设的全同态加密算法对查询组合向量进行 加密,得到加密向量;
[0141]
同态检索模块508,用于基于加密向量在预设的加密文件索引表中进行同 态检索,得到同态检索结果,并对同态检索结果进行解密,得到信息检索结 果。
[0142]
进一步地,关键词提取模块502具体包括:
[0143]
分词处理单元,用于对查询语句进行分词处理,得到文本分词;
[0144]
关键词提取单元,用于基于预设的关键词提取算法从文本分词中提取关 键词,得到查询语句对应的关键词组合。
[0145]
进一步地,向量转化模块503具体包括:
[0146]
关键词列表获取单元,用于获取预设的关键词列表;
[0147]
关键词比对单元,用于分别判断关键词组合中的关键词是否存在于关键 词列表中;
[0148]
向量转化单元,用于基于关键词判断结果对关键词组合进行向量转化, 得到初始查询向量。
[0149]
进一步地,向量转化单元具体包括:
[0150]
第一赋值子单元,用于当关键词组合中的关键词存在于关键词列表中, 关键词的赋值为“1”;
[0151]
第二赋值子单元,用于当关键词组合中的关键词不存在于关键词列表中, 关键词的赋值为“0”;
[0152]
向量转化子单元,用于当关键词组合中的所有关键词均完成赋值后,组 合所有关键词的赋值,得到初始查询向量。
[0153]
进一步地,信息检索装置还包括:
[0154]
用户数据获取模块,用于获取目标用户的用户数据,得到目标用户数据;
[0155]
兴趣特征提取模块,用于从目标用户数据中提取兴趣特征,得到目标兴 趣特征;
[0156]
特征向量转化模块,用于对得到的所有目标兴趣特征进行向量转化,得 到兴趣向量集合;
[0157]
兴趣向量存储模块,用于将兴趣向量集合导入兴趣库进行存储。
[0158]
进一步地,通过以下公式计算初始查询向量和兴趣向量集合的相关度:
[0159][0160]
式中,q0为初始查询向量,ij为目标用户的兴趣向量集合bi中的第j个 兴趣向量,兴趣向量集合bi由m个目标兴趣向量{i1,i2,...,im}构成,sj为目标用户的第j个目标兴趣向量ij和初始查询向量q0相关度。
[0161]
进一步地,信息检索装置还包括:
[0162]
兴趣向量更新模块,用于对兴趣向量集合进行更新。
[0163]
进一步地,兴趣向量更新模块具体包括:
[0164]
衰退计算单元,用于将兴趣向量集合中的每一个目标兴趣向量均乘以预 设衰退因子,得到兴趣衰退向量集合;
[0165]
向量值计算单元,用于计算兴趣衰退向量集合中每一个兴趣衰退向量的 向量值;
[0166]
向量值比对单元,用于分别将每一个兴趣衰退向量的向量值与预设衰退 阈值进行比对;
[0167]
向量剔除单元,用于将向量值小于预设衰退阈值的兴趣衰退向量从兴趣 衰退向量集合中剔除,得到兴趣更新向量合集;
[0168]
兴趣向量更新单元,用于将初始查询向量添加到兴趣更新向量合集,以 完成对兴趣向量集合的更新。
[0169]
在上述实施例中,本技术公开了一种信息检索装置,属于大数据技术领 域。本技术通过获取目标用户输入的查询语句,提取查询语句的关键词组合, 对关键词组合进行向量转化,得到初始查询向量,获取目标用户的兴趣向量, 得到兴趣向量集合,计算初始查询向量和兴趣向量集合的相关度,当相关度 大于或等于预设阈值时,组合初始查询向量和兴趣向量集合,得到查询组合 向量,基于预设的全同态加密算法对查询组合向量进行加密,得到加密向量, 基于加密向量在预设的加密文件索引表中进行同态检索,得到同态检索结果, 并对同态检索结果进行解密,得到信息检索结果。本技术通过结合目标用户 输入的查询语句的特征以及目标用户的兴趣特征生成查询组合向量,通过查 询组合向量进行信息检索,提高了信息检索的精度,同时通过全同态加密算 法对查询组合向量进行加密以及同态检索,避免了用户隐私的泄露。
[0170]
为解决上述技术问题,本技术实施例还提供计算机设备。具体请参阅图6, 图6为本实施例计算机设备基本结构框图。
[0171]
所述计算机设备6包括通过系统总线相互通信连接存储器61、处理器62、 网络接口63。需要指出的是,图中仅示出了具有组件61-63的计算机设备6, 但是应理解的是,并不
要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程门阵列(field-programmablegatearray,fpga)、数字处理器(digitalsignalprocessor,dsp)、嵌入式设备等。
[0172]
所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
[0173]
所述存储器61至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器61可以是所述计算机设备6的内部存储单元,例如该计算机设备6的硬盘或内存。在另一些实施例中,所述存储器61也可以是所述计算机设备6的外部存储设备,例如该计算机设备6上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,所述存储器61还可以既包括所述计算机设备6的内部存储单元也包括其外部存储设备。本实施例中,所述存储器61通常用于存储安装于所述计算机设备6的操作系统和各类应用软件,例如信息检索方法的计算机可读指令等。此外,所述存储器61还可以用于暂时地存储已经输出或者将要输出的各类数据。
[0174]
所述处理器62在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器62通常用于控制所述计算机设备6的总体操作。本实施例中,所述处理器62用于运行所述存储器61中存储的计算机可读指令或者处理数据,例如运行所述信息检索方法的计算机可读指令。
[0175]
所述网络接口63可包括无线网络接口或有线网络接口,该网络接口63通常用于在所述计算机设备6与其他电子设备之间建立通信连接。
[0176]
本技术公开了一种计算机设备,属于大数据技术领域。本技术通过获取目标用户输入的查询语句,提取查询语句的关键词组合,对关键词组合进行向量转化,得到初始查询向量,获取目标用户的兴趣向量,得到兴趣向量集合,计算初始查询向量和兴趣向量集合的相关度,当相关度大于或等于预设阈值时,组合初始查询向量和兴趣向量集合,得到查询组合向量,基于预设的全同态加密算法对查询组合向量进行加密,得到加密向量,基于加密向量在预设的加密文件索引表中进行同态检索,得到同态检索结果,并对同态检索结果进行解密,得到信息检索结果。本技术通过结合目标用户输入的查询语句的特征以及目标用户的兴趣特征生成查询组合向量,通过查询组合向量进行信息检索,提高了信息检索的精度,同时通过全同态加密算法对查询组合向量进行加密以及同态检索,避免了用户隐私的泄露。
[0177]
本技术还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的信息检索方法的步骤。
[0178]
本技术公开了一种存储介质,属于大数据技术领域。本技术通过获取目标用户输
入的查询语句,提取查询语句的关键词组合,对关键词组合进行向 量转化,得到初始查询向量,获取目标用户的兴趣向量,得到兴趣向量集合, 计算初始查询向量和兴趣向量集合的相关度,当相关度大于或等于预设阈值 时,组合初始查询向量和兴趣向量集合,得到查询组合向量,基于预设的全 同态加密算法对查询组合向量进行加密,得到加密向量,基于加密向量在预 设的加密文件索引表中进行同态检索,得到同态检索结果,并对同态检索结 果进行解密,得到信息检索结果。本技术通过结合目标用户输入的查询语句 的特征以及目标用户的兴趣特征生成查询组合向量,通过查询组合向量进行 信息检索,提高了信息检索的精度,同时通过全同态加密算法对查询组合向 量进行加密以及同态检索,避免了用户隐私的泄露。
[0179]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述 实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通 过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的 技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体 现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光 盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务 器,空调器,或者网络设备等)执行本技术各个实施例所述的方法。
[0180]
本技术可用于众多通用或专用的计算机系统环境或配置中。例如:个人 计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系 统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型 计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本 申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程 序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例 程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本 申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备 来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的 本地和远程计算机存储介质中。
[0181]
显然,以上所描述的实施例仅仅是本技术一部分实施例,而不是全部的 实施例,附图中给出了本技术的较佳实施例,但并不限制本技术的专利范围。 本技术可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使 对本技术的公开内容的理解更加透彻全面。尽管参照前述实施例对本技术进 行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体 实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替 换。凡是利用本技术说明书及附图内容所做的等效结构,直接或间接运用在 其他相关的技术领域,均同理在本技术专利保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1