IR的设计

课程概要

  • 布尔查询
  • 词项分割与去停用词
  • 倒排索引的构建与词典
  • 输入纠错与编辑距离
  • 索引压缩
  • 向量空间模型与tf-idf权重计算
  • 检索系统的评价
  • 检索模型的介绍
  • Web采集与链接分析

课程设计

任务内容

Part 1:

基本要求:构建词典和倒排索引

  • 实现 Single-pass In-memory Indexing
  • 实现倒排索引的 Gamma 编码压缩 / 解压
  • 实现词典的单一字符串形式压缩 / 解压,任意数据结构(如哈希表、 B 树等)
  • 实现关键字的查找,命令行中 Print 给定关键字的倒排记录表
  • 给出以下语料统计量:词项数量,文档数量,词条数量,文档平均长度(词条数量)
  • 对停用词去除、词干还原等无要求,但应实现最基本的词条化功能 例如:将所有非字母和非数字字符转换为空格,不考虑纯数字词项

Test Data
解压命令: tar zxvf shakespear-merchant.trec.tgz

Part 2:

采用类似 TREC 竞赛的形式

  • 以小组形式在给定数据上进行实验
  • 鼓励创新思维
    – 评分:综合考虑实验结果和使用的新方法、提出的新思路

任务设计思路

第一部分是对我们课上学习内容的实现,通过实现任务一,对于加深对课程学习的立即是很有帮助的
主要涉及:

  1. 词项归一化(选择哪种归一化方法?)与去停用词(哪些是停用词?)和词条化
  2. 字符串压缩与解码
  3. 倒排索引的构建
  4. 语料的读取与分词
  5. 统计分析词项数量与文档数量、文档长度(词条数目),词条数量

第二部分是research能力与开发能力并重的,可以使用开源软件提升检索能力,也可以自己实现检索器

实现

It’s preferred to use Python and with python package unittest for unit test to imply the part one while C++ implement is optional.

关于TREC数据集合构建索引查询分析的实验

调研

开源搜索引擎

参考博文

开源搜索引擎性能比较研究

简要介绍

  • ht://Dig, 提供一组工具可以索引和搜索一个站点。提供有一个命令行工具和CGI界面来执行搜索。
    尽管已经有了更新的版本了, 但是根据项目的网站, 3.1.6版是最快的版本了。

  • IXE Toolkit, 是模块化C++类集合, 有一组工具完成索引和查询。Tiscali(来自意大利)提供有商业版本, 同时提供了一个非商业版本仅用于科学研究。

  • Indri,是基于Lemur的搜索引擎。Lemur是用来研究语言模型和信息检索的工具。这个项目是马萨诸塞大学和CMU的合作项目的产物。

  • Lucene, 是Apache 软件基金会的一个文本搜索引擎库。由于它是一个库,所以很多项目基于这个库,例如Nutch项目。
    在目前,它捆绑自带的最简单的应用是索引文档集合。

  • MG4J(管理前兆数据Java语言)是针对大文本集合的一个全文索引工具。由米兰大学开发。他们提供了通用的字符串和位级别的I/O的优化的类库作为副产物。

  • Omega, 基于Xapian的应用。Xapian是开源的统计信息检索库,由C++开 发,但是被移植到了Python Perl php Java Tcl C#等多种语言。

  • IBM Omnifind Yahoo! Edition, 非常适合内网 搜索的搜索软件。 他结合了基于Lucene索引的内网搜索,和利用Yahoo 实现的外网搜索。

  • SWISH-E(简单网页索引系统—增强版), 是开源的索引和检索引擎。是Kevin Hughes 开发的SWISH的增强版。

  • SWISH++是基于SWISH-E的索引和检索工具。尽管经过C++全部重写, 但是 没有实现SWISH-E的全部功能。

  • Terrier(太字节检索), 由苏格兰的格拉斯哥大学开发的,模块化的平台,能够快速的构架互联网,内网,和 桌面的搜索引擎。它附带了索引,查询和评估标准TREC集合的功能。

  • XMLSearch, C++开发的索引和检索的一组类。利用文本操作(相等,前缀,后缀,分段)来扩展了查询能力。 Barcino(来自智利)提供了一个商 业版, 同时也有个供学术研究的非商业版。

  • Ze

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值