CN103544528A - 一种基于Hadoop的BP神经网络分类方法 - Google Patents
一种基于Hadoop的BP神经网络分类方法 Download PDFInfo
- Publication number
- CN103544528A CN103544528A CN201310568597.5A CN201310568597A CN103544528A CN 103544528 A CN103544528 A CN 103544528A CN 201310568597 A CN201310568597 A CN 201310568597A CN 103544528 A CN103544528 A CN 103544528A
- Authority
- CN
- China
- Prior art keywords
- hadoop
- method based
- reducer
- classification method
- weights
- 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.)
- Pending
Links
Images
Abstract
本发明公开了一种基于Hadoop的BP神经网络分类方法,包括如下步骤:数据预处理;在Hadoop平台各个节点的Mapper端启动Map任务,每个Mapper端获得一个训练数据,利用所述训练数据为当前网络的权值计算修正值,将所述修正值发送到Reducer端;在Hadoop平台各个节点的Reducer端启动Reduce任务,每个Reducer端获得一个所述权值的所有修正值,计算出所述修正值的平均值作为输出;采用批训练方式,修正各层权值;重复执行,直到误差达到预设精度或学习次数大于设定的最大次数,得到BP神经网络模型,否则继续迭代。本发明能实现并行计算。
Description
技术领域
本发明涉及一种基于Hadoop的BP神经网络(简称“BP网络”)分类方法。
背景技术
BP(Back Propagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input layer)、隐层(hide layer)和输出层(output layer)。误差反传误差反向传播算法的学习过程,由信息的正向传播和误差的反向传播两个过程组成。输入层各神经元负责接收来自外界的输入信息,并传递给中间层各神经元;中间层是内部信息处理层,负责信息变换,根据信息变化能力的需求,中间层可以设计为单隐层或者多隐层结构;最后一个隐层传递到输出层各神经元的信息,经进一步处理后,完成一次学习的正向传播处理过程,由输出层向外界输出信息处理结果。当实际输出与期望输出不符时,进入误差的反向传播阶段。误差通过输出层,按误差梯度下降的方式修正各层权值,向隐层、输入层逐层反传。周而复始的信息正向传播和误差反向传播过程,是各层权值不断调整的过程,也是神经网络学习训练的过程,此过程一直进行到网络输出的误差减少到可以接受的程度,或者预先设定的学习次数为止。
传统的BP神经网络训练方法,是在单机上串行处理数据集,但是随着信息化社会的飞速发展,需要进行数据挖掘的数据量急剧增大,达到了海量数据的级别,因此传统的BP神经网络训练方法在处理海量数据集时会有很大的问题,比如耗时非常长,甚至是内存不足无法训练等问题。
发明内容
发明目的:针对上述现有技术存在的问题和不足,本发明的目的是提供一种基于Hadoop的BP神经网络分类方法,实现并行计算。
技术方案:为实现上述发明目的,本发明采用的技术方案为一种基于Hadoop的BP神经网络分类方法,包括如下步骤:
(1)数据预处理;
(2)在Hadoop平台各个节点的Mapper端启动Map任务,每个Mapper端获得一个训练数据,利用所述训练数据为当前网络的权值计算修正值,将所述修正值发送到Reducer端;
(3)在Hadoop平台各个节点的Reducer端启动Reduce任务,每个Reducer端获得一个所述权值的所有修正值,计算出所述修正值的平均值作为输出;
(4)采用批训练方式,修正各层权值;
(5)重复执行步骤(2)至(4),直到神经网络正向传播处理值与预期值之间的差值达到预设精度或学习次数大于设定的最大次数,得到BP神经网络模型,否则继续迭代。
进一步的,还包括:以所述步骤(1)中数据预处理的结果为输入,并为每一个训练数据分配一个Mapper端。
进一步的,还包括:以所述步骤(2)中的修正值为输入,并为每一个权值分配一个Reducer端。
有益效果:本发明采用并行化计算BP神经网络中各层权值的修正值,进而采用批训练方式,修正各层权值。实验结果表明,本发明的方法能够大大提升BP神经网络模型的训练速度,对于处理大规模数据的分类问题具有良好的效果,具有很好的加速比。
附图说明
图1为本发明方法的流程图;
图2为本发明方法理论加速比与实际加速比的比较示意图;
图3为本发明方法在不同节点数上的运行时间示意图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1所示,本发明方法的步骤包括:
步骤1,数据预处理,将数据处理为文本向量;
步骤2,在Hadoop平台各个节点的Mapper端启动Map任务,每个Mapper端获得一个训练数据,利用这个训练数据为当前网络的权值计算修正值,将该修正值发送到Reducer端;具体的,Mapper端的Map函数计算每个权值的修正值,但是并不是输出每个权值的修正值,而是针对每个训练数据输出对应于这个数据的所有的权值的变化量。定义符合Hadoop序列化标准的类WeightWritable用于数据传递,其中记录了一个样本对应的所有的权值的修正值。此外,对于每个训练数据,并不是计算一次就输出结果,而是引入一个本地迭代次数的概念,经过数次的本地迭代后,才输出经过多次本地迭代后的权值修正值;
步骤3,在Hadoop平台各个节点的Reducer端启动Reduce任务,每个Reducer端获得一个权值的所有修正值,计算出该权值的修正值的平均值作为输出;具体的,Reducer端的Reduce函数接收Map函数输出的WeightWritable作为输入的value,统计每个权值的总体修正值,然后将平均值作为对权值的更新输出,写入HDFS(Hadoop Distributed File System,Hadoop分布式文件系统)中,供下次迭代使用;
步骤4,采用批训练方式,修正各层权值;
步骤5,重复执行步骤2至4,直到误差(即“神经网络正向传播处理值与预期值之间的差值”)达到预设精度或学习次数大于设定的最大次数,得到BP神经网络模型,否则继续迭代。
如图2,在数据量很大的情况下本发明方法的加速比随着节点数目的增多而大幅度提高,虽然与理论加速比有略微的差距,但也能够达到200倍以上。图3则表明本发明方法的运行时间会随着节点数增多而降低,和图2的结果是一致的。
Claims (3)
1.一种基于Hadoop的BP神经网络分类方法,包括如下步骤:
(1)数据预处理;
(2)在Hadoop平台各个节点的Mapper端启动Map任务,每个Mapper端获得一个训练数据,利用所述训练数据为当前网络的权值计算修正值,将所述修正值发送到Reducer端;
(3)在Hadoop平台各个节点的Reducer端启动Reduce任务,每个Reducer端获得一个所述权值的所有修正值,计算出所述修正值的平均值作为输出;
(4)采用批训练方式,修正各层权值;
(5)重复执行步骤(2)至(4),直到神经网络正向传播处理值与预期值之间的差值达到预设精度或学习次数大于设定的最大次数,得到BP神经网络模型,否则继续迭代。
2.根据权利要求1所述一种基于Hadoop的BP神经网络分类方法,其特征在于,还包括:以所述步骤(1)中数据预处理的结果为输入,并为每一个训练数据分配一个Mapper端。
3.根据权利要求1所述一种基于Hadoop的BP神经网络分类方法,其特征在于,还包括:以所述步骤(2)中的修正值为输入,并为每一个权值分配一个Reducer端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310568597.5A CN103544528A (zh) | 2013-11-15 | 2013-11-15 | 一种基于Hadoop的BP神经网络分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310568597.5A CN103544528A (zh) | 2013-11-15 | 2013-11-15 | 一种基于Hadoop的BP神经网络分类方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103544528A true CN103544528A (zh) | 2014-01-29 |
Family
ID=49967962
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310568597.5A Pending CN103544528A (zh) | 2013-11-15 | 2013-11-15 | 一种基于Hadoop的BP神经网络分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103544528A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239194A (zh) * | 2014-09-12 | 2014-12-24 | 上海交通大学 | 基于bp神经网络的任务完成时间预测方法 |
CN105023042A (zh) * | 2015-07-10 | 2015-11-04 | 国家电网公司 | 基于大数据神经网络算法的用户窃电嫌疑分析装置及方法 |
CN105760222A (zh) * | 2014-12-18 | 2016-07-13 | 北京神州泰岳软件股份有限公司 | 基于MapReduce的平均值计算方法及装置 |
CN105825269A (zh) * | 2016-03-15 | 2016-08-03 | 中国科学院计算技术研究所 | 一种基于并行自动编码机的特征学习方法及系统 |
CN106022521A (zh) * | 2016-05-19 | 2016-10-12 | 四川大学 | 基于Hadoop架构的分布式BP神经网络的短期负荷预测方法 |
CN106203622A (zh) * | 2016-07-14 | 2016-12-07 | 杭州华为数字技术有限公司 | 神经网络运算装置 |
CN106845343A (zh) * | 2016-12-15 | 2017-06-13 | 中国科学院电子学研究所苏州研究院 | 一种光学遥感图像海上平台自动检测方法 |
CN106874941A (zh) * | 2017-01-19 | 2017-06-20 | 四川大学 | 一种分布式数据识别方法及系统 |
CN107229518A (zh) * | 2016-03-26 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 一种分布式集群训练方法和装置 |
CN110096346A (zh) * | 2019-03-29 | 2019-08-06 | 广州思德医疗科技有限公司 | 一种多计算节点的训练任务处理方法及装置 |
CN111160535A (zh) * | 2019-12-31 | 2020-05-15 | 北京计算机技术及应用研究所 | 基于Hadoop的DGCNN模型加速方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102750309A (zh) * | 2012-03-19 | 2012-10-24 | 南京大学 | 一种基于Hadoop的并行化SVM求解方法 |
US20130173457A1 (en) * | 2010-01-14 | 2013-07-04 | Evan V. Chrapko | Systems and methods for conducting more reliable financial transactions, credit decisions, and security assessments |
-
2013
- 2013-11-15 CN CN201310568597.5A patent/CN103544528A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130173457A1 (en) * | 2010-01-14 | 2013-07-04 | Evan V. Chrapko | Systems and methods for conducting more reliable financial transactions, credit decisions, and security assessments |
CN102750309A (zh) * | 2012-03-19 | 2012-10-24 | 南京大学 | 一种基于Hadoop的并行化SVM求解方法 |
Non-Patent Citations (3)
Title |
---|
ANIRUDDHA BASAK ETAL.: "Accelerating Bayesian network parameter learning using Hadoop and MapReduce", 《PROCEEDINGS OF THE 1ST INTERNATIONAL WORKSHOP ON BIG DATA, STREAMS AND HETEROGENEOUS SOURCE MINING: ALGORITHMS, SYSTEMS, PROGRAMMING MODELS AND APPLICATIONS》, 12 August 2012 (2012-08-12) * |
ZHIQIANG LIU ETAL.: "MapReduce-based Backpropagation Neural Network over large scale mobile data", 《2010 SIXTH INTERNATIONAL CONFERENCE ON NATURAL COMPUTATION》, 31 December 2010 (2010-12-31) * |
朱晨杰 等: "基于MapReduce的BP神经网络算法研究", 《微型电脑应用》, vol. 28, no. 10, 31 October 2012 (2012-10-31) * |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104239194A (zh) * | 2014-09-12 | 2014-12-24 | 上海交通大学 | 基于bp神经网络的任务完成时间预测方法 |
CN105760222A (zh) * | 2014-12-18 | 2016-07-13 | 北京神州泰岳软件股份有限公司 | 基于MapReduce的平均值计算方法及装置 |
CN105023042A (zh) * | 2015-07-10 | 2015-11-04 | 国家电网公司 | 基于大数据神经网络算法的用户窃电嫌疑分析装置及方法 |
CN105825269A (zh) * | 2016-03-15 | 2016-08-03 | 中国科学院计算技术研究所 | 一种基于并行自动编码机的特征学习方法及系统 |
CN105825269B (zh) * | 2016-03-15 | 2018-06-26 | 中国科学院计算技术研究所 | 一种基于并行自动编码机的特征学习方法及系统 |
CN107229518A (zh) * | 2016-03-26 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 一种分布式集群训练方法和装置 |
US11636379B2 (en) | 2016-03-26 | 2023-04-25 | Alibaba Group Holding Limited | Distributed cluster training method and apparatus |
CN107229518B (zh) * | 2016-03-26 | 2020-06-30 | 阿里巴巴集团控股有限公司 | 一种分布式集群训练方法和装置 |
CN106022521A (zh) * | 2016-05-19 | 2016-10-12 | 四川大学 | 基于Hadoop架构的分布式BP神经网络的短期负荷预测方法 |
CN106203622B (zh) * | 2016-07-14 | 2018-12-25 | 杭州华为数字技术有限公司 | 神经网络运算装置 |
CN106203622A (zh) * | 2016-07-14 | 2016-12-07 | 杭州华为数字技术有限公司 | 神经网络运算装置 |
CN106845343B (zh) * | 2016-12-15 | 2020-05-19 | 中国科学院电子学研究所苏州研究院 | 一种光学遥感图像海上平台自动检测方法 |
CN106845343A (zh) * | 2016-12-15 | 2017-06-13 | 中国科学院电子学研究所苏州研究院 | 一种光学遥感图像海上平台自动检测方法 |
CN106874941A (zh) * | 2017-01-19 | 2017-06-20 | 四川大学 | 一种分布式数据识别方法及系统 |
CN110096346A (zh) * | 2019-03-29 | 2019-08-06 | 广州思德医疗科技有限公司 | 一种多计算节点的训练任务处理方法及装置 |
CN111160535A (zh) * | 2019-12-31 | 2020-05-15 | 北京计算机技术及应用研究所 | 基于Hadoop的DGCNN模型加速方法 |
CN111160535B (zh) * | 2019-12-31 | 2024-01-30 | 北京计算机技术及应用研究所 | 基于Hadoop的DGCNN模型加速方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103544528A (zh) | 一种基于Hadoop的BP神经网络分类方法 | |
CN108133258B (zh) | 一种混合全局优化方法 | |
Valdez et al. | Modular neural networks architecture optimization with a new nature inspired method using a fuzzy combination of particle swarm optimization and genetic algorithms | |
CN113052334B (zh) | 一种联邦学习实现方法、系统、终端设备及可读存储介质 | |
CN106022521B (zh) | 基于Hadoop架构的分布式BP神经网络的短期负荷预测方法 | |
WO2020172825A1 (zh) | 一种确定传输策略的方法及装置 | |
CN104636801A (zh) | 一种基于优化bp神经网络的预测输电线路可听噪声方法 | |
CN112700060B (zh) | 站所终端负荷预测方法和预测装置 | |
CN107703751A (zh) | 基于蜻蜓算法的pid控制器优化方法 | |
CN103105246A (zh) | 一种基于遗传算法改进的bp神经网络的温室环境预测反馈方法 | |
JP2016197389A (ja) | 学習システム、学習プログラムおよび学習方法 | |
CN103971160A (zh) | 基于复杂网络的粒子群优化方法 | |
CN104850531A (zh) | 一种建立数学模型的方法和装置 | |
Addanki et al. | Placeto: Efficient progressive device placement optimization | |
CN104050505A (zh) | 一种基于带学习因子蜂群算法的多层感知器训练方法 | |
CN105512755A (zh) | 一种基于分解的多目标分布估计优化方法 | |
Shang et al. | Production scheduling optimization method based on hybrid particle swarm optimization algorithm | |
Niu | The optimization for PID controller parameters based on genetic algorithm | |
CN114626550A (zh) | 分布式模型协同训练方法和系统 | |
CN109889525A (zh) | 多通信协议智能感知方法 | |
Hu et al. | Improved methods of BP neural network algorithm and its limitation | |
CN110610231A (zh) | 一种信息处理方法、电子设备和存储介质 | |
CN106408133A (zh) | 受生物膜启发dna遗传算法的铁路应急调度优化方法及系统 | |
Li et al. | Adaptive scheduling for smart shop floor based on deep Q-network | |
CN115544307A (zh) | 基于关联矩阵的有向图数据特征提取与表达方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140129 |