【自然语言处理和文本分析】基础信息检索:签名文件技术,进阶信息检索:向量空间技术(目前主流的搜索引擎在用的技术)

签名文件(Signature File)、

是逐项反转法和全面扫描的结合

它也需要索引空间,相当于是取二者的折中。

和算法“词嵌入”的概念是很类似的。

“签名文件”利用重叠编码的方式将文件转化成一个固定长度的签名(signature)来加速字符串比对。(一会有案例)

每个词都会有一个定长的数字编码。文件签名就是文章中所有词的重叠编码。可能比较抽象:

案例:

比如文件中出现“信息”和“检索”这两个关键词,若“信息”的编码是10100011,“检索”的编码是“10101111”则重叠后的编码文件为“10101111”

(也就是把对应位置or(有一个是1那就是1了)起来)这就是这篇文件的文件编码。

 

 

查询过程:我现在查两个关键词,就会把两个关键词重叠,然后进行搜索,然后1的位置都有,那就说明文件里有这两个关键词。

缺点就是,有时,1的位置对到了,也不一定有这个关键词。比如“文件”的编码是10001000,那就很容易被搜索到没有这个关键词的文件

所以签名文件这个阶段只能用于过滤,搜索有时不够准确

但是签名文件还有二阶段,也就是类似全面扫描的功能,相当于利用第一阶段过滤掉大部分文件,注意因为这些文件也不一定有该关键词,所以需要用全文扫描的方法,在进行and比对搜索。

第一阶段不一定有该词,但是没检索到的一定没有。

第二阶段就是运用全面扫描进行搜寻。

注意,第一阶段检索之后要求得到的文件是极少量的,否则就要修改编码规则。

 

 

因为签名文件的编码比较简单,所以内存比逐项扫描需要的储存空间少,比全面扫描多一些。

扫描速度是逐项反转最快,签名文件次之,全面扫描最慢,

虽然签名文件有二者折中的优越性,但是有一个致命的缺点,它很难有扩充性,尤其是对数据的删除和修改情况。虽然一度引起学界高度的兴趣,但是西文系统很少使用签名文件的方法

但是就中文而言,此法恰好可以适用。因为我们可以以字为单位,中文有5000个常用字:比如文章经常出现哪些字。我们就规则出现这个字的位置就是1.比如信息。信就规定第3个位置为1,息就规定第4个位置为1。因为中文的常用字很多,所以中文使用这个5000个字除以8,也就占500,600个bit,储存空间很小。

注意一下这个和之后词签名的内容很相似。

 

关键词索引逐字比对法:

2.进阶信息检索技术

(目前的搜索引擎在使用的技术。):

向量空间技术*(Vector Space Model)(目前的搜索引擎在使用的技术。)

Gerard salton(信息检索之父)提出。并根据这个模型得到smart System

该技术将每个文件(document)和查询(query)看成N维空间坐标上的一个点,每一个维度代表一个关键词。每个文件(document)和查询(query)的值是通过TF*IDF的值来得到的。(TF是文章出现次数,IDF是信息量)

通过计算点和点的距离(相似度计算:similarity computation)来寻找出和此查询相近似的文件(距离越短说明越相似)。然后按距离排序输出(document ranking)

案例:

 

 

K1-K11是我们对关键词的编号。于是我们向量空间的维度就是11.

IDF标准是以2为底,但是以10为底也可以Lg(文章总数/出现在几篇文章)。越大说明出现越少,信息越重要。越小越无用

***一定要在文章数够大的时候再用iDF,这里只是举例。

DF就是在几篇文章出现(document Frequency)

TF是这个关键词在具体的一批文章(或者查询)里出现的次数(term Frequency)

将查询Q1,Q2和4篇文章写作11个维度下的坐标点。(weight=TF*IDF)

 

整体会形成矩阵。

数值越大说明重要性越好。

|D1|代表向量的长度。类似欧式距离。

前面的新世航和新世航一号,就比较

我们选择用向量之间的cos0代表他们的相似程度。

 

 

 

公式就是每个点的各个位置指标相乘的累加求和除以距离乘积。(similarity computation)

也就是两个向量做内积。

正规划就是将向量除以各自的长度。那么它的欧式距离就是一了

都变成单位向量之后,做内积。对于位置相乘相加。

范围是0~1.

D1>D1=D2=D4

其实就是词袋模型。不过这个用于信息检索,词袋模型用于算法各类内容。

概率式检索模型(Probabilistic Retrieval Model)

神经网络模型(Neural Network Model)

      1. 文本挖掘的处理流程(步骤)

1.与数据挖掘处理不同之处。

数据挖掘:

 

先进行数据收集,

然后汇总到数据仓库。

然后按数据库选择筛选指令,得到数据超市(项目可能要使用的数据)

然后就可以按数据挖掘(结构化数据预处理,数据挖掘的建模)

文本挖掘:(自然语言处理+数据挖掘)

 

 

把你需要的文本数据爬进来,或者向报社等社团收集

放入文本数据库

进行信息检索(也就是我们的信息检索技术提取出来)

得到目标文本数据

然后进行文本挖掘

(之前说的)

自然语言处理

非结构化数据的预处理,

非结构转结构化,比如词袋模型

进行模型建立(和数据挖掘一样的算法了)

总结!!

 

 

自然语言处理,也就是文本分析单元的提取,分词和词性标注

文本特征提取,和文本有关的关键词出来,(非结构转结构:词袋模型(为什么要叫词袋因为文字原本是有先后顺序,但是放入向量(关键词)维度坐标了,它就没有先后顺序了),Word2vec,Glove(后二者是有顺序的。比较热门))

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,关于信息检索技术的原理和方法,我可以为您介绍以下几个方面: 1. 信息检索模型: 信息检索模型是信息检索系统的核心,它描述了信息检索过程中文本与查询之间的关系,可以帮助我们理解信息检索的基本原理和方法。常用的信息检索模型包括布尔模型、向量空间模型、概率模型等。 - 布尔模型:基于布尔代数的基本运算,将文本与查询表示为一组布尔值,通过逻辑运算来确定文本与查询之间的匹配关系。它的优点是简单易懂,但不考虑词项的权重和相关性,容易产生错误结果。 - 向量空间模型:将文本与查询表示为一个向量,向量的每个维度表示一个词项,通过计算向量之间的余弦相似度来确定文本与查询之间的匹配关系。它的优点是考虑了词项的权重和相关性,适合处理长文本和短查询。 - 概率模型:基于贝叶斯公式,通过计算文档与查询之间的条件概率来确定文本与查询之间的匹配关系。它的优点是能够考虑到文档和查询之间的相关性,但需要大量的训练数据来优化模型。 2. 索引技术: 索引技术信息检索系统中用于存储和查找文本的关键技术,它将文本中的词项转换为索引项,通过索引项来快速定位文本。常用的索引技术包括倒排索引、正排索引等。 - 倒排索引:将文本中的每个词项映射为一个索引项,索引项包含了包含该词项的文档ID列表。通过查询词项来查找文档ID列表,再根据文档ID列表来获取文档内容。它的优点是快速定位文档,适合处理大规模文本。 - 正排索引:将文本中的每个文档映射为一个索引项,索引项包含了文档的所有词项。通过查询文档ID来获取文档内容,再根据查询词项来过滤文档内容。它的优点是能够支持更复杂的查询,适合处理较小规模的文本。 3. 查询处理: 查询处理是信息检索系统中用于处理查询的关键技术,它通过解析查询、生成查询表示、查询扩展等方式来提高查询的准确性和召回率。常用的查询处理技术包括分词、词干提取、停用词过滤、同义词扩展等。 - 分词:将查询文本分割为一个个词项,通过词项来匹配文本。 - 词干提取:将查询文本中的词项提取为词干,通过词干来匹配文本。 - 停用词过滤:过滤掉查询文本中的停用词,如“的”、“是”等,以减少对匹配结果的干扰。 - 同义词扩展:将查询文本中的词项扩展为其对应的同义词,以提高匹配的召回率。 4. 评价指标: 评价指标是评估信息检索系统性能的关键指标,它包括准确率、召回率、F1值等。常用的评价指标包括: - 准确率:检索出的相关文档数除以检索出的总文档数。 - 召回率:检索出的相关文档数除以文档库中的总相关文档数。 - F1值:准确率与召回率的调和平均数。 以上是关于信息检索技术的原理和方法的简要介绍,希望能对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晴天qt01

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值