正文 第1765章 遇到问题,分析问题,解决问题
,一个记录入链。
然后迭代计算,直到收敛。”
“收敛条件呢?”
“每个网页的分数变化小于某个阈值。”
“计算量还是大。”张涛摇头,“十万网页,矩阵就是一百亿个元素。
现在的服务器算不动。”
第三天,陈浩打电话来了。
“遇到困难了?”他问。
贾瀞雯实话实说:“算力不够。
团队说矩阵太大,迭代计算需要的时间太长。”
电话那头沉默了一会儿。
“可以简化。”陈浩说,“第一,不需要算所有网页。
只计算有入链的网页,那些孤立页面直接给最低分。
第二,迭代可以分批进行,不需要一次性算完。
第三,分数不需要精确到小数点后很多位,整数就行。”
贾瀞雯把这些记下来,转告给团队。
李明听了,一拍大腿:“对啊!我们可以分块计算!先把网页按链接关系分组,组内迭代,组间再迭代。
这样内存占用能降下来。”
思路打开了,进展就快了。
第一周结束时,他们做出了简化版的超链分析算法。
测试数据很小,只有一千个网页,但结果令人鼓舞——重要网页的分数确实高,垃圾网页的分数确实低。
第二周,开始集成到真实数据里。
问题又来了:十万网页的链接关系太复杂,计算一次要八个小时。
“太慢了。”张涛盯着屏幕,“如果每天都要重新计算,根本跟不上网页更新的速度。”
贾瀞雯给陈浩打电话。
这次陈浩的建议很直接:“增量更新。
每天只计算新增网页和发生变化的部分,其他的用缓存。”
又是新的挑战。
但团队已经适应了这种节奏——遇到问题,分析问题,解决问题。
第二周周四晚上,李明从座位上跳起来。
“出来了!第一次完整计算完成!”
所有人围过去。
屏幕上显示着计算结果:十万网页,每个都有一个分数。
排在前面的,确实是那些权威网站,新闻门户,高校主页。
排在后面的,大多是个人主页或者广告页面。
“集成到排名算法里测试一下。”贾瀞雯说。
李明敲了几行代码,启动测试程序。
输入几个关键词,搜索结果按新算法排序。
效果明显。
之前搜“电脑价格”,前排结果里总有几个堆关键词的垃圾页面。
现在那些页面不见了,取而代之的是真正的电脑
然后迭代计算,直到收敛。”
“收敛条件呢?”
“每个网页的分数变化小于某个阈值。”
“计算量还是大。”张涛摇头,“十万网页,矩阵就是一百亿个元素。
现在的服务器算不动。”
第三天,陈浩打电话来了。
“遇到困难了?”他问。
贾瀞雯实话实说:“算力不够。
团队说矩阵太大,迭代计算需要的时间太长。”
电话那头沉默了一会儿。
“可以简化。”陈浩说,“第一,不需要算所有网页。
只计算有入链的网页,那些孤立页面直接给最低分。
第二,迭代可以分批进行,不需要一次性算完。
第三,分数不需要精确到小数点后很多位,整数就行。”
贾瀞雯把这些记下来,转告给团队。
李明听了,一拍大腿:“对啊!我们可以分块计算!先把网页按链接关系分组,组内迭代,组间再迭代。
这样内存占用能降下来。”
思路打开了,进展就快了。
第一周结束时,他们做出了简化版的超链分析算法。
测试数据很小,只有一千个网页,但结果令人鼓舞——重要网页的分数确实高,垃圾网页的分数确实低。
第二周,开始集成到真实数据里。
问题又来了:十万网页的链接关系太复杂,计算一次要八个小时。
“太慢了。”张涛盯着屏幕,“如果每天都要重新计算,根本跟不上网页更新的速度。”
贾瀞雯给陈浩打电话。
这次陈浩的建议很直接:“增量更新。
每天只计算新增网页和发生变化的部分,其他的用缓存。”
又是新的挑战。
但团队已经适应了这种节奏——遇到问题,分析问题,解决问题。
第二周周四晚上,李明从座位上跳起来。
“出来了!第一次完整计算完成!”
所有人围过去。
屏幕上显示着计算结果:十万网页,每个都有一个分数。
排在前面的,确实是那些权威网站,新闻门户,高校主页。
排在后面的,大多是个人主页或者广告页面。
“集成到排名算法里测试一下。”贾瀞雯说。
李明敲了几行代码,启动测试程序。
输入几个关键词,搜索结果按新算法排序。
效果明显。
之前搜“电脑价格”,前排结果里总有几个堆关键词的垃圾页面。
现在那些页面不见了,取而代之的是真正的电脑
本章未完,点击下一页继续阅读
(2/3)