最近开始了对搜索引擎的研究。从大学一年级开始,我就想搜索引擎是否可以不基于关键字对互联网进行检索。比如基于图片内容,语音信息和视频内容等.现在我是大学三年级的学生,自己提出了研究课题。以下是关于此研究课题的内容。
进入21世纪,互联网技术的发展速度不断加快,网络信息也日益庞大,如何帮助用户快速获取有效信息是许多国际知名公司所共同关注的热点。其中:Google、Baidu均是有代表性的典型依托网络兴起的公司,即便是微软也开始日益对搜索技术给予了越来越多的关注,微软亚洲研究院中的搜索组在不久的将来有可能单独成为微软一个新的研究机构,这从另外一个侧面也说明了搜索对于许多公司在未来的发展具有举足轻重的作用。
现在的文本搜索引擎都是基于关键字的搜索。一般而言,搜索引擎研究一般涉及如下三个方面:网络机器人、索引与搜索与WEB服务器。它们之间的关系如下图所示:
对于搜索引擎所涉及到的几方面技术,包括:网络机器人、索引与搜索、WEB服务器,各个部分的研究进展描述如下。
1、网络机器人[1]
网络机器人也称为“网络蜘蛛(Spider)”,是一个功能很强大的WEB扫描程序。它可以在扫描WEB页面的同时检索其内的超链接并加入扫描队列等待以后扫描。因为WEB中广泛使用超链接,所以一个Spider程序理论上可以访问整个WEB页面。
为了保证网络机器人遍历信息广度和深度需要设定一些重要的链接并制定相关的扫描策略,并对网络机器人的相应的处理算法进行一定的优化[2]。
主要算法包括如下两种:
(1)PageRank算法[3]:一个网页被多次引用,则它可能是很重要的;一个网页虽然没有被多次引用,但是被重要的网页引用,则它也可能是很重要的;一个网页的重要性被平均的传递到它所引用的网页。这种重要的网页称为权威(Authoritive)网页。假定用户一开始随机的访问网页集合中的一个网页,以后跟随网页的向外链接向前浏览网页,不回退浏览,浏览下一个网页的概率就是被浏览网页的PageRank值。
(2)HITS算法及其变种[4],PageRank算法中对于向外链接的权值贡献是平均的,也就是不考虑不同链接的重要性。
2、索引与搜索
网络机器人将遍历得到的页面存放在临时数据库中,如果通过SQL直接查询信息速度将会难以忍受。为了提高检索效率,需要建立索引,按照倒排文件的格式存放。如果索引不及时更新,用户用搜索引擎也不能检索到所需信息。
用户输入搜索条件后搜索程序将通过索引数据库进行检索然后把符合查询要求的数据库按照一定的策略进行分级排列并且返回给用户。
其中所用到的主要算法如下:
(1)分词算法[5]:通常用的是词典分词,通过构造一个常用词词典对所遇到的文本进行词语的切分。相比之下,词典分词准确性是几种分词方法中最高的,因为词典中的词都是经过验证,并确定为语言中的一个基本语义单位的。常用的算法为最大(小)向前(后)匹配。
(2)倒排序[6]:从理论上说,倒排是一种面向单词的索引机制。通常,它由词(关键字)和出现情况两部分组成。对于索引中的每个词(关键字),都跟随一个列表(位置表),用来记录单词在所有文档中出现的位置。
3、WEB服务器
客户一般通过浏览器进行查询,这就需要系统提供Web服务器并且与索引数据库进行连接。客户在浏览器中输入查询条件,Web服务器接收到客户的查询条件后在索引数据库中进行查询、排列然后返回给客户端。
以上是基于关键字搜索引擎的一般框架,也是一种非常成熟的搜索引擎架构。这类搜索引擎大体上可以分为三类:全文搜索引擎(Full Text Search Engine)、目录索引类搜索引擎(Search Index/Directory)和元搜索引擎(Meta Search Engine)。
上述搜索引擎都是基于关键定的搜索引擎,但随着网络多媒体的发展,用户需要新的体验方式,各搜索引擎公司开始对基于非关键字的搜索引擎技术进行研究,比如:基于图像的搜索引擎、基于语音的搜索引擎等。但到目前为止,仍然没有一种较为成熟、有效的架构。
在文本搜索引擎领域占据主导地位的Google公司曾发布了14个预言,其中一个重要的预言就是:搜索引擎将不会局限于文字搜索,开始启用图像分析及语音识别。从2007年开始,各大搜索引擎公司已经开始逐步在此领域展开了研究。
作为目前新兴的一种具有广泛应用前景的搜索技术,基于图像内容分析的搜索引擎——即利用图像的信息进行模式匹配在网络中检索与此图片的相关信息。用户只有上传此图片,搜索引擎系统会根据图片内容,查找与此图片内容相关的图片,网页,语音视频等相关的信息资料。
本小组将在成熟的基于关键字的搜索引擎框架上开发基于图像的搜索引擎。其中必将结合模式识别中关于图像识别的算法研究。我们将借鉴相关的图像匹配技术[7,8]和很成熟的文本搜索引擎技术展开研究。本系统计划实现如下两项基本功能:人物检索功能和风景图像检索功能。
参考文献:
[1].汪涛, 樊考忠等. 主题爬虫的设计与实现[J]. 计算机应用, 2004, 24(6): 1001-9081.
[2].宋聚平, 王永成等. 搜索引擎中Robot搜索算法的优化. 情报学报,2002,21(4):130-133.
[3].曹军. Google的PageRank技术剖析[J].情报杂志.2002, 21(10):15-18.
[4].何晓阳, 吴强, 吴治蓉. HITS算法与PageRank算法比较分析. 情报杂志, 2004, 2(23): 85-86.
[5].向晖,郭一平,王亮. 基于Lucene的中文字典分词模块的设计与实现. 现代图书情报技术, 2006(8):46-50.
[6].吴文娟, 车明. 搜索引擎倒排索引的改进.微机处理.2006,6(12):83-85.
[7].梁栋,童强,王年等. 一种基于Laplacian矩阵的图像匹配算法. 计算机工程与应用.2005, 41(36): 31-38.
[8]. 梁栋, 童强, 王年等. 一种基于极几何和单应约束的图像匹配算法. 系统仿真学报. 2006, 18(1):44-46.
三、项目方案:
3.1项目模型
在参考基于关键字搜索引擎的基础上,基于图像内容分析的搜索引擎是通过检索相关网页中的图片,对其性能进行评价,本项目将搜索范围限制在人物图片及与该人物相关的网页。
使用此搜索引擎,用户可以检索其不认识的人,了解他。例如:用户手中有一张名人的图片,但用户又不知他的姓名,用户只要上传此用户的相片,搜索引擎就会为用户提供与此图片相关的网页信息,这样用户便可通过这些信息了解此人。用户也可以基于该搜索引起寻找向往的旅游胜地等。例如:用户手中有一副很美的风景图片,但并不知道该风景所在地,用户只要上传此风景图片,搜索引擎就会为用户提供与此图片相关的网页信息与电子地图,这样用户就可以进一步了解该旅游胜地,指定旅游计划等。
针对上述功能,项目组结合成熟的搜索引擎技术提出了如下的假设模型(如下图所示)。基于该模型,用户只需要上传图片(如:人物图片),图像内容分析的搜索引擎系统就会根据对人物的图片进行人脸识别,并在服务器中的检索与此图片相匹配的人脸,每一张人脸就对应于一个或多个URL。这里的图片是网络机器人从网络中抓取的图片,并采用类似关键字搜索引擎所用的技术,对URL中的关键字进行倒排序建立索引。
本原型系统试图在基于关键字搜索引擎的基础上进行改进,结合图像处理技术,在网络上检索与用户提交图片相关的网页信息,以列表形式返回给用户。基于图像内容分析的搜索只是打破以往只能以关键字进行检索的局面。在今后,可能还有更多模式识别的技术用于搜索引擎当中,如:语音识别等。
3.2 设想的搜索引擎原型系统使用流程
在基于关键字的搜索引擎中,用户需要输入具体的关键字,才可以找到相关的网页信息,而基于图片内容分析的搜索引擎是基于对图片内容的分析。
我们设想的原型系统使用流程如下:
Step1:用户上传图片
如:
Step2:特征抽取和比对。
用户并对此图片上的人物并不了解,也不知道此人物的具体姓名。系统将根据人脸识别与数据文件中所抓取到的人物图片,进行匹配,并提取相对应的URL地址返回给用户。
Step3:结果列表返回。
根据数据库中所存储的信息,根据匹配度的高低,返回给用户如下的URL列表。