APP下载

并行化改进的朴素贝叶斯算法在中文文本分类上的应用

2020-09-04彭子豪

科学技术创新 2020年26期
关键词:特征词词频贝叶斯

彭子豪 谭 欣

(湖北第二师范学院计算机学院,湖北 潜江433100)

1 概述

互联网技术的迅猛发展,使文本信息的体量乘上了增长的快车。为了有效的对海量文本信息进行数据挖掘,文本分类成为了研究的热点。文本分类在新闻主题分类、情感分析、舆情分析和智能信息推荐中都应用广泛。尤其是大数据海量文本数据而言,对其进行高效高精度的文本分类是一个重要的研究内容。朴素贝叶斯算法是公认经典的分类算法,普遍用于文本分类。朴素贝叶斯最核心的部分是贝叶斯法则,用后验概率和联合概率来计算先验概率。

文献[1]在朴素贝叶斯算法文本分类算法中去掉了对先验概率的计算,并在后验概率的计算中引入了一个放大系数,提升了计算精度。

文献[2] 提出一种基于词向量间余弦相似度的改进朴素贝叶斯算法,有效的降低了特征向量的数据冗余和计算复杂性。

文献[3]实现了基于MapReduce 实现朴素贝叶斯算法,使在大数据量的情况下, 并行化的贝叶斯算法较传统的贝叶斯算法具有更好的执行效率和较高的扩展性。在基于朴素贝叶斯的文本分类时,首先需要通过词频统计获取文本特征,之后利用贝叶斯对属性以同权的形式进行模型计算。

而上述文献没有考虑到对于文本属性而言,不同的属性在表征类别时贡献可能是不同的,而在传统贝叶斯文本分类方法中,认为特征项在分类时对决策的贡献相同,对不具有代表性的、噪声污染的特征和高频出现特征属性进行同权处理,导致分类精确度降低。

为区分文本单词特征属性在分类时的权重差异,提升文本大数据的分类精度及效率,本文首先利用改进的TFIDFCF 算法进行文本词频统计,获取不同单词的词频,该算法解决了TFIDF算法在计算特征词权重时忽略类间关系的问题。其次将文本特征词的词频统计结果,作为朴素贝叶斯模型的属性特征权重输入,进行加权分类。此外为了提高算法对海量大数据文本分类的处理能力,基于MapReduce 编程理念,在分布式框架上进行改进的算法的并行化处理,并通过计算召回率,精确率,f1-score等对算法性能进行评价。

实验结果表明,本文提出的基于改进的TFIDF 词频处理及并行框架下的朴素贝叶斯文本分类算法,较传统方法在分类精度及效率上均有提升。

2 基于TFIDF 算法的词频统计

2.1 TFIDF 算法简介

2.2 传统的TFIDF 算法的改进

3 朴素贝叶斯分类算法

3.1 朴素贝叶斯算法介绍

朴素贝叶斯的主要思想是在假设特征在互相条件独立的情况下,基于贝叶斯公式用先验概率的值来计算后验概率。

3.2 特征加权文本分类朴素贝叶斯算法

传统的朴素贝叶斯算法认为所有特征属性对分类决策的贡献是相同的。文献[5]表明,在文本分类中,得冗余的、与分类无关的、相互影响的以及被噪声污染的特征和其他特征具有相同的地位,并使得分类的正确性降低。针对传统的朴素贝叶斯在文本分类上认为特征词贡献相同,提出了基于TFIDFCF 特征加权的朴素贝叶斯算法。

其中Wk,d为特征项Xk词在d 文本中的TFIDFCF 权值。将词频,逆文档频率和类别区分度兼顾,较好的反应了词语的重要程度。这样将此权重加权到朴素贝叶斯模型中,会根据词的重要程度优化朴素贝叶斯假定特征词都条件独立的情况。

4 MapReduce 实现并行TFIDFCF 特征加权贝叶斯算法流程

4.1 算法实现流程图

算法实现总体可以分为两大步骤。第一个步骤为计算每个文章中词的TFIDFCF 值,第二个步骤为计算语料库中类别出现的概率及每个词在每个类别下的出现的条件概率。最终输出到NewBayesCalCulateMap 中即可进行类别预测(在实际预测中,由于朴素贝叶斯是由先验概率和联合概率来估计后验概率,所以第二步骤在预测时不需要计算,按照训练出来的模型带入即可)。由于MapReduce 并行计算框架支持有向图计算,按照上面的拓扑图进行会进行有序的输入输出形成MapReduce 链。虽然并行计算提高了计算的速度,但mapreduce 需要频繁的落盘,磁盘IO 开销大。而spark 基于内存的运算方式可能可以在此基础上更快。

MapReduce 实现并行TFIDFCF 特征加权贝叶斯算法流程图

4.2 实现算法中需要注意的几点

防止下溢出:在实现贝叶斯公式计算时。若进行浮点数运算,因为浮点数精确度不够,会导致乘积为零的情况,对改进的贝叶斯算法取对后公式如下:

5 文本分类结果分析

为验证算法的可行性,本文选取了清华大学自然语言处理实验室THUCNews 新闻文本部分数据和两组测试数据进行分类试验;并以传统贝叶斯文本分类结果对比对比试验,进行算法有效性分析。

THUCNews 新闻文本数据分类:

(1)THUCNews 数据介绍

THUCNews 新闻文本数据是根据新浪新闻RSS 订阅频道2005~2011 年间的历史数据筛选过滤生成, 包含74 万篇新闻文档,包含14 个候选分类类别:财经、彩票、房产、股票、娱乐等。本文节选了7 类每类5000 篇文档进行模型训练和测试。

(2)实验步骤

①对文本数据进行分词。去除停用词后,通过特征工程提取特征词,作为词库。

②根据词库把输入的文本数据转化为词向量。

③训练朴素贝叶斯模型。

④基于1.2 介绍的TFIDFCF 算法计算每篇文章中特征词的权重。

⑤将TFIDFCF 权重值加权到训练好的朴素贝叶斯分类模型中,取计算出的最大值所属类别为预测结果。

(3)THUCNews 新闻文本分类结果分析

分类预测结果对比表

本文中使用准确率、召回率、F1-score 三个指标来评估算法效果。

①精确率(Precision):分类结果中正确分类为Ci 的样本数占分类结果中所有分为Ci 类别的样本数,衡量分类的查准率

②召回率(Recall):分类结果中正确分类为Ci 的样本数占所有Ci 类的样本数的比例,衡量分类的查全率

③F1-score:在精确率和召回率的基础上提出了F1 值的概念,来对精确率和召回率进行整体评价

本文基于如上实验步骤在并行框架的计算优势下实现了这两种算法,提取了大量特征词。由于特征词多,数据量大,分类模型都建立的很准确。实验结果表明两种方法都有很好的文本分类能力。根据分类结果对比表可以发现,基于TFIDFCF 特征加权的朴素贝叶斯算法对于传统的朴素贝叶斯算法在大部分新闻类别中分类效果上有一定提升。

6 结论

在本文中,通过研究,对朴素贝叶斯应用在文本分类认为特征词之间相互条件独立提出了不同的观点。首先研究了TFIDFCF 算法,消除了TFIDF 算法在类间的偏差,并加权到朴素贝叶斯算法模型中。这样使那些重要的词相较于传统的朴素贝叶斯算法拥有更合理的权重。最后通过实验结果表明并行的TFIDFCF 特征加权的朴素贝叶斯算法是高效,合理,准确的。

猜你喜欢

特征词词频贝叶斯
基于类信息的TF-IDF权重分析与改进①
基于词频比的改进Jaccard系数文本相似度计算
基于贝叶斯定理的证据推理研究
基于贝叶斯解释回应被告人讲述的故事
一种面向财务文本分类的TF-IDF改进算法
词汇习得中的词频效应研究
基于改进TFIDF算法的邮件分类技术
OPEN:一个基于评论的商品特征抽取及情感分析框架
租赁房地产的多主体贝叶斯博弈研究
租赁房地产的多主体贝叶斯博弈研究