Searching the Web论文阅读
Searching the Web (Arvind Arasu etc.)
1. 概述
2000年,23%网页每天更新,.com域内网页40%每天更新。网页生存半衰期是10天。描述方法可用Poisson过程。
28%的网页构成强连通核心,22%处于核心的上游,22%处于核心的下游,其他的部分无法互联。
2. 抓取
优先抓高质量网页。综合三者:按需要(和query匹配度),按热度(链入度),按区域(比如.com优先)
做法:先抓K个网页,后续使用队列缓存待抓取url和质量分。
在stanford内网所有网页上试验,目标是快速获取高质量网页,质量策略PageRank>backlink>breadth>random。
循环抓取同时度量网页新鲜度(age),优先抓取较快更新的网页,过慢或过快更新优先级都不高。更新越快越频繁抓取。
3. 存储
分布式存储,增删改查功能,支持随机读(在线查询)和顺序读(离线索引)。
分布式存储:hash分桶
批量跟新(一月一批量写),部分更新(部分site)
主副本设计:利于读写分离
url规范化,生成id和签名(checksum/crc)
4. 索引
多个索引库:链接库(决定网页质量),文本库(决定查询匹配度),定制库(site包含关系)
倒排索引:标题和加粗的term权重更高
词典:所有term
增量构建
索引格式需谨慎设计
分布式索引:doc划分(单机失败易恢复,负载分摊均匀,较理想),term划分
doc划分方法下:分发器把网页分发给索引器,排序后生成临时索引,然后合并临时索引写硬盘并生成词典
实际经验:对正排表选择适中的buffer,使用并行流水线(loading, processing, flushing)
适时全局计算统计量(比如idf)并写入索引:本地聚合,能适合放入内存时发给统计器
总结:扩展性很重要
5. 排序和链接分析
现代搜索引擎的必要性:
大量的网页,大量低质量、低相关性网页
网页缺少正式编辑和属性描述
网页链接结构对评估网页质量很有利:PageRank和HITS算法
PageRank:随机冲浪模型,缓解非连通情况引入随机访问。收敛性在实际中不是瓶颈(约100次迭代足够@Google)
HITS:Hub节点和Authority节点
其他:聚合社区;通过结构(比如cocitation)发现相似网页;利用相邻网页类别做网页分类
未来:结合用户点击数据;语义分析(LSI:Latent Semantic Indexing)
6. 总结
多媒体信息带来的挑战
Searching the Web论文阅读的更多相关文章
- 论文阅读:《Bag of Tricks for Efficient Text Classification》
论文阅读:<Bag of Tricks for Efficient Text Classification> 2018-04-25 11:22:29 卓寿杰_SoulJoy 阅读数 954 ...
- [论文阅读笔记] LouvainNE Hierarchical Louvain Method for High Quality and Scalable Network Embedding
[论文阅读笔记] LouvainNE: Hierarchical Louvain Method for High Quality and Scalable Network Embedding 本文结构 ...
- [论文阅读笔记] Unsupervised Attributed Network Embedding via Cross Fusion
[论文阅读笔记] Unsupervised Attributed Network Embedding via Cross Fusion 本文结构 解决问题 主要贡献 算法原理 实验结果 参考文献 (1 ...
- 论文阅读(Xiang Bai——【PAMI2017】An End-to-End Trainable Neural Network for Image-based Sequence Recognition and Its Application to Scene Text Recognition)
白翔的CRNN论文阅读 1. 论文题目 Xiang Bai--[PAMI2017]An End-to-End Trainable Neural Network for Image-based Seq ...
- BITED数学建模七日谈之三:怎样进行论文阅读
前两天,我和大家谈了如何阅读教材和备战数模比赛应该积累的内容,本文进入到数学建模七日谈第三天:怎样进行论文阅读. 大家也许看过大量的数学模型的书籍,学过很多相关的课程,但是若没有真刀真枪地看过论文,进 ...
- 论文阅读笔记 - YARN : Architecture of Next Generation Apache Hadoop MapReduceFramework
作者:刘旭晖 Raymond 转载请注明出处 Email:colorant at 163.com BLOG:http://blog.csdn.net/colorant/ 更多论文阅读笔记 http:/ ...
- 论文阅读笔记 - Mesos: A Platform for Fine-Grained ResourceSharing in the Data Center
作者:刘旭晖 Raymond 转载请注明出处 Email:colorant at 163.com BLOG:http://blog.csdn.net/colorant/ 更多论文阅读笔记 http:/ ...
- [刷题]算法竞赛入门经典(第2版) 5-10/UVa1597 - Searching the Web
题意:不难理解,照搬题意的解法. 代码:(Accepted,0.190s) //UVa1597 - Searching the Web //#define _XIENAOBAN_ #include&l ...
- Deep Reinforcement Learning for Dialogue Generation 论文阅读
本文来自李纪为博士的论文 Deep Reinforcement Learning for Dialogue Generation. 1,概述 当前在闲聊机器人中的主要技术框架都是seq2seq模型.但 ...
随机推荐
- Entity Framework Tutorial Basics(17):DBSet Class
DBSet Class DBSet class represents an entity set that is used for create, read, update, and delete o ...
- 重构get请求代码---PartyLocation
将原理在PersonDto中定义的partyLocations,剪切到PartyDto中去. @JsonApiToMany private List<PartyLocationDto> p ...
- C++文件流打开标识符.RP
ofstream流,以ios::app打开(或者“ios::app|ios::out”),如果没有文件,那么生成空文件:如果有文件,那么在文件尾追加.以ios::app|ios::in打开,不管有没有 ...
- java全栈day09----继承 抽象类
01继承的概述 在Java中,类的继承是指在一个现有类的基础上去构建一个新的类, 构建出来的新类被称作子类,现有类被称作父类在java中 继承如何来实用呢?举个例子 继承的定义格式和使用 *A:继承的 ...
- 20169219《Linux内核原理与分析》课程总结
第一周作业 这周主要学习l了linux基础入门这个课,还是很有用的.一周学完,前两个可能做起来比较慢,但是后面就快了,不要放弃希望,你可以的! 我就是没写到博客里面,哼哼,你就不要看了.自己总结吧,摊 ...
- python调用Java代码
#coding:utf-8 #!/usr/bin/python from jpype import * import os.path,json from ethereum.utils import e ...
- mybatis spring maven
maven版本:3.3.9 解压即可使用 spring版本:4.3.9 通过maven进行管理下载 mybatis版本:3.4.4 通过maven进行管理下载 mysql版本:5.7 conne ...
- ServletContext接口(六)
javax.servlet.ServletContext接口 ServletContext(上下文)是公用的,就是.net中的application,主要用到的就是全局set设置值,get获取值,ja ...
- 入门GitHub
Step 1: 创建一个我们自己的账号 我们先登录https://github.com,然后单击sign up for Github,我们输入用户名,密码和邮箱就可以有一个 属于我们自己的Github ...
- 静态-static
静态 1. 静态初始化块 (1)可初始化类的静态字段 (2)静态初始化块只调用一次 (3)创建子类时会调用父类的静态初始化块 源代码: class Root { static{ System.out. ...