搜索引擎,读《数学之美》

1.下载网页
把每一个网页当作节点,链接当作弧,组成一个复杂的图,下载则要遍历整个图,采用深
度遍历还是广度遍历?
广度优先:爬虫应该是在有限时间里面爬下最重要的网页,网站最重要的显然是首页。
深度优先:下载服务器和网站的服务器之间建立通信的过程是需要时间的,爬虫是分布式
(如何建立复杂网络系统并协调服务器的任务?)的系统,对于某个特定的网站服务器,
一般由特定的几台服务器专门下载,下载完一个站点再下载下一个站点,而不是先下载每
个站点的首页再轮回第二次下载。
2.建立索引
提取页面url,记录url(防止重复下载),怎么存储?
哈希表(怎么维护?)
实际上是不直接存储url,因为太长。存储下所有的url到哈希表里面,需要100TB的空间。
而且查找的时候是把哈希表放到内存里面,所以这100TB不是硬盘能存储就可以的,需要
用内存来存储。
存储这些url要用信息指纹,将每一个url映射到128位2进制,也就是16字节。这个映射
类似于md5加密,也是一种加密方式。
用一个很长的二进制数表示一个关键词是否出现
比如“原子能”这个关键词
0100100011000001.......表示第2,5,9,10,16篇文章里面含有这个关键字
假定“应用”这个关键字:0010100110000001....
搜索时有这两个关键字时,将这两个二进制数AND一下。
布尔运算,普通计算机一秒可以做10亿次以上。
如何确定网页和查询的相关性,将关键词赋予权重,比如某网页“原子能”出现2次,“的”
出现35次,“应用”出现5次,停止词权重为0,“应用”的权重比“原子能”的权重小,(一
个关键词w在Dw个网页中出现过,Dw越大,w的权重越小)
3.对网页进行排序
大概上是一个网页被其他网页所连接,他的排名就高。
PageRank算法
网页Y的排名来自所有指向这个网页的其他网页X1,X2,X3....Xk的权重之和。
如何度量权重?--->网页本身的排名
解决这个问题,应用了二维矩阵相乘,并用迭代的方法解决。(假定网页权重初值相同)
矩阵太大------>稀疏矩阵
反排名作弊
从通信的角度考虑,抗噪声和过滤噪声
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值