毕业设计(论文)基于压缩的文本信息检索.doc

上传人:文库蛋蛋多 文档编号:4027659 上传时间:2023-04-01 格式:DOC 页数:74 大小:1.08MB
返回 下载 相关 举报
毕业设计(论文)基于压缩的文本信息检索.doc_第1页
第1页 / 共74页
毕业设计(论文)基于压缩的文本信息检索.doc_第2页
第2页 / 共74页
毕业设计(论文)基于压缩的文本信息检索.doc_第3页
第3页 / 共74页
毕业设计(论文)基于压缩的文本信息检索.doc_第4页
第4页 / 共74页
毕业设计(论文)基于压缩的文本信息检索.doc_第5页
第5页 / 共74页
点击查看更多>>
资源描述

《毕业设计(论文)基于压缩的文本信息检索.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于压缩的文本信息检索.doc(74页珍藏版)》请在三一办公上搜索。

1、毕 业 论 文(设 计)课题名称 基于压缩的文本信息检索 学 院 信息电子技术学院 专 业 计算机科学与技术 班 级 0109114628 指导教师 学生姓名 佳 木 斯 大 学 教 务 处摘 要随着信息时代的到来,人们需要处理的数据飞速增长,大量的数据需要进行存储与检索,其中数据不但占用过多的存储空间,而且在检索的时候也会花费很多的时间与空间。在众多的文本信息中,文件检索信息浪费很多时间,文件的携带也给人们带来很多不便,目前针对文本文件的压缩和检索的信息很少被开发商们关注,基于以上考虑,本文研究设计了基于压缩的文本信息检索。节省了在文章中查找单词的时间,方便了大量文件的携带。同时,将文件压缩

2、后对它进行存储和检索也从热门话题变成了真正的技术。本文系统的介绍了软件的开发过程,开发环境和所用的算法,以及介绍了程序实现的主要功能:文章的聚集、词汇的搜集、词汇的统计、词汇的编码、文本数据的压缩、压缩后文本信息的检索和原始文件的恢复。算法包括:字符串的散列算法、范式Huffman编码和快速排序算法,本文详细的介绍了算法的来源及实现思想,并根据具实际要求对算法进行了改进。文章将软件的各部分模块化,对于检索模块,解压缩模块进行了详细的介绍,其中包括详细的设计过程,程序流程图和部分主要程序代码,文章对每个出现关键词汇都作了详细的解释。其系统主要是为了解决大量文件的压缩与检索的问题而随之产生的,并且

3、详细地介绍了本系统的主要功能与实现方式。首先,介绍了实现本系统的语言Visual Basic的基本理论和系统制作过程中主要应用的Visual Basic技术。然后,针对所要实现的功能,对所要制作的软件进行了需求分析,概要设计,详细设计,并对开发过程全程进行了详细描述。详细分析了四个主要模块(词汇的处理、文本数据的压缩、压缩后文本信息的检索和原始文件的解压缩)的功能、编程思想、并对重点部分编码进行了分析。 最后,对所压缩文件的压缩率、基于压缩文件的检索速度进行了测试,并分析了测试结果。 在文章的论述过程中对每个出现关键词汇都作了详细的解释,并配以大量的流程图和主要的程序,在描述整个实现过程中尽量

4、采用简练、朴实的语言,以求文章清晰易懂。关键字:压缩;检索;散列函数;快速排序;范式Huffman编码AbstractFly to soon increase along with the data that coming of information ages, people demand handle, but among them include this information of a lot of texts.At large quantity of document inside index information wasted plenty of time, document

5、take to also bring to people a lot of inconvenience, now aim at the text the compression of this document to develop companies with few quilt of inspectional information to pay attention to, according to above consideration, this text research designed the On the basis of the text information retrie

6、val that is compressed .Saved to check to seek time of the single phrase in the article, convenience taking of large quantity document.This text is detailed to introduce the main function that realizes of procedure: The treatment of the vocabulary, The compression of the text data, The searching of

7、text information after compressing and The solvesing and compresses of original document.This text introducing of system the softwares development process, development environment include with calculate way for using of. this text detailedly introducing the calculate way and realize thought, and acc

8、ording to have the actual request to proceeds to calculate way the improvement.Article the softwares each and part of mold pieces, for the index mold the piece, solution compressed the mold piece to proceeds the detailed introductioned, among them include the detailed design process, procedure flow

9、chart with the part of and main procedure code, article to each emergence key phrase all maded detailed and hermeneutic, at describe whole to realize the process the inside to as far as possible adopt the simple language, in order to the article is clear to easily understand.As everyone knows,along

10、with the development of informative, A large amount of data need storing and searching,.However,a large amount of data not only take up the too much memory space but also will cost a lot of time and space while searching. Then, the thing that it stored and searched after compressing the file have tu

11、rned from hot issue into real technology. This system is for the compression of solving a large amount of files and problem searched mainly. This text has introduced the main function of a system and way of realizing in detail.First of all, the introduction of this text realizes a systematic languag

12、e- the basic theorieses of Visual Basic and the main technology of Visual Basic which is used in the course that the system is made.Then, To the functions that are realized, have carried on demand analysis, Outline is designed, design in detail to the software made, , and has described to developpin

13、g the whole journey of course in detail.Analysed the functions of four main modules in detail (The treatment of the vocabulary, The compression of the text data, The searching of text information after compressing and The solvesing and compresses of original document) ,programming thought, and have

14、analysed some codes of focal point as well.At last, tested the compression rate to the files that are compressed and speed of searching which basic of Compress the file, and have analysed the test result.From the describe the course of the text,we explanated every key vocabulary which is appeared in

15、 the text, mix it with a large amount of flow charts and main procedures. When describing the whole Realizing course, try my best to adopt terse, sincere language In order to article being clear to know while being easyKey word:Compression; Search; Break up and arrange function; Quick sort; Fan Shis

16、 Huffman code.1绪 论随着网络和多媒体业务的发展,常见的是对多媒体业务的压缩,而检索也似乎变得是网络范畴内的专有名词,对于文本的单词的查找似乎很少有人关注,而对于大量的文本信息如果人工的查找单词出现的位置及频率其所耗费的时间是难于想象的,准确性也是难以保证的。针对此问题,笔者设计了基于压缩的文本信息检索。数据压缩(Data Compression),通俗地说,就是用最少的数码来表示信号。其作用是:能较快地传输各种信号,如传真、Modem通信等;在现有的通信干线并行开通更多的多媒体业务,如各种增值业务;紧缩数据存储容量,如 CDROM、VCD和DVD等;降低发信机功率,这对于多媒体

17、移动通信系统尤为重要。由此看来,通信时间、传输带宽、存储空间甚至发射能量,都可能成为数据压缩的对象。信息检索(Information Retrieval),通常指文本信息检索,包括信息的存储、组织、表现、查询、存取等各个方面,其核心为文本信息的索引和检索。目前,信息检索已经发展到网络化和智能化的阶段。适应网络化、智能化以及个性化的需要是目前信息检索技术发展的新趋势。1.1课题背景基于压缩的文本信息检索主要的功能是对选定的文章压缩,然后在压缩文件上对要查询的单词进行检索,显示单词所在的文章题目,在文章中的具体位置和单词出现的频率。可以根据需要对某篇文章或所有文章解压缩。基于压缩的文本信息检索方便

18、了对单词的定位和频率的统计,节省了查询时间,也方便的大量文本信息的携带、保存和管理。基于压缩的文本信息检索,首先对所要压缩的文件进行汇集,对其中出现的词汇进行统计,然后根据统计结果进行编码,对文件进行压缩。在检索时,通过词汇的编码在压缩后的文件中进行检索。不但减小了大量文件所占的存储空间,还是对文件的检索变得高效。检索后还可以对检索到的文件进行解压缩。基于压缩的文本信息检索不仅利于实现文件的压缩和检索操作,同时也实现了对文件的加密操作。这就为一些重要文件的存储和查找提供了简便可行的办法。1.2课题目的及意义二十一世纪互联网普及和电子商务的发展,企业和个人可获取、需处理的信息量呈爆发式增长,而且

19、其中绝大部分都是非结构化和半结构化数据。由于各个领域的数据量特别庞大,如果不对其进行有效的压缩就难以得到实际的应用。因此,数据压缩技术已成为当今数字通信、广播、存储和多媒体娱乐中的一项关键的共性技术。而信息检索作为内容管理的核心支撑技术,随着内容管理的发展和普及,亦将应用到各个领域,成为人们日常工作生活的密切伙伴。众所周知计算机已经成了现代社会不可缺少的、用于各种工作的一种手段。随着计算机的普及,大量的数据需要存储、检索、传输。随着信息论的产生和发展,数据压缩也由热门话题演变成了真正的技术。大量的数据在存储是不但占用过多的存储空间,而且在对其进行检索和传输时也将浪费过多的时间。数据的传输在当今

20、是一项重要的技术,检索也似乎变得是网络范畴内的专有名词,于是各大搜索引擎相继出台,而且相关的研究似乎永远也不会停止,而对于文本文件内单词的检索却较少有人关注,因为无论是哪个研究部门或公司也不会对哪篇文章出现哪个单词产生兴趣。但如果要用人工去查询统计某个单词或某几个单词在哪个文章中出现过及其出现的次数那简直是无法想象的。大量的文件不但在存储时需要占用大量的空间,而且在对其中的部分信息进行检索是也非常的麻烦,由于未经压缩的文本文件一般相对比较大,所以在其上进行某个或某些单词的检索,检索效率通常比较低,尤其是对多篇文章的操作更是十分的不便。所以有了基于压缩文件的信息检索的产生,首先对大量的文件进行压

21、缩处理,将多篇文章压缩到一个文件中,然后对其进行检索,即对已压缩的文件进行检索。2 Visual Basic 简介2.1 Visual Basic 的基本概念Visual Basic是Microsofe公司推出的一种Windows应用程序的开发工具。Visual Basic是“可视化的Biscal”。VB提供面向对象的程序设计方法OPPObject Oriented Programming,窗口、菜单、按钮、列表框等界面元素被视作由不同的属性数据和操作程序封装在一起的一个个对象;同时,Vb又提供可视化的程序设计方法。Microsoft Visual Basic提供了开发Microsoft Wi

22、ndows应用程序的最迅速、最简洁的方法。Visual Basic提供了整套工具,方便开发应用程序。VB提供了事件驱动的程序设计机制,在编写应用程序时只需分别对个个对象要响应的事件编写出程序代码,而不必象设计传统的应用程序徘样,考虑对整个程序运行过程的控制,这使得用VB所编写的程序代码比较短小简单,调试维护比较容易。VB提供了一个集成开发环境IDEIntegrated Development Environment,这种集成开发环境采用交互式的工作方式,在输入代码时可同步显示相应的语法成分结构的提示,并及时捕捉拼写错误,而在调试程序时,能定为错误位置,显示出错信息。这种交互式的集成开发环境,大

23、大方便了程序开发的进行。而且,利用动态数据交换DDEDynamic Date Exchang技术,使VB开发的应用程序能与其他Windows应用程序进行动态的数据通信,通过动态连接库DLLDynamic Linking Library技术,能在VB开发的应用程序种调用其他程序设计语言编写的程序,也可调用Windows系统的应用程序接口函数。何谓VB?“Visual”在字面上的意思是“看的、视觉的、用于看的”,引申到计算机程序设计中,意思为:“可视化程序设计”,只的是开发图形用户界面(GUIGraphics User Interface)的方法。使用这种方法,用户不需要编写大量代码去描述界面元素

24、的外观和位置,而只要把预先建立的对象拖放到屏幕上的一点即可。“Basic”指的是BASIC(Beginners All Purpose Symbolit Instruction Code)语言,它是一种在计算机技术发展历史上用用的最为广泛的语言。VB在原有BASIC语言的基础上进一步发展,至今包含了数百条语句、函数及关键词,其中很多和Windows GUI有直接关系。2.2 Visual Basic 6.0功能特点 在VB中,应用面向对象的程序设计方法OPP( Object Oriented Programming),把程序和数据封装起来视为一个对象,每个对象都是可视的。编程工作仅编写针对对象

25、要完成哪些功能的程序,因而程序设计的效率可提高许多。VB中还拥有事件驱动的编程机制,事件驱动是非常适合图形用户界面的编程方式。传统的编程方式是一种面向过程,按程序实现设计的流程运行。但在图形用户界面的应用程序中,用户的动作即时间掌握着程序的运行流向,每个事件都能驱动一段程序的运行。在VB集成开发环境中,用户可设计界面、编写代码、调试程序、直至把应用程序编译成可执行文件。VB具有丰富的数据类型、众多的内部函数和结构化程序结构,而且简单易学。而且VB支持多种数据库的访问,核心就是其对象的链接与嵌入(OLE)的支持,利用OLE,VB能够开发集声音、图像、动画、字处理、Web等对象于一体的应用程序。V

26、isual Basic 6.0较以前的版本有了新的进步与突破,新增了一些实用且方便的新功能: 新增了许多控件,如CoolBar、数据库控件ADO Data等; 新增了较多的字符串函数,如筛选函数Filter、连续函数Join、反向查找函数InstrRev等; 函数可以返回数组、动态数组可赋值; 增加了文件系统对象,能全面地实现驱动器、子目录和文件的管理; 数据库功能的增强,新增了功能强大、使用方便的ADO(Active Database Object)技术; 增强了网络功能; 新增了多个应用程序向导。2.3 本系统中的Visual Basic 技术本系统开发的目的是实现基于压缩文件的检索,要实

27、现压缩,检索及解压缩等功能,主要应用了如下的Visual Basic的功能:2.3.1 VB的内部数据库几乎所有的应用程序都需要存放大量的数据,并将其组织成宜于读取的格式。这种要求通常可以通过数据库管理系统(DBMS)来实现。数据库系统提供了数据在数据库内存方式的管理能力。数据库就是一组排列成宜于处理和读取的相关信息的集合。本系统主要应有了VB的内部数据库来存放词汇信息。2.3.2文件系统 VB具有较强的对文件进行处理的能力,为用户提供了多种处理方法。它既可以直接读写文件,同时又提供了大量与文件管理有关的语句和函数以及用于制作文件系统的控件。本系统应用文件系统来实现对文件的打开,存储以及编码中

28、用到的二进制数存取。文件系统的合理应用在本系统的实现过程中起了很大的作用,是系统的实现更加方便。3 数据的压缩与检索技术分析3.1数据的压缩技术数据压缩技术(data compression)简单的来说,就是利用数据序列的冗余度进行重新编码减少数据量的技术。在不丢失信息的前提下,缩减数据量以减少存储空间,提高其传输、存储和处理效率的一种技术方法。一种节省存贮容量或传输带宽的技术。用消除间隙、多余信息组、多余不需要的或数据来缩短记录或数据组长度。从信息论的观点看,数据压缩就是以最少的码字表示心愿发出的信号.减少容纳给定消息集合或数据采样集合的信号空间(信号空间是指某信号集合所占的空域、时域、频域

29、空间).3.1.1什么是数据压缩?数据压缩,通俗地说,就是用最少的数码来表示信号。其作用是:能较快地传输各种信号,如传真、Modem通信等;在现有的通信干线并行开通更多的多媒体业务,如各种增值业务;紧缩数据存储容量,如 CDROM、VCD和DVD等;降低发信机功率,这对于多媒体移动通信系统尤为重要。由此看来,通信时间、传输带宽、存储空间甚至发射能量,都可能成为数据压缩的对象。压缩就是通过去除冗余数据的方式缩减文件尺寸,从而达到节约存储空间或提高网络传输效率的目的。数据压缩是现代计算最重要的领域和工具之一。3.1.2数据压缩技术的分类1无损压缩:也称冗余压缩法。它去掉数据中的冗余部分,在以后还原

30、时可以重新插入,即信息不丢失。因此,这种压缩是可逆的。但压缩比很小,仅为2 1 5 1 。无损压缩是指回放压缩文件时,能够准确无误地恢复原始数据。这常用于数据文件的压缩,例如ZIP文件。无损压缩常用的算法是Huffman方法和可变游程编码。 Huffman统计码字出现的概率,按照频率高的码字分配较短编码位数这一编码原则,减小平均字长,达到压缩数据的效果。可变游程编码多用于图像的压缩,它使用一对参数,颜色和长度,来代替一连串连续存储的相同颜色值,从而减小相同颜色所占用的存储空间。这种压缩算法压缩黑白图片时非常有用,但是对活动的彩色图象压缩时并不实用,它受图象复杂度的影响太大,造成压缩率过低,很难

31、超过3:1。2有损压缩:顾名思义,有损压缩算法靠丢掉大量冗余信息来降低数字所占的空间,回放时也不能完整地恢复原始数据,而将有选择地损失一些细节,损失多少信息由需要多高的压缩率决定。对同一种压缩算法来讲,所需压缩率越高,损失的信息越多。一般采用的算法为变换编码+运动检测。现在通用的变换编码有DCT(离散余弦变换)和小波变换,运动检测采用块搜索算法。还有其他一些编码算法:对象编码,基于模型的编码,分形编码等。 其作法是在采样过程中设置一个门限值,只取超过门限的数据。即以丢失部分信息达到压缩目的。例如,把某一颜色设定为门限值后,则与其十分相近的颜色便被视为相同,而实际存在的细微差异都被忽略了。由于丢

32、失的信息不能再恢复,所以这种压缩是不可逆的。但利用人的视觉特性,使得解压缩后的图像看起来与原来图像“一样”。这种方法的压缩比很大,但压缩越多,图像质量越差,因此两者要综合平衡。现在所用的MPEG,H.263等压缩标准,都是基于变换编码+运动检测的方法,都属于有损算法。3.1.3数据压缩方法的评价 压缩比要大。 压缩算法要简单。也就是压缩、解压缩的速度要快。最好能实时压缩、解压缩。 还原效果要好,尽可能恢复原始状态。3.2常用的压缩与解压算法3.2.1 Huffman编码:是一种代码长度不均匀的编码,它的基本原理是按信源符号出现的概率大小进行排序,出现概率大的分配短码,出现概率小的则分配长码。3

33、.2.2算术编码:是一种二元码的编码方法,在不考虑信源统计的情况下,只监视一小段时间内码出现的频率,不管统计是平稳的或是非平稳的,编码的码率总能趋近于信源熵值,每次迭代的编码算法只处理一个数据符号,并且只有算术运算。3.2.3预测编码:由于离散信号间存在一定的关联性,因此可以根据前面的一个或多个信号对下一个信号进行预测,然后对实际值和预测值的差值进行编码。预测编码较典型的方法是:自适应差分脉冲编码调制和差分脉冲编码调制。3.2.4模型编码:是指采用模型的方法对传输的图像进行参数估测。典型的模型编码有:随机马尔可夫场和分形图像编码。3.3根据压缩技术所使用的方法可分为:3.3.1预测编码(PC)

34、由于离散信号间存在一定的关联性,因此可以根据前面的一个或多个信号对下一个信号进行预测,然后对实际值和预测值的差值进行编码。3.3.2变换编码(TC)是指对信号进行变换后,再编码。3.3.3矢量量化(VQ)3.3.4子带编码(SBC)3.3.5熵编码3.4数据压缩的依据: 空域相关 时域相关 视觉掩盖效应3.5数据压缩三个重要指标: 压缩前后所需的信息存储量之比要大; 实现压缩的算法要简单,压缩、解压速度快,尽可能做到实时压缩和解压; 恢复效果要好,要尽可能的完全恢复原始数据。3.6检索技术3.6.1检索的概念数据检索(data retrieval)即从文件、数据库或存储装置中查找和选取所需数据

35、的操作或过程。信息检索(Information Retrieval),通常指文本信息检索,包括信息的存储、组织、表现、查询、存取等各个方面,其核心为文本信息的索引和检索。从历史上看,信息检索经历了手工检索、计算机检索到目前网络化、智能化检索等多个发展阶段。 检索的概念有狭义和广义之分: 狭义的检索(Retrieval)是指依据一定的方法,从已经组织好的大量有关文献集合中,查找并获取特定的相关文献的过程。这里的文献集合,不是通常所指的文献本身,而是关于文献的信息或文献的线索。 广义的检索包括信息的存储和检索两个过程(Storage and Retrieval)。信息存储是将大量无序的信息集中起来

36、,根据信息源的外表特征和内容特征,经过整理、分类、浓缩、标引等处理,使其系统化、有序化,并按一定的技术要求建成一个具有检索功能的数据库或检索系统,供人们检索和利用。而检索是指运用编制好的检索工具或检索系统,查找出满足用户要求的特定信息。3.6.2检索的分类(一)检索的分类1. 布尔逻辑检索 所谓布尔逻辑检索(Boolean Logical)是用布尔逻辑算符将检索词、短语或代码进行逻辑组配,指定文献的命中条件和组配次序,凡符合逻辑组配所规定条件的为命中文献,否则为非命中文献。它是机检系统中最常用的一种检索方法。逻辑算符主要有:And/与、Or/或、Not/非。2. 截词检索截词检索(Trunca

37、tion)是指用给定的词干做检索词,查找含有该词干的全部检索词的记录,也称词干检索或字符屏蔽检索。它可以起到扩大检索范围,提高查全率,减少检索词的输入量,节省检索时间,降低检索费用等作用。检索时,若遇到名词的单复数形式,词的不同拼写法,词的前缀或后缀变化时,均可采用此方法。截词的方式有多种,按截断部位可分为右截断、左截断、中间截断、复合截断等;按截断长度可以分为有限截断和无限截断。3. 位置检索位置检索(Proximate)是在检索词之间使用位置算符(也称邻近算符Adjacent Operators),来规定算符两边的检索词出现在记录中的位置,从而获得不仅包含有指定检索词而且这些词在记录中的位

38、置也符合特定要求的记录。这种方法能够提高检索的准确性,当检索的概念要用词组表达,或者要求两个词在记录中位置相邻/相连时,可使用位置算符。4. 限制检索限制检索(Range)是通过限制检索范围,达到优化检索结果的方法。限制检索的方式有多种,例如进行字段检索、使用限制符、采用限制检索命令等。5. 加权检索加权检索是指根据检索词对检索课题的重要程度,事先指定不同的权值。检索时,系统先查找这些检索词在数据库记录中是否存在,并对存在的检索词计算它们的权值总和;凡是在用户指定的临界值(称阈值)之上者作为命中记录被输出。阈值可视命中记录的多寡灵活地进行调整,阈值越高,命中记录越少。依据检索对象的不同,文献检

39、索可分为三种类型: 1 以查找文献线索为对象的文献检索; 2 以查找数值与非数值混合情报为对象的事实检索; 3 以查找数据、公式或图表为对象的数据检索。(二) 检索的效果在实际检索时,我们总是希望将检索系统中与所需信息相关的全部记录都检出来,同时这些记录均是我们所需要的,这就涉及到检索效果的问题。所谓检索效果(Retrieval Effectiveness)是指检索系统检索的有效程度,它反映检索系统的能力,包括技术效果、经济效果。技术效果指检索系统在检索时满足检索要求的有效程度。经济效果主要指检索系统完成检索服务的成本及时间,其因素比较复杂。3.7基于压缩文件的检索3.7.1什么是熵?数据压缩

40、不仅起源于 40 年代由 Claude Shannon 首创的信息论,而且其基本原理即信息究竟能被压缩到多小,至今依然遵循信息论中的一条定理,这条定理借用了热力学中的名词“熵”( Entropy )来表示一条信息中真正需要编码的信息量;考虑用 0 和 1 组成的二进制数码为含有 n 个符号的某条信息编码,假设符号 Fn 在整条信息中重复出现的概率为 Pn,则该符号的熵也即表示该符号所需的位数位为:En = - log2( Pn )整条信息的熵也即表示整条信息所需的位数为:E = En举个例子,对下面这条只出现了 a b c 三个字符的字符串:aabbaccbaa字符串长度为 10,字符 a b

41、 c 分别出现了 5 3 2 次,则 a b c 在信息中出现的概率分别为 0.5 0.3 0.2,他们的熵分别为:Ea = -log2(0.5) = 1Eb = -log2(0.3) = 1.737Ec = -log2(0.2) = 2.322整条信息的熵也即表达整个字符串需要的位数为:E = Ea * 5 + Eb * 3 + Ec * 2 = 14.855 位回想一下如果用计算机中常用的 ASCII 编码,表示上面的字符串我们需要整整 80 位呢!现在知道信息为什么能被压缩而不丢失原有的信息内容了吧。简单地讲,用较少的位数表示较频繁出现的符号,这就是数据压缩的基本准则。3.7.2模型从上

42、面的描述,我们明白,要压缩一条信息,首先要分析清楚信息中每个符号出现的概率。不同的压缩程序通过不同的方法确定符号的出现概率,对符号的概率计算得越准确,也就越容易得到好的压缩效果。在压缩程序中,用来处理输入信息,计算符号的概率并决定输出哪个或哪些代码的模块叫做模型。我们可以预先扫描文件中的所有字符,统计出每个字符出现的概率,这种方法在压缩术语里叫做“静态统计模型”。不同的文件中,字符有不同的分布概率,我们先统计我们要压缩的所有文件中的字符概率,每一个单独的文件保存一份概率表以备解压缩时需要。3.7.3编码通过模型,我们已经确定了对某一个符号该用多少位二进制数进行编码。现在的问题是,如何设计一种编

43、码方案,使其尽量精确地用模型计算出来的位数表示某个符号。最先被考虑的问题是,如果对 a 用 3 个二进制位就可以表示,而对 b 用 4 个二进制位就可以表示,那么,在解码时,面对一连串的二进制流,我怎么知道哪三个位是 a,哪四个位是 b 呢?所以,必须设计出一种编码方式,使得解码程序可以方便地分离每个字符的编码部分。于是有了一种叫“前缀编码”的技术。该技术的主导思想是,任何一个字符的编码,都不是另一个字符编码的前缀。反过来说就是,任何一个字符的编码,都不是由另一个字符的编码加上若干位 0 或 1 组成。看一下前缀编码的一个最简单的例子: 符号 编码 A 0 B 10 C 110 D 1110

44、E 11110有了上面的码表,可以从下面这串二进制流中分辨出真正的信息内容:1110010101110110111100010 - DABBDCEAAB不同的模型使用不同的方法计算字符的出现概率,由此概率可以得出字符的熵;然后使用不同的编码方法,尽量接近我们期望得到的熵值。所以,压缩效果的好坏一方面取决于模型能否准确地得到字符概率,另一方面也取决于编码方法能否准确地用期望的位数输出字符代码。3.8信息检索技术未来的发展3.8.1智能检索或知识检索 传统的全文检索技术基于关键词匹配进行检索,往往存在查不全、查不准、检索质量不高的现象,特别是在网络信息时代,利用关键词匹配很难满足人们检索的要求。智

45、能检索利用分词词典、同义词典,同音词典改善检索效果,比如用户查询“计算机”,与“电脑”相关的信息也能检索出来;进一步还可在知识层面或者说概念层面上辅助查询,通过主题词典、上下位词典、相关同级词典,形成一个知识体系或概念网络,给予用户智能知识提示,最终帮助用户获得最佳的检索效果,比如用户可以进一步缩小查询范围至“微机”、“服务器”或扩大查询至“信息技术”或查询相关的“电子技术”、“软件”、“计算机应用”等范畴。另外,智能检索还包括歧义信息和检索处理,如“苹果”,究竟是指水果还是电脑品牌,“华人”与“中华人民共和国”的区分,将通过歧义知识描述库、全文索引、用户检索上下文分析以及用户相关性反馈等技术

46、结合处理,高效、准确地反馈给用户最需要的信息。 3.8.2知识挖掘 目前主要指文本挖掘技术的发展,目的是帮助人们更好的发现、组织、表示信息,提取知识,满足信息检索的高层次需要。 知识挖掘包括摘要、分类(聚类)和相似性检索等方面。 自动摘要就是利用计算机自动地从原始文献中提取文摘。在信息检索中,自动摘要有助于用户快速评价检索结果的相关程度,在信息户个性化相关反馈的基础,也可用于去重分析。自动分类可基于统计或规则,经过机器学习形成预定义分类树,再根据文档的内容特征将其归类;自动聚类则是根据文档内容的相关程度进行分组归并。自动分类(聚类)在信息组织、导航方面非常有用。服务中,自动摘要有助于多种形式的

47、内容分发,如发往PDA、手机等。相似性检索技术基于文档内容特征检索与其相似或相关的文档,是实现用3.8.3异构信息整合检索和全息检索 在信息检索分布化和网络化的趋势下,信息检索系统的开放性和集成性要求越来越高,需要能够检索和整合不同来源和结构的信息,这是异构信息检索技术发展的基点,包括支持各种格式化文件,如TEXT、HTML、XML、RTF、MS Office、PDF、PS2/PS、MARC、ISO2709等处理和检索;支持多语种信息的检索;支持结构化数据、半结构化数据及非结构化数据的统一处理;和关系数据库检索的无缝集成以及其他开放检索接口的集成等。所谓“全息检索”的概念就是支持一切格式和方式的检索,从目前实践来讲,发展到异构信息整合检索的层面,基于自然语言理解的人机交互以及多媒体信息检索整合等方面尚有待取得进一步突破。 另外,从工程实践角度,综合采用内存和外部存储的多级缓存、分布式群集和负载均衡技术也是信息检索技术发展的重要方面。 随着互联网的普及和电子商务的发展,企业和个人可获取、需处理的信息量呈爆发式增长,而且其中绝大部分都是非结构化和半结构化数据。内容管理的重要性日益凸现,而信息检索作为内容管理的核心支撑技术,随着内容管理的发展和普及,亦将应用到各个领域,成为人们日常工作生活的密切伙伴。4系统总体设计4.1系统概要设计4.1.1系

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号