实现了基于分类的统计学习功能的元搜索引擎.pptVIP

实现了基于分类的统计学习功能的元搜索引擎.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实现了基于分类的统计学习功能的元搜索引擎 邱志欢 谭 天 候潇潇 刘益成 赵 阳 2004-12-25 Outline 项目背景 初始构想 具体实现 搜索引擎选取模块 抓取模块 归并与排序模块 用户界面部分 各模块接合 总结 项目背景 大量的搜索引擎充斥着Web! 通用搜索引擎(Google、天网) 专用搜索引擎(CiteSeer、百度MP3) 对于综合性能,专用SE不如通用SE 对于专门性能,通用SE不如专用SE 通用SE也各有其特色 而且,用户不可能知道太多的SE! 解决方法——元搜索引擎(MetaSearch)! 初始构想 基于一篇论文:SavvySearch: A Meta-Search Engine that Learns which Search Engines to Query (1997)?, Adele E. Howe, Daniel Dreilinger, AI Magazine 累积用户行为资料,对不同搜索引擎赋予不同的优先级 根据网络环境和性能要求调整使用的搜索引擎数据 我们的新想法:对于不同类型的搜索内容有不同的优先排序,以发挥专用搜索引擎的优势! 初始构思与分工 具体实现 切词部分已经基本掌握的情况下,发现找不到好的分类源码,于是把切词和分类部分都放弃了,改为由用户在界面上选择类别(Sohu的16个大类,可多选) 其他几模块 抓取部分(hxx) 搜索引擎选取部分(qzh) 归并、排序部分(lyc zy) 界面部分(tt) 系统整合(lyc tt) 搜索引擎选取部分 网络资源是有限的,但是,由于元搜索的特性,用户每次提交的关键字都会被发送到多个搜索引擎进行处理,如果不加以适当控制的话,系统对网络资源的消耗就会非常大。因而,系统需要从搜索引擎列表中选择出最有可能返回有用结果的少数几个来为用户服务。这样,系统就面对着两个关键的问题:选多少个和怎样选。 选多少个? 和可用资源相关 两种可用资源:网络资源和本地资源 网络资源:维护表格,里面记录最近的网络资源状况 本地资源:系统可以根据OS提供的API获得内存使用量和CPU占用率 令并发度的最小值为2,最大值为6。如果系统探测到最近一段时间可用资源很充足时,就将这个值加2,反之减2。 怎样选? 使用TFIDF和线性分类器的思想,构造选择算法 类别集合为{C1,…,Cm},搜索引擎集合为{S1,…,Sn},类别Ci和搜索引擎Sj之间的相关度为{CFij;CFij=0} CFij初值为一个常数,每当用户作一次反馈时,就将相应的CFij值加上一个增量,每当搜索引擎返回0个结果时,就将相应的CFij值减去一个增量。 怎样选?(2) 公式 怎样选?(3) 这样,对于任意给出的类别集合Ci,其中I是类别的下标集合,搜索引擎Sj和它之间的排序权值 其中, punish(j)是搜索引擎最近返回结果数量和响应时间的一个函数,返回结果数量越少,响应时间越长,它的值就越大 于是,对于一个类别集合,我们就可以求出每一个搜索引擎的排序权值,然后选取排序权值最大的几个搜索引擎为用户服务即可。 抓取部分 一波三折:w3c库—课程http库—自写代码—修改后的课程http库 向搜索引擎提交结果—取得页面—提取搜索结果 提交查询时的中文需做编码转换 各个搜索引擎的结果格式很不同,不能统一处理,只好分别编写类处理。 发现各搜索引擎有共用的操作和网络通信方式,因此提取出基类SearchEngine,提供统一接口 抓取部分(续) 提取结果需要一定的语法分析技术,比较繁琐,代码量大 需要翻页、判断是否查看所有结果 最后实现了五个搜索引擎的抓取:天网、百度、中搜、搜狗、易搜(Google和CiteSeer需要代理,编程麻烦!Poor CERNET!) 可以方便的添加新的搜索引擎,不影响其他模块 归并与排序部分 归并:多个搜索引擎返回的结果可能存在重复,需要消重 方法:判断其超链接,相同则去重,同时记录重复状况 使用STL里的map来做,key=url,value=返回结果结构体 排序:对于每个搜索引擎返回的结果根据选取部分的参数进行调整、重排,最后返回给界面部分 Rank算法 Rank算法(2) 某个搜索引擎返回的结果ranksingle={1,…,n} 根据Measuring Search Engine Quality (2001)?, David Hawking, Nick Craswell, Peter Bailey, Information Retrieval,n增大,P@n缓慢下降 为实现简单,令prob(ranksingle)=0.95^(ranksingle-1) 对于用户选择类别集,取该搜索引擎的对应的几个类的权值

文档评论(0)

seunk + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档