基于词向量的搜索方法、装置、设备及存储介质
文献发布时间:2023-06-19 10:48:02
技术领域
本申请涉及文本搜索技术领域,尤其涉及一种基于词向量的搜索方法、装置、设备及存储介质。
背景技术
目前,常见的搜索算法包括基于tf-idf的搜索算法、基于图推荐TextRank的搜索算法或基于词向量的搜索算法。其中,基于tf-idf的搜索算法虽然具有速度快的优势,但是由于基于tf-idf的搜索算法没有考虑到词与词以及词与句子之间的关系,导致搜索结果的精度不高。而基于图推荐TextRank的搜索算法虽然考虑到词与词之间的词权重转移,却仍然是基于词粒度,没有考虑到上下文之间的深层语义联系。另外,基于词向量的方法可以一定程度上缓解搜索同义词的匹配问题但是会给搜索带来很大的开销。与tf-idf的倒排索引不同的是,词向量需要搜索的query与库中每一个话术的向量进行余弦相似度计算,会带来巨大的计算开销。
因此,现有的搜索算法存在搜索精度不高或者是计算开销大的问题。
发明内容
本申请提供了一种基于词向量的搜索方法、装置、设备及存储介质,能够在保证搜索精度的同时不增加计算开销。
第一方面,本申请提供了一种基于词向量的搜索方法,所述方法包括:
响应于用户输入的索引内容,确定所述索引内容的关键词;
分别在预先存储的索引表中查找各个所述关键词的词向量;
计算各个所述词向量与所有目标长文本之间的相似度,所述目标长文本为预先存储的与所述索引内容关联的所有长文本,所述预先存储的与所述索引内容关联的所有长文本为基于XLINE模型对所述索引内容进行分析,得到的包含所述索引内容的各个所述关键词的词向量文本;
基于所述相似度显示与所述索引内容相匹配的搜索结果。
第二方面,本申请还提供了一种基于词向量的搜索装置,所述装置包括:
确定模块,用于响应于用户输入的索引内容,确定所述索引内容的关键词;
查找模块,用于分别在预先存储的索引表中查找各个所述关键词的词向量;
计算模块,用于计算各个所述词向量与所有目标长文本之间的相似度,所述目标长文本为预先存储的与所述索引内容关联的所有长文本,所述预先存储的与所述索引内容关联的所有长文本为基于XLINE模型对所述索引内容进行分析,得到的包含所述索引内容的各个所述关键词的词向量文本;
显示模块,用于基于所述相似度显示与所述索引内容相匹配的搜索结果。
第三方面,本申请还提供了一种基于词向量的搜索设备,所述设备包括存储器和处理器;
所述存储器用于存储计算机程序;
所述处理器,用于执行所述计算机程序并在执行所述计算机程序时实现如上第一方面所述的基于词向量的搜索方法。
第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器实现如上第一方面所述的基于词向量的搜索方法。
本申请公开了一种基于词向量的搜索方法、装置、设备及存储介质,通过响应于用户输入的索引内容,确定所述索引内容的关键词;分别在预先存储的倒排索引表中查找各个所述关键词的词向量;计算各个所述词向量与所有目标长文本之间的相似度,所述目标长文本为预先存储的与所述索引内容关联的所有长文本;基于所述相似度显示与所述索引内容相匹配的搜索结果;所述预先存储的与所述索引内容关联的所有长文本为基于XLINE模型对所述索引内容进行分析,得到的包含有所述索引内容的关键词的所有长文本。能够保证搜索精度的同时不增加计算开销。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的基于词向量的搜索方法的示意流程图;
图2是图1中S102的具体实现流程图;
图3是本申请实施例的提供一种基于词向量的搜索装置的示意性框图;
图4是本申请实施例提供的一种基于词向量的搜索设备的结构示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本申请的实施例提供了一种基于词向量的搜索方法、终端、服务器及存储介质。本申请实施例提供的基于词向量的搜索方法可用于对用户输入的索引内容基于词向量进行匹配分析,显示与用户输入的索引内容相匹配的搜索结果,在不增加终端计算开销的同时能够保证搜索精度。
例如,本申请的实施例提供的基于词向量的搜索方法,可应用于基于词向量的搜索设备,所述基于词向量的搜索设备可以是终端或者服务器,通过对用户输入的索引内容基于词向量进行匹配分析,显示与用户输入的索引内容相匹配的搜索结果,通过调用预先训练完成的XLINE模型能够在不增加计算开销的同时保证了搜索精度。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参阅图1,图1是本申请一实施例提供的基于词向量的搜索方法的示意流程图。该基于词向量的搜索方法用于基于词向量的搜索设备,具体基于词向量的搜索设备响应于用户输入的索引内容后,通过与所述索引内容关联的所有长文本,确定与所述索引内容相匹配的搜索结果,与所述索引内容关联的所有长文本为基于预先训练完成的XLNE模型对用户输入的索引内容进行分析得到,在保证搜索精度的同时不提高终端的计算开销。
如图1所示,本实施例提高的基于词向量的搜索方法,具体包括:步骤S101至步骤S104。详述如下:
S101、响应于用户输入的索引内容,确定所述索引内容的关键词。
其中,用户可以基于终端设备上的搜索引擎输入所述索引内容。所述搜索引擎可以是,例如百度平台、知乎平台、搜狗平台等搜索引擎。所述索引内容可以是代表用户搜索意图的文本信息,例如,“深圳好喝的下午茶”,“北京机场附近酒店”等。
终端设备响应于用户输入的索引内容后,采用预设的分词方式对所述索引内容进行分词处理,对分词处理之后的各个词进行关键性排序,得到所述索引内容的关键词。
示例性地,请参阅图2所示,在本申请的具体实现方式中,S101包括S1011至S1023,详述如下:
S1021,响应于用户输入的索引内容,对所述索引内容进行分词处理。
具体地,可以采用基于预设的分词器对所述索引内容进行分词处理,例如,预设的分词器可以是JIEBA、HANIP、STANFORD CORENLP、IKANALYZER、NLPIR等常见分词器中的任意一种。
S1022,生成分词处理之后各个词的有权无向图。
在本申请的实施例中,以分词处理之后各个词分别为所述有权无向图的各个词节点;通过预设的窗口长度(例如L)对所有词节点进行滑窗操作,构建各个词节点之间边的权重,生成所述有权无向图。
其中,通过预设的窗口长度进行滑窗操作时,所有在所述预设的窗口内的词都被作为当前词节点的相邻词节点,当有两个相邻词节点出现在同一预设的窗口内时,该两个相邻词节点之间边的词权重值增加1。
具体地,所述有权无向图中各个词节点的词权重表示词节点的重要性,也就是这个词节点对应的词语对于整个搜索内容的贡献度,所述有权无向图中两个词节点之间边的词权重值表示两个词节点的关联程度,也就是两个词节点代表的词的相关度。
S1023,基于所述有权无向图确定所述索引内容的关键词。
利用文本基于图的排序TextRank算法对所述有权无向图进行分析,并结合词频-逆文档频率TF-IDF算法得到所述索引内容的关键词。具体地,利用TextRank算法的词节点词权重更新公式不断迭代所述有权无向图中各个词节点的词权重值;当迭代达到预设的更新次数或者各个词节点的词权重收敛后,对各个词节点的词权重进行排序,得到所述有权无向图中各个词节点的词权重序列;根据词频-逆文档频率TF-IDF算法确定所述索引内容的关键词;获取所述词权重序列中与通过所述TF-IDF算法确定的所述关键词相同的各个词节点的词作为所述索引内容的关键词。
需要说明的是,假设通过所述TF-IDF算法确定的所述关键词的数量小于预设的关键词数量,则从所述词节点词权重序列中按照词权重从大到小的顺序获取与所述关键词不同的各个词节点的词进行填充,直至得到预设数量的所述关键词。
示例性地,所述TextRank算法的词节点词权重更新公式,包括:
其中,WS(V
此外,所述TEXTRANK算法的词节点词权重更新公式中的第一项(1-d)表示完全随机访问各个词节点,第二项表示各个词节点的词权重状态分布是平稳分布时,按照预设的转移策略访问各个词节点。具体地,在本申请的实施例中,所述转移策略为任意一个词节点的词权重是由它所有的相邻结点的词权重共同决定的,而每一个相邻结点决定的程度是由这个相邻结点V
示例性地,假设用户现在想要在“知乎平台”搜索“深圳好喝的下午茶且环境好”相关的文章,而这种类型的文章往往是没有标题的,通常可能仅是记录生活体验的文本。在知乎平台的数据库中需要根据用户输入的一段话“深圳好喝的下午茶且环境好”来匹配出“相应”的搜索结果并显示。也即,所述索引内容是“深圳好喝的下午茶且环境好”,首先假设预设的关键词数量为2,基于TextRank算法得到了4个关键词,假设按照词权重值大小排序后分别是{喝、草莓汁、咖啡、下午茶},基于TF-IDF算法得到了六个关键词,按照得分从大到小排序后分别是{咖啡、下午茶、好、美味、奶茶、糖},从根据TextRank算法得到了4个关键词和基于TF-IDF算法得到了六个关键词中无法选取相同的预设数量(2个)关键词,实际上只有一个形态的关键词{咖啡},则需要从TextRank算法得到了4个关键词中选出词权重值最高且与咖啡不同的关键词{喝}与{咖啡}一起构成所述索引内容的关键词。
在本实施例中,通过将TextRank算法和TF-IDF算法进行结合,既考虑了词之间的关联性,也考虑了文档外部结构信息。
S102、分别在预先存储的索引表中查找各个所述关键词的词向量。
其中,所述预先存储的索引表包括正序索引表或者反序索引表;所述正序索引表包括按照预设顺序排列的第一预设数量的索引号组成的词向量,所述索引号为抽取的与所述关键词相关联的文章标识信息。
其中,与所述关键词相关联的文章包括包含有所述关键词的同义词。
例如,所述预先存储的索引表为正索引表,关键词“我”的所述正索引表包括{“文章标识信息(ID)”文章1,文章2,…,文章i,“同义词”}。
所述反序索引表由第二预设数量的与所述关键词的关联度从大到小的词组成的词向量。
S103、计算各个所述词向量与所有目标长文本之间的相似度,所述目标长文本为预先存储的与所述索引内容关联的所有长文本,所述预先存储的与所述索引内容关联的所有长文本为基于XLINE模型对所述索引内容进行分析,得到的包含所述索引内容的各个所述关键词的词向量文本。
示例性地,可以根据预设的相似度计算规则计算各个所述词向量与所有目标长文本之间的相似度。例如预设的相似度计算规则包括余弦相似度计算规则。
所述预先训练完成的XLIN模型包括双流自注意力机制和注意力标注attentionMask机制;所述双流自注意力机制包括自回归语言模型和自编码语言模型;所述attentionMask机制用于在所述自回归语言模型和所述自编码语言模型进行输入序列到输出序列转换过程中,对被输入序列选到的单词进行标记并隐藏掉,且使得没有被输入序列选取到的单词在预测结果中不发生作用。
需要说明的是,所述预先训练完成的XLINE模型可以是离线训练完成的XLINE模型,在训练完成之后安装于所述基于词向量的搜索设备之上,以节省所述基于词向量的搜索设备的计算开销。
在本申请的实施例中,所述基于XLINE模型对所述索引内容进行分析,得到的包含所述索引内容的各个所述关键词的词向量文本,包括:将所述索引内容输入所述双流自注意力机制进行分析,在所述双流自注意力机制中得到所述索引内容的各个关键词的所有相关性词;在所述attention Mask机制中对与所述索引内容的各个关键词不相关的词进行标记并隐藏,基于所述双流自注意力机制和所述attention Mask机制实现对所述索引内容的各个关键词的所有相关性词的整合,得到各个所述关键词的词向量文本。
具体地,若需要根据上文内容预测下一个可能跟随的单词,或者根据下午预测前面的单词,也就是说自左向右的预测语言或者自右向左的预测语言时,常采用自回归语言模型。其中,自编码语言模型通过在输入X中随机去掉一部分单词,然后预训练过程中根据上下文单词来预测这些被去掉的单词,那些被去掉的单词就是在输入侧加入的所谓噪音。
在本申请的实施例中,所述XLNet模型是将上述两种语言模型进行融合,实现了通过自回归语言模型不用去掉噪音的功能,而又能应用到上下文的信息,也就是说,本申请的实施例中,XLNet主要是对预训练阶段的改进。示例性,假设在XLNet的预训练阶段输入的文本包括[x1,x2,x3,x4]四个主题,则在输入文本的索引函数index的全排列中有[x3,x2,x4,x1],[x2,x4,x3,x1],[x1,x4,x2,x3]和[x4,x3,x1,x2]四种组合;假设当前任务是预测索引值为3也就是索引函数的全排列中x3对应的词,在本申请的实施例中,使用自回归语言模型,从左到右结合上文预测下一个词,假设当前输入为[x3,x2,x4,x1]从左到右x3在最左所以此次全排列的输入无法获得上下文信息,假设当前输入为[x2,x4,x3,x1]从左到右x2以及x4都在x3的前面,这样就能够同时应用到上下文信息,对x3对应的词进行预测。
此外,尽管理论上可以把句子X的单词排列组合后,再随机抽取例子作为输入,但是,实际应用中,因为在模型的微调(Fine-tuning)阶段无法进行排列组合输入,所以,就必须在预训练阶段的输入部分,仍然用x1,x2,x3,x4的输入顺序,而在矩阵集合(Transformer)部分采取了注意力(Attention)掩码的机制;例如,若当前的输入句子是X,要预测的单词Ti是第i个单词,前面1到i-1个单词,则在输入部分观察不到变化,但是在Transformer内部,通过Attention掩码,从X的输入关键词里面,也就是Ti的上文和下文对应的词中,随机选择i-1个,放到Ti的上文位置中,把其它单词的输入通过Attention掩码(Mask)隐藏掉。
在本申请的实施例中,在具体实现的时候,XLNet是用双流自注意力模型实现的。其中,双流自注意力机制:一个是内容流自注意力,其实就是标准的Transformer的计算过程;主要是引入了询问Query流自注意力,具体地,引入了Query流自注意力代替Bert的标记Mask,因为XLNet希望抛掉标记符号,但是比如知道上文单词x1,x2,要预测单词x3,此时在x3对应位置的Transformer最高层去预测这个单词,但是输入侧不能看到要预测的单词x3,Bert其实是直接引入标记[Mask]来覆盖掉单词x3的内容的,等于说[Mask]是个通用的占位符号。而XLNet因为要抛掉[Mask]标记,但是又不能看到x3的输入,于是Query流直接忽略掉x3输入,只保留这个位置信息,用参数w来代表位置的embedding编码。具体地,XLNet只是扔了表面的[Mask]占位符号,内部还是引入Query流来忽略掉被Mask的这个单词,和Bert比,只是实现方式不同而已。也就是说,XLNet只是和Bert实现Mask的方式不同,为了结合[MASK]这个标签在fine-tuning阶段不存在从而会导致训练和预测不统一的问题,XLNet为了使训练和预测阶段统一通过Query流自注意力来实现遮罩。
示例性地,所述根据预先训练完成的XLIN模型对所述索引内容进行分析,得到包含所述索引内容的各个关键词的词向量文本,包括:将所述索引内容输入所述双流自注意力机制进行分析,在所述双流自注意力机制中得到所述索引内容的各个关键词的所有相关性词;在所述attention Mask机制中对与所述索引内容的各个关键词不相关的词进行标记并隐藏,基于所述双流自注意力机制和所述attention Mask机制实现对所述索引内容的各个关键词的所有相关性词的整合,得到各个所述关键词的词向量文本。
S104、基于所述相似度显示与所述索引内容相匹配的搜索结果。
示例性地,将与所述索引内容的相似度大于预设相似度阈值的文本内容作为与所述索引内容相匹配的搜索结果进行显示。
通过上述分析可知,本申请实施例提供的基于词向量的搜索方法,通过响应于用户输入的索引内容,确定所述索引内容的关键词;分别在预先存储的倒排索引表中查找各个所述关键词的词向量;计算各个所述词向量与所有目标长文本之间的相似度,所述目标长文本为预先存储的与所述索引内容关联的所有长文本;基于所述相似度显示与所述索引内容相匹配的搜索结果;所述预先存储的与所述索引内容关联的所有长文本为基于XLINE模型对所述索引内容进行分析,得到的包含有所述索引内容的关键词的所有长文本。能够保证搜索精度的同时不增加计算开销。
请参阅图3,图3是本申请实施例的提供一种基于词向量的搜索装置的示意性框图,该基于词向量的搜索装置用于执行上述的基于词向量的搜索方法。该基于词向量的搜索装置可以是手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等电子设备,或者服务器、服务器集群等。
如图4所示,基于词向量的搜索装置400包括:确定模块401、查找模块402、计算模块403和显示模块404。
确定模块401,用于响应于用户输入的索引内容,确定所述索引内容的关键词;
查找模块402,用于分别在预先存储的索引表中查找各个所述关键词的词向量;
计算模块403,用于计算各个所述词向量与所有目标长文本之间的相似度,所述目标长文本为预先存储的与所述索引内容关联的所有长文本,所述预先存储的与所述索引内容关联的所有长文本为基于XLINE模型对所述索引内容进行分析,得到的包含所述索引内容的各个所述关键词的词向量文本;
显示模块404,用于基于所述相似度显示与所述索引内容相匹配的搜索结果。
在一种可选的实现方式中,确定模块401包括:
处理单元,用于响应于用户输入的索引内容,对所述索引内容进行分词处理;
生成单元,用于生成分词处理之后各个词的有权无向图;
确定单元,用于基于所述有权无向图确定所述索引内容的关键词。
在一可选的实现方式中,所述有权无向图包括词节点和词权重,所述词节点由所述分词处理之后的各个词构成,所述词权重为通过预设的窗口长度对所有所述词节点进行滑窗操作,构建的各个词节点之间边的权重。
在一可选的实现方式中,所述确定单元,具体用于:
利用文本基于图的排序算法对所述有权无向图进行分析,结合词频-逆文档频率算法得到所述索引内容的关键词。
在一可选的实现方式中,所述预先存储的索引表包括正序索引表或者反序索引表;所述正序索引表包括按照预设顺序排列的第一预设数量的索引号组成的词向量,所述索引号为抽取的与所述关键词相关联的文章标识信息;
所述反序索引表由第二预设数量的与所述关键词的关联度从大到小的词组成的词向量。
在一可选的实现方式中,所述预先训练完成的XLIN模型包括双流自注意力机制和注意力标注attention Mask机制;所述双流自注意力机制包括自回归语言模型和自编码语言模型;所述attention Mask机制用于在所述自回归语言模型和所述自编码语言模型进行输入序列到输出序列转换过程中,对被输入序列选到的单词进行标记并隐藏掉,且使得没有被输入序列选取到的单词在预测结果中不发生作用。
在一可选的实现方式中,所述基于XLIN模型对所述索引内容进行分析,得到包含所述索引内容的各个关键词的词向量文本,包括:
将所述索引内容输入所述双流自注意力机制进行分析,在所述双流自注意力机制中得到所述索引内容的各个关键词的所有相关性词;
在所述attention Mask机制中对与所述索引内容的各个关键词不相关的词进行标记并隐藏,基于所述双流自注意力机制和所述attention Mask机制实现对所述索引内容的各个关键词的所有相关性词的整合,得到各个所述关键词的词向量文本。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的终端和各模块的具体工作过程,可以参考上述基于词向量的搜索方法实施例中的对应过程,在此不再赘述。
上述的基于词向量的搜索方法可以实现为一种计算机程序的形式,该计算机程序可以在如图4所示的基于词向量的搜索设备上运行。
请参阅图4,图4是本申请实施例提供的一种基于词向量的搜索设备的结构示意性框图。该基于词向量的搜索设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。
非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种基于词向量的搜索方法。
处理器用于提供计算和控制能力,支撑整个计算机设备的运行。
内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种基于词向量的搜索方法。
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
响应于用户输入的索引内容,确定所述索引内容的关键词;
分别在预先存储的索引表中查找各个所述关键词的词向量;
计算各个所述词向量与所有目标长文本之间的相似度,所述目标长文本为预先存储的与所述索引内容关联的所有长文本,所述预先存储的与所述索引内容关联的所有长文本为基于XLINE模型对所述索引内容进行分析,得到的包含所述索引内容的各个所述关键词的词向量文本;
基于所述相似度显示与所述索引内容相匹配的搜索结果。
在一个实施例中,所述处理器在实现所述响应于用户输入的索引内容,确定所述索引内容的关键词时,用于实现:
响应于用户输入的索引内容,对所述索引内容进行分词处理;
生成分词处理之后各个词的有权无向图;
基于所述有权无向图确定所述索引内容的关键词。
本申请的实施例中还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序中包括程序指令,所述处理器执行所述程序指令,实现本申请上述实施例提供的基于词向量的搜索方法。
其中,所述计算机可读存储介质可以是前述实施例所述的计算机设备的内部存储单元,例如所述计算机设备的硬盘或内存。所述计算机可读存储介质也可以是所述计算机设备的外部存储设备,例如所述计算机设备上配备的插接式硬盘,智能存储卡(SmartMedia Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
- 基于词向量的搜索方法、装置、设备及存储介质
- 基于词向量替换数据增强的机器翻译模型训练方法、装置、电子设备及存储介质