全文索引---新手入门(三)

如何创建索引

 

全文检索的索引创建过程一般有以下几步:

 

第一步:一些药索引的原文档(Document)。

 

为了方便说明索引创建过程,这里特意用两个文件为例

 

文件一:Students should be allowed to go out with their friends,but not allowed to drink beer.

 

文件二:My friend Jerry went to school to see his students but found them drunk which is not  allowed.

 

第二步:将原文档传给分次组件(Tokenizer)。

 

分词组件(Tokenizer)会做以下几件事情(此过程称为Tokenize):

 

1.将文档分成一个一个单独的单词

 

2.去除标点符号

 

3.去除停词

 

所谓停词(Stop word)就是一种语言中最普通的一些单词,由于没有特别的意义,因而大多数情况下不能称为搜索的关键词,因而创建索

 

引时,这种词被去掉而减少索引的大小。英语中停词(Stop  word)如:“the”,“a”,“this” 等。

 

经过分词(Tokenizer)后得到的结果称为词元(Token)。

 

“Students”,"allowed","go","their","friends","allowed","drink","beer","My","friend","Jerry","went","school","see","his"

 

"students","found","them","drunk","allowed".

 

 

第三步:将得到的词元(Token)传给语言处理组件(Linguistic Processor)

 

语言处理组件(linguistic processor)一般做以下几点:

 

1.变为小写(Lowercase)。

 

2.将单词缩减为词根形式,如“cars”到“car”等。这种操作称为:stemming。

 

3.将单词转变为词根形式,如“drove”到“drive”等。这种操作称为:lemmatization。

 

Stemming和lemmatization的异同

 

相同之处:Stemming和lemmatization  都要使词汇成为词根形式。

 

两者的方式不同:

 

stemming采用的是“缩减”的方式:“cars”到“car”,“driving”到“drive”。

 

Lemmatization采用的是“转变的方式”:“drove”到“drive”,“driving”到“drive”。

 

两者的算法不同

 

Stemming主要是采取某种固定的算法来做这种缩减,如去除“s”,去除“ing”加“e”,将“ational”变为“ate”,将“tional”变为

 

“tion”。

 

Lemmatization 主要是采用保存某种字典的方式做这种转变。比如字典中有“driving”到“drive”,“drove”到“drive”,“am,is,

 

are”到“be”的映射,做转变时,只要查字典就可以了。

 

Stemmi和Lemmatization不是互斥关系,是有交集的,有的词利用这两种方式都能达到相同的转换

 

语言处理组件(linguistic processor)的结果称为词(Term)。

 

在我们的例子中,经过语言处理,得到的词(Term)如下:

 

“student”,"allow","go","their","friend","allow","drink","beer","my","friend","jerry","go","school","see","his","student"

 

,"find","them","drink","allow"。

 

也正是因为有语言处理的步骤,也能使搜索drove而drive也能被搜索出来。

 

 

第四步:将得到的词(Term)传给索引组件(Indexer)。

 

索引组件(Indexer)主要做以下几件事情:

 

1.利用得到的词(Term)创建一个字典。

 

在我们的例子中字典如下:

 

TermDocumentID
student1
allow1
go1
their1
friend1
allow1
drink1
beer1
my2
friend2
jerry2
go2
school2
see2
his2
student2
find2
them2
drink2
allow2

 

2.对字典按字母进行排序

Term DocumentId
allow1
allow1
allow2
beer1
drink1
drink2
find2
friend1
friend2
go1
friend2
his2
jerry2
my2
school2
see2
student2
their1
them2

 

 3.合并相同的词(Term)称为文档倒排(Posting List)链表。

 

 

 在此表中,有几个定义:

 

Document Frequency 即文档频次,表示总共有多少文件包含此词(Term)。

 

Frequency 即词频率,表示此文件中包含了几个此词(Term)。

 

所以对词(Term)“allow”来讲,总共有两篇文档包含此词(Term),从而(Term)后面的文档链表总共有两项,第一项表示包含

 

“allow”的第一篇文档,即1号文档,此文档中,“allow”出现了2次,第二项表示包含“allow”的第二个文档,是2号文档,

 

此文档中,“allow”出现了1次。

 

到此文职,索引已经创建好了,我们可以通过它很快的找到我们想要的文档。

 

而且在此过程中,我们惊喜地发现,搜索“drive”,“driving”,“drove”,“driven”也能够被搜到。

 

因为在我们的索引中,“driving”,“drove”,“driven”都会经过语言处理而变成“driven”,在搜索时,如果您输入“driving”,输入的

 

查询语句同样经过我们这里的一到三步,从而变为查询“drive”,从而可以搜索到想要的文档。

 

4.如何对索引进行搜索?

 

到这里似乎我们可以宣布我们找到想要的文档了。

 

然而事情并没有结束,找到了仅仅是全文检索的一个方面。如果仅仅只有一个或十个文档包含我们查询的字符产,我们的确找到了。

 

然而如果结果又一千个,甚至成千上万个呢?那个又是您最想要的文件呢?

 

这种情况大家应该都遇到过,比如说Google和百度,返回的结果之大,让你不可能在短时间内查看全部的网页。然而它们做的很好

 

把最相关的内容放在最前面。

 

如何像Google一样,在成千上万的搜索结果中,找到和查询语句最相关的呢?

 

如何判断搜索出的文档和查询语句的相关性呢?

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
2007年,针式PKM 对外发布V1.0版,2012年发布V9.6版,2013年发布V2013版,2015年发布V2015版。2015年4月17日改名为文档大师 1.版本兼容原则 新版本的针式PKM总是兼容旧版的知识库,即旧版软件创建的知识库可以自动升级到新版,无需任何转换。 2.Windows平台支持 支持从Windows XP、Win7、Win8、Windows Server2003/2008/2012等 3.Office支持 支持OfficeXP、Office2003/2007/2010/2013 ... 支持WPS Word 基本信息软件版本: 针式PKM V2015 软件类型:文档管理/笔记软件/知识管理软件 收费模式:Freemium 针式PKM的主要技术指标: 知识库支持文档数:>3万个文档,类型包括:Word、PDF、PPT、图片、安装文件、压缩文件等 搜索支持:文件名瞬间搜索、Word\PDF等文档内容的全文快速搜索 归类方法:分类、标签、多个文档关联、公式等 可运行于:XP、Win7、Win8、Win2003/2008/2012等Windows平台[1] 功能简介 1. 搜索 1.1和Everything一样快的文件名搜索,瞬间完成搜索 1.2 快速的全文搜索,可以搜索Word、PPT、Excel、PDF等各种文档中的内容 1.3 可以使用单个标签搜索,也可以使用多个标签组合过滤 2. 文档归类方法 文档可以按分类、标签、附件等各种方式进行归类整理 2.1 一个文档可以设置多个分类、多个标签 2.2 一个文档可以附加多个附件 3. 知识体系 知识体系可以随时修改,而不受文件打开影响 4. 收集资料 4.1导入已有的文件 4.2 监控文件夹文件变化 4.3使用模板创建 4.4使用Word收集网页等方式 4.5 从Windows资源管理器拖入等方式 5. 整理资料 5.1可以批量修改分类 5.2中转站可以缓存文档以附件到其它文档、分类中 6.复习与回顾 通过公式的方式,为文档提供按遗忘曲线进行复习和按周期进行回顾等功能 按个人知识管理的过程构建主菜单:知识体系、收集资料、整理资料、学习、工具等 版本更新 版本 V201519 更新时间:2015-04-28 1. 增加按分类、按标签搜索文档的功能 2. 公式增加分类范围、标签范围可选的功能 3. 拖入文件增加可拖入文件和文件夹功能,并可以在导入前进行预览 版本 V201517 更新时间:2015-04-17 针式PKM 更名为 文档大师 版本 V201501 更新时间:2015-01-06 1.可以快速预览500多种文档格式,方便大家测试使用。 并且主界面和知识点界面都支持 2.对遗忘复习曲线和定期回顾更好地支持,直接采用针式PKM资深用户懒猫的实践经验。 例:需要学习的A文档。 1.收集且精读完成后将“阅读进度”改为“复习0次”,表示进入复习曲线, 间隔1天后才会在“第一次复习”中看到! 2.改为”复习1次“,间隔3天后才会在“第二次复习”中看到 版本V2013[4] 更新时间:2013-05-20 1.知识点列表直接显示附件,可设置双击打开文档--在视图-->选项-->02知识库编辑 中设置 2.全文搜索功能完善 3.回收站功能完善,现在要清空才真正删除 4.列的宽度和顺序可以直接变更,只有变更列才需要进入“选择列...”画面 5.知识点列表支持按住ctrl多选等细节完善 6.更好的支持网盘备份 版本9.78[5] 更新时间:2012-11-22 1.增强附件搜索功能 2.组合搜索:支持像"A .pdf"搜索包括A内容的PDF文档 3.文件夹的文档数量的及时更新、准确性提升 4.修正文件夹显示顺序的一个Bug 5.在文档列表右键菜单,直接打开文档 6.支持屏幕剪贴的快捷键:ctrl+shift+T 这个功能是集成QQ拼音的,所以屏幕剪贴功能很不错 版本9.56[6]更新时间:2012-10-22 1、界面简化 2、多达45项地更新 3、增加反查文档的文件夹等新功能 版本9.36[7]更新时间:2012-03-29 主要增加和完善的功能有: 1、更容易养成及时文档归类的习惯:提供文件新增监控提示归类功能 2、容易管理阅读进度、重点摘要:更容易创建问答的记忆内容 3、更方便对 知识 进行深入搜索研究:知识点画面集成搜索框 版本9.08版[8]更新时间:2012-01-11 主要增加和完善的功能有: 1、支持华为网盘同步和备份 2、增加知识结构分析,有助于对知识是否系统化并有所侧重进行分析等 3、对问答学习进行完善 4、对标签功能进行完善,可直接输入关键字,并支持大量标签后快捷搜索等 5、对知识点列

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值