[go: up one dir, main page]

CN102637205B - 一种基于Hadoop的文档分类方法 - Google Patents

一种基于Hadoop的文档分类方法 Download PDF

Info

Publication number
CN102637205B
CN102637205B CN201210072522.3A CN201210072522A CN102637205B CN 102637205 B CN102637205 B CN 102637205B CN 201210072522 A CN201210072522 A CN 201210072522A CN 102637205 B CN102637205 B CN 102637205B
Authority
CN
China
Prior art keywords
key
document
word
value
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210072522.3A
Other languages
English (en)
Other versions
CN102637205A (zh
Inventor
高阳
江凯
杨育彬
商琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
JIANGYIN INSTITUTE OF INFORMATION TECHNOLOGY OF NANJING UNIVERSITY
Nanjing University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by JIANGYIN INSTITUTE OF INFORMATION TECHNOLOGY OF NANJING UNIVERSITY, Nanjing University filed Critical JIANGYIN INSTITUTE OF INFORMATION TECHNOLOGY OF NANJING UNIVERSITY
Priority to CN201210072522.3A priority Critical patent/CN102637205B/zh
Publication of CN102637205A publication Critical patent/CN102637205A/zh
Application granted granted Critical
Publication of CN102637205B publication Critical patent/CN102637205B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于Hadoop的文档分类方法,包括如下步骤:对训练用文档集进行预处理,将原始的文档转化成向量形式;将向量形式的数据上传至集群文件系统;所述集群文件系统对向量形式的数据进行分块处理;对分块处理后的数据进行map-reduce处理过程得到统计信息;根据统计信息训练分类器;利用得到的分类器对测试用的文档进行分类。本发明能够利用大量无标记的文本提高分类器的分类准确度;能够利用集群和并行计算模型提高训练分类器的速度。

Description

一种基于Hadoop的文档分类方法
技术领域
本发明涉及一种基于Hadoop的文档分类方法,特别涉及一种应用在大规模文档分类任务中的并行化的半监督的朴素贝叶斯分类方法。
背景技术
朴素贝叶斯方法作为一种优秀的分类方法一直受到人们的关注和研究,特别在应用于文本分类任务时,朴素贝叶斯方法的简单,快速和准确率高等特点使之成为最好和最流行的文本分类方法之一。
近年来随着信息技术的快速发展和互联网的高度普及,文档分类任务呈现出新的特点,这些特点主要体现在以下两个方面:一,每天都有海量的数据进发出来,这些数据通常是TB级甚至是PB级的,同时数据的增长速度也呈上升趋势;二,用于训练分类器所需要的带标记的数据通常是很少的,大量的文本数据都是无标记的。这些特点给传统的朴素贝叶斯分类技术带来了挑战,一方面,传统的基于单机运算的计算模式难以在可接受的时间范围内给出处理结果。另一方面,分类器的准确率很大程度上依赖于训练所用的数据,传统的方法只能使用带标记的文本进行训练,这种标记一般都是人工标注的,所以其代价很高,而如果带标记文本的数量不足则会影响分类器的效用。
发明内容
发明目的:针对目前数据的规模巨大和大多数文本数据是无标记的这两个问题,本发明提供一种基于Hadoop的文档分类方法——一种新型的并行化的半监督的朴素贝叶斯分类方法——PSNB(Parallelized Semi-supervised Bayes)来适应新形势下文本分类任务的需要。
技术方案:为实现上述发明目的,本发明通过利用少部分的带标记样本和大部分的无标记的样本来提高分类器的准确性,同时通过基于集群的map-reduce计算模型来提高训练分类器的速度。该方法包括如下步骤:
(1)对训练用文档集(简称“训练集”)进行预处理,将原始的文档转化成向量形式;
(2)将向量形式的数据上传至集群文件系统;
(3)所述集群文件系统对向量形式的数据进行分块处理;
(4)对分块处理后的数据进行map-reduce处理过程得到统计信息;
(5)根据统计信息训练分类器;
(6)利用得到的分类器对测试用的文档进行分类。
进一步地,所述步骤(4)包括如下步骤:
1)从向量集中取出一个向量,判断该向量是带标记的数据还是无标记的数据,如果是带标记的数据转2),否则转3);
2)对于原始的文档中的每个单词发送两个键值对,转4);
3)对于原始的文档中的每个单词发送一个键值对,转4);
4)Hadoop自动收集由map过程发送过来的键值对,并且按照这些键值对的key值再重新发送到所述集群文件系统中的各个节点上去进行reduce过程;
5)在所述集群文件系统中的各个节点对接收到的键值对进行reduce处理。
有益效果:(1)能够利用大量无标记的文本提高分类器的分类准确度;(2)能够利用集群和并行计算模型提高训练分类器的速度。
附图说明
图1为本发明方法的分类器训练时的数据流与过程流图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1所示,本发明方法中的核心过程map-reduce过程包含数据预处理动作,数据上传动作,数据划分动作,数据分配动作、map动作、中间数据传输动作、reduce动作、构造分类器动作。
本发明方法的具体细节如图1所示,下面详细说明:
步骤1,用户将编写好的程序传输给master节点,master节点开始根据程序准备数据,并且同时调度集群文件系统(图中为“文件系统”),将map/reduce过程拷贝至各个slave节点。
步骤2,经过预处理将原始的文档转化成向量形式:其中d1表示训练集中的一篇文章,|d1|表示文章d1中单词的数目,表示在该文章出现的次数,c是该文章的类标,倘若该文章是无标记的,那么c就是一个特殊的用来表示无标记的标记。
步骤3,初始化三个数组用于记录map-reduce过程中的词频统计信息,这三个数组分别是termFrequency、labelFrequency、termFreOfGivenLabel。向量termFrequency用于对每个单词在整个训练集中词频的统计;向量labelFrequency表示某个类标在训练用文档集中出现的频率;二维向量termFreOfGivenLabel用于统计单词t在标签为c的文章中出现的次数即termFreOfGivenLabel(t,c)。
步骤4,map过程:从向量集中取出一个向量d,判断它是带标记的数据还是无标记的数据,如果是带标记的数据转5,否则转6
步骤5,发送键值对,其中key=<Type_lf,cd>,value=1;对于文档d中的每个单词t发送两个键值对其中一组key=<Type_tf,w>,value=fcd;另一组key=<Type_tofl,cd,w>,value=fcd。转步骤7
步骤6,对于文档d中的每个单词t发送键值对,其中key=<Type_tf,w>,value=fcd;转步骤7
步骤7,hadoop会自动收集由map过程发送过来的键值对,并且按照它们的key值再重新发送到各个节点上去进行reduce过程。
步骤8,在集群中的各个节点对接收到的键值对进行reduce处理,如果键的type为Type_lf那么转9,如果是Type_tf转10,否则转11。
步骤9,对values中的每个value值进行操作labelFrequency[key’s label]+=value。
步骤10,对values中的每个value值进行操作termFrequency[key’s term]+=value。
步骤11,对values中的每个value值进行操作termFreOfGivenLabel[key’slabel][key’s term]+=value。
步骤12,待各个节点上的reduce过程完成之后,根据统计信息所获得的三个向量就可推导出分类器模型:
对于类标集合C中每一个类标c有
P ( c ) = labelFrequency ( c ) sum ( labelFrequency )
并且对单词表中的每个单词w有:
P ( t | c ) = termFreOfGivenLabel ( t , c ) sum ( termFreOfGivenLabel ( t ) ) termFrequency ( t ) + laplace &Sigma; w termFreOfGivenLabel ( w , c ) sum ( termFreOfGivenLabel ( w ) ) termFrequency ( w ) + | V |
步骤13,至此已经建立起分类器模型,下面就是对待分类的文档进行分类了,当然首先将待分类文档d转化成向量形式然后根据所建立的分类器模型预测其类标为
公式中C(d)表示对文档d预测的类标,argmaxcP(c|d)的意思是取使得P(c|d)达到最大值得那个c。
表1是本发明方法所应用的5个数据集:
表1
表2是带标记文本数量/无标记文本数量=0.05时本方法(PSNB)与传统方法(朴素贝叶斯方法——NB方法)的精确度对比表:
表2
表3是带标记文本数量/无标记文本数量=0.10时本方法与传统方法的精确度对比表:
表3
表4是本发明方法与传统方法在训练分类器是时间耗费上的比较:
表4

Claims (1)

1.一种基于Hadoop的文档分类方法,其特征在于,包括如下步骤:
(1)对训练用文档集进行预处理,将原始的文档转化成向量形式;
(2)将向量形式的数据上传至集群文件系统;
(3)所述集群文件系统对向量形式的数据进行分块处理;
(4)对分块处理后的数据进行map-reduce处理过程得到统计信息;
(5)根据统计信息训练分类器;
(6)利用得到的分类器对测试用的文档进行分类;
所述步骤(1)中向量形式如下:
其中dl表示训练集中的一篇文章,|dl|表示文章dl中单词的数目,表示wi在该文章出现的次数,c是该文章的类标,倘若该文章是无标记的,那么c就是一个特殊的用来表示无标记的标记;
所述步骤(4)包括如下步骤:
1)初始化三个向量用于记录map-reduce过程中的词频统计信息,这三个向量分别是termFrequency、labelFrequency、termFreOfGivenLabel;向量termFrequency用于对每个单词在整个训练集中词频的统计;向量labelFrequency表示某个类标在训练用文档集中出现的频率;二维向量termFreOfGivenLabel用于统计单词t在标签为c的文章中出现的次数即termFReOfGivenLabel(t,c);
2)从向量集中取出一个向量,判断该向量是带标记的数据还是无标记的数据,如果是带标记的数据转3),否则转4);
3)对于原始的文档中的每个单词发送两个键值对,其中key=<Type_lf,cd>,value=1;对于文档d中的每个单词t发送两个键值对,其中一组key=<Type_tf,w>,value=ftd;另一组key=<Type_tofl,cd,w>,value=ftd,转5);
4)对于原始的文档中的每个单词发送一个键值对,对于文档d中的每个单词t发送键值对,其中key=<Type_tf,w>,value=ftd,转5);
5)Hadoop自动收集由map过程发送过来的键值对,并且按照这些键值对的key值再重新发送到所述集群文件系统中的各个节点上去进行reduce过程;
6)在所述集群文件系统中的各个节点对接收到的键值对进行reduce处理;
所述步骤(5)中分类器分类过程如下:
1)根据统计信息所获得的三个向量就可推导出分类器模型:
对于类标集合C中每一个类标c有
P ( c ) = labelFrequency ( c ) sum ( labelFrequency )
并且对单词表中的每个单词w有:
P ( t | c ) termFreOfGivenLabel ( t , c ) sum ( termFreOfGivenLabel ( t ) ) termFrequency ( t ) + laplace &Sigma; w termFreOfGivenLabel ( w , c ) sum ( termFreOfGivenLabel ( w ) ) termFrequency ( w ) + | V |
2)至此已经建立起分类器模型,下面就是对待分类的文档进行分类了,当然首先将待分类文档d转化成向量形式然后根据所建立的分类器模型预测其类标为
C ( d ) = arg max c P ( c | d ) = arg ma x c P ( c ) &Pi; i = 1 n P ( w i | c ) f wi
公式中C(d)表示对文档d预测的类标,argmaxcP(c|d)的意思是取使得P(c|d)达到最大值得那个c。
CN201210072522.3A 2012-03-19 2012-03-19 一种基于Hadoop的文档分类方法 Active CN102637205B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210072522.3A CN102637205B (zh) 2012-03-19 2012-03-19 一种基于Hadoop的文档分类方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210072522.3A CN102637205B (zh) 2012-03-19 2012-03-19 一种基于Hadoop的文档分类方法

Publications (2)

Publication Number Publication Date
CN102637205A CN102637205A (zh) 2012-08-15
CN102637205B true CN102637205B (zh) 2014-10-15

Family

ID=46621599

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210072522.3A Active CN102637205B (zh) 2012-03-19 2012-03-19 一种基于Hadoop的文档分类方法

Country Status (1)

Country Link
CN (1) CN102637205B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103713885A (zh) * 2013-12-27 2014-04-09 中国科学院计算机网络信息中心 一种面向多核集群的smo并行处理方法
CN105938561A (zh) * 2016-04-13 2016-09-14 南京大学 一种基于典型相关性分析的计算机数据属性约简方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1339756A (zh) * 2000-08-23 2002-03-13 松下电器产业株式会社 文档检索和分类方法及其装置
CN1452098A (zh) * 2002-04-19 2003-10-29 株式会社日立制作所 文档分类系统及其实现程序

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE396943T1 (de) * 2004-06-04 2008-06-15 Rue De Int Ltd Sortierverfahren für dokumente

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1339756A (zh) * 2000-08-23 2002-03-13 松下电器产业株式会社 文档检索和分类方法及其装置
CN1452098A (zh) * 2002-04-19 2003-10-29 株式会社日立制作所 文档分类系统及其实现程序

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
向小军等.基于Hadoop平台的海量文本分类的并行化.《计算机科学》.2011,第38卷(第10期),第184~188页.
基于Hadoop平台的海量文本分类的并行化;向小军等;《计算机科学》;20111031;第38卷(第10期);第184~188页 *

Also Published As

Publication number Publication date
CN102637205A (zh) 2012-08-15

Similar Documents

Publication Publication Date Title
CN107330446B (zh) 一种面向图像分类的深度卷积神经网络的优化方法
US10719664B2 (en) Cross-media search method
Xie et al. Comparison among dimensionality reduction techniques based on Random Projection for cancer classification
CN105117429A (zh) 基于主动学习和多标签多示例学习的场景图像标注方法
CN103886048B (zh) 一种基于聚类的增量数字图书推荐方法
CN104239554A (zh) 跨领域跨类别的新闻评论情绪预测方法
CN101770580B (zh) 一种跨领域的文本情感分类器的训练方法和分类方法
CN107832353A (zh) 一种社交媒体平台虚假信息识别方法
CN105631482A (zh) 一种基于卷积神经网络模型的危险物品图像分类方法
CN103425996B (zh) 一种并行分布式的大规模图像识别方法
CN104331506A (zh) 一种面向双语微博文本的多类情感分析方法与系统
CN102289522A (zh) 一种对于文本智能分类的方法
CN102298646A (zh) 一种主观文本和客观文本分类方法及装置
CN104881689A (zh) 一种多标签主动学习分类方法及系统
CN104463208A (zh) 组合标记规则的多视图协同半监督分类算法
CN105005794A (zh) 融合多粒度上下文信息的图像像素语义标注方法
CN103412878B (zh) 基于领域知识地图社区结构的文档主题划分方法
CN113282701B (zh) 作文素材生成方法、装置、电子设备及可读存储介质
CN106959946A (zh) 一种基于深度学习的文本语义特征生成优化方法
CN110727758A (zh) 一种基于多长度文本向量拼接的舆情分析方法及其系统
CN106776740A (zh) 一种基于卷积神经网络的社交网络文本聚类方法
CN107292348A (zh) 一种Bagging_BSJ短文本分类方法
CN105184322B (zh) 一种基于增量集成学习的多时相影像分类方法
CN102637205B (zh) 一种基于Hadoop的文档分类方法
CN103258212A (zh) 基于吸引子传播聚类的半监督集成遥感影像分类方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20161026

Address after: No. 163 Nanjing City, Jiangsu province 210046 Xianlin Avenue

Patentee after: Nanjing University

Address before: No. 163 Nanjing City, Jiangsu province 210046 Xianlin Avenue

Patentee before: Nanjing University

Patentee before: Jiangyin Institute of Information Technology of Nanjing University

EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20120815

Assignee: Xiamen Nebula sea Mdt InfoTech Ltd

Assignor: Nanjing Univ.

Contract record no.: 2016320000239

Denomination of invention: Document classification method based on Hadoop

Granted publication date: 20141015

License type: Exclusive License

Record date: 20161228

LICC Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model