百度新闻后台逻辑流程分析

   /*版权声明:可以任意转载,转载时请务必标明文章原始出处和作者信息 .*/  

 

             百度新闻后台逻辑流程分析

 

            CopyMiddle:张俊林

            TimeStamp: 2008 1 9

 

    今天分析了一下百度新闻,琢磨了一下其后台运行机制,出乎意料的是,我发现其运行机制比我想象的要简单,我原先没仔细看,以为至少会用到文本聚类,但是分析结果显示好像没用到,只是使用了文本分类和文本相似性计算而已。

    下面简单描述一下其可能的运行机制,纯属个人分析,不保证正确性。  

    1.后台若干爬虫不间断的爬取各个新闻网站的最新新闻,网页HTML TAG过滤,得到新闻正文(解析出标题,发表时间,来源等元信息);

    2.所有爬虫解析到的新闻存入某个POOL内,比如内存里建立新闻队列,积攒到一定量或者每隔一定时间(按照百度说法是5分钟),开始逐一进行处理;

    3.对于每个新闻N,首先进行文本分类,分到国内,国际,财经,互联网等若干类别内;

    4.计算新闻N和现有每篇新闻(最近5天内的)的相似性,如果和比如已有K篇新闻相似性大于一定值(比如>0.95),判断为已有新闻,不做处理(界面上某条新闻的“相同的K条新闻"就是这么计算得到的);

        1:为什么是通过文本相似性计算得到的?看这个例子

        http://news.baidu.com/n?cmd=8&page=%68%74%74%70% 3a % 2f % 2f %69%74%2e%68%65%78%75%6e%2e%63% 6f %6d% 2f %32%30%30%38%2d%30%31%2d%30%39% 2f %31%30%32%37%30%36%36%34%30%2e%68%74%6d% 6c &pn=1&clk=rrel&cls=housenews&where=toppage

       其实百度说是”相同新闻“,而实际上是两个不同的新闻,只是计算时候相似度高于阈值导致被认为是相同新闻。

       2:这个计算结果,即新闻N和现有的任何一篇新闻K的相似性要记住,后面有用处;

       3:新闻标题在计算相似性时候会赋予更高权值。

    5.如果发现没有和已有新闻完全相同的新闻,则认为是一条新的值得显示的新闻,将这条新闻列入”最新新闻“里面,并显示在界面;

      接下来要做的是:计算相关新闻。也就是百度新闻界面显示的”M条相关“的内容。还用计算么?不用计算了,上一步骤不是计算过文本相似性了么?

 直接拿来用即可,只要把相似性大于阈值(比如0.4)的文章作为相关新闻即可。

        1:步骤4在计算相似性的时候,居然不是在本分类内的文章计算,而是所有新闻,不管哪个分类的都进行计算,这个也出乎我的意料,为何这么说?

           来看http://news.baidu.com/n?cmd=5&page=%68%74%74%70% 3a % 2f % 2f %6e%65%77%73%2e%78%69%6e%68%75%61%6e%65%74%2e%63% 6f %6d% 2f %6e%65%77%73%63%65%6e%74%65%72% 2f %32%30%30%38%2d%30%31% 2f %30%39% 2f %63% 6f %6e%74%65%6e%74% 5f %37%33%39%33%30%31%34%2e%68%74%6d&pn=1

           主新闻:多米尼加发现家禽感染禽流感病毒 ,居然和很多诸如:“全球十大计算机病毒排名 CIH病毒居首”  这些已有新闻关联。这说明了不是和本分类新闻计算相似性,否则”全球十大计算机病毒排名 CIH病毒居首“是不会被错误的分类到国际新闻的。

         2:在步骤4计算的新进新闻N和已有新闻K之间的相似性,也会被新闻K用到,做过比较后,如果相似性大于阈值,此时点击新闻K,会在相关新闻里面显示新闻N

     6.此时基本完工,因为每个频道的”最新新闻“搞完,就意味着技术活到此结束了。

     7.每个频道的主体显示的有图片的新闻应该是人工选择的,人工从”最新新闻“里面选择决定哪些显示在主体页面内。

        注:刚开始我以为是程序自动选择的,比如”相同新闻“>100就显示在频道主体内,但是好像有若干新闻相同新闻很少也入选了。当然可能有其它机制决定是否放入频道主体显示,比如是否有图片,但是我倾向于认为是认为干预的结果。

     8.首页显示的新闻是各个频道主体内容的前K个,这个是自动的。

    

     完毕,收工。       

 
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值