基于朴素贝叶斯算法对论坛文本分类的技术实现
作者 :  唐勇

  摘要:该文主要探讨如何通过朴素贝叶斯算法对中文论坛中的文本信息进行自动分类,文中首先介绍了朴素贝叶斯算法的基本原理,并分析了该算法在文本分类中存在的不足之处,然后针对中文论坛的文本信息进行研究,结合中文论坛文本的特点对朴素贝叶斯算法提出了两点修正,给出了修正后的分类算法公式,最后介绍了如何借助Lucene开源框架、BerkeleyDB数据库及IKAnalyzer分词器等工具对修正朴素贝叶斯算法进行技术实现。
  关键词:朴素贝叶斯;论坛文本;文本分类
  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)32-7612-04
  通过设计一种通用的网络论坛的爬虫程序可以将分散在互联网各个角落的论坛信息有效地进行聚合,为用户提供统一的检索接口[1],然而论坛爬虫抓取的文本来自于不同主题的论坛版块,数据量庞杂,因此,有必要对这些论坛文本进行自动分类,从而为论坛搜索引擎提供具有分类主题的查询结果。目前文本自动分类的主要有方法有:朴素贝叶斯法、K-最近邻法、支持向量机、决策树分类法等,其中朴素贝叶斯以算法简单高效并且具有严密的数学理论支撑而到了较为广泛的应用。但是朴素贝叶斯法假设条件属性是彼此独立,在文本分类中这就意味着指构成文本的特征词汇彼此相互独立。该文结合论坛文本的特点,探讨了通过对特征属性进行加权来弥补朴素贝叶斯算法在论坛文本分类中的缺陷,并运用java多线程技术和开源的Lucene索引框架来提升论坛文本的分类效率。
  2 对朴素贝叶斯算法的修正
  针对朴素贝叶斯算法的缺陷,已经有许多研究者提出了改进措施,例如:使用属性相关性选择来进行属性选择获得一个属性子集,然后对这个属性子集运用朴素贝叶斯分类[2];考虑特征项在类内和类间的分布情况,结合特征项之间的相关度来调整贝叶斯分类中条件属性的权值[3];设计一种先“先抑后扬”的方法去掉了对先验概率的计算,并在后验概率的计算中引入了一个放大系数[4],可见绝大多数研究者关注的是如何弥补特征词的独立性假设这一缺陷。
  本文主要研究朴素贝叶斯算法在论坛文本中的应用,该文所指的论坛文本是通过文献1中所描述的论坛爬虫程序获取的来自各个论坛的帖子信息。由于论坛文本的主贴内容往往以“短文本”的形式出现居多且包含较多的口语词汇,在这种“短文本”中匹配特征词汇表的词也较少,往往导致类别识别失败。论坛文本信息主要由帖子的标题、主贴内容、回帖内容及帖子的状态信息(如原帖发表时间、最后回帖时间、帖子浏览数、帖子回复数等)构成。在对论坛文本进行分类时应该充分利用论坛的版块信息、帖子标题、回帖内容进行综合判断,为此本文提出以下的修改方案:
  4 结束语
  本文介绍了朴素贝叶斯算法的基本原理,分析了该算法在文本分类中存在的主要不足之处是了特征词汇在待判定文档中的位置信息以及特征词汇之间的独立性假设。通过对论坛文本信息的特点进行研究,该文认为在采用朴素贝叶斯算法进行论坛文本分类时应该在两个方面进行修改:一是结合帖子的标题和类别的特征词表,对类别概率P(Ci)进行修正;二是根据每个特征词在待判定文档中出现的位置,对条件概率P(Xj|Ci)进行修正。借助Lucene开源框架和BerkeleyDB数据库等工具探究了如何在技术上对修正的朴素贝叶斯算法进行实现。
  参考文献:
  [1] 唐勇.网络爬虫的设计[J].电脑知识与技术,2012(8).
  [2] 魏浩,丁要军.基于属性相关的朴素贝叶斯分类算法[J].河南科学,2014(32).
  [3] 饶丽丽,刘雄辉,张东站.基于特征相关的改进加权朴素贝叶斯分类算[J].厦门大学学报,2012(7).
  [4] 邸鹏,段利国.一种新型朴素贝叶斯文本分类算法[J].数据采集与处理,2014(7).

文秘写作 期刊发表