APP下载

基于Hadoop的神经网络算法在网络学习评价中的应用研究*

2016-03-15陈志华

计算机与数字工程 2016年2期
关键词:神经网络

陈志华

(广东技术师范学院计算机网络中心 广州 510665)



基于Hadoop的神经网络算法在网络学习评价中的应用研究*

陈志华

(广东技术师范学院计算机网络中心广州510665)

摘要网络环境下的学习需要有与之相适应的学习评价方式,为改进现有网络学习评价的不足,构建了基于BP神经网络的网络学习评价模型,并设计基于Hadoop的BP神经网络并行算法,解决网络学习评价中的大数据集分析和处理问题,实验证明,提出的方法拥有较快的收敛速度和较高的精度,在大数据集处理上具有较好的加速比和良好的可扩展性。

关键词BP算法; 神经网络; 网络学习评价; Hadoop

Application of Hadoop-based Neural Network Algorithm in E-learning Evaluation Study

CHEN Zhihua

(Computer & Network Center, Guangdong Polytechnic Normal University, Guangzhou510665)

AbstractTo improve the existing shortcomings of e-learning evaluation, is designed a e-learning evaluation model is proposed based on BP neural network, and the parallel algorithm of BP neural network is designed based on Hadoop. Experiment results demonstrate that the proposed method has fast convergence speed and high precision, it also has better acceleration and good scalability on the large data set processing.

Key WordsBP algorithm, neural network, E-learning evaluation, Hadoop

Class NumberTP311

1引言

随着我国计算机网络及教育技术的不断发展,以E-Learning(数字化学习)和M-Learning(移动学习)为代表的网络学习模式被广泛地应用,越来越多的人开始接受并习惯网络环境下的学习。与传统的课堂教学相比,网络环境下的教学评价有其独特性和复杂性,但目前对网络课程的学习评价往往还参考传统课堂教学的采用加权平均的线性评分模型,这样的评价方式显然已不能全面、客观地对网络环境下的学习效果进行评价。在网络环境下,学习者可以不受时空的限制,拥有丰富的学习资源,可进行多样化的网络学习活动,所以影响学习质量的因素也是多样化的,很难用一个线性模型来表达它们和学习效果之间的因果关系。侯丽平认为:网络学习评价的主要特征是价值取向的人文性、评价主体的多元性、评价内容的全面性、评价手段的先进性和评价过程的连续性[1]。因此需要综合考虑影响网络学习的主要因素,构建一个适合网络学习特征的学习评价指标体系。

BP神经网络能学习和存贮大量的输入—输出模式的映射关系,而无需事前揭示描述这种映射关系的数学方程。本文探索构建BP神经网络的网络学习评价模型,并设计基于Hadoop的BP神经网络并行算法,解决网络学习评价中的大数据集分析和处理问题。

2基于BP神经网络的网络学习评价模型

2.1BP神经网络基本原理

BP(Back Propagation)神经网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最为广泛的神经网络模型之一,BP神经网络能学习和存贮大量的输入—输出模式映射关系,而无需事前提示描述这种映射关系的数学方程,它包括输入层、隐含层和输出层,其中隐含层可以有一到多个。BP神经网络的基本原理是,把一个输入向量(由训练样本提供)经过隐含层的一系列变换,得到一个输出向量,从而实现输入数据与输出数据间的一个映射关系。BP算法由数据流的前向计算(正向传播)和误差信号的反向传播两个过程构成,根据输出误差来修改各神经元连接的连接权系数和阈值,经过反复的训练和调整,当输入值与期望值的误差达到可容忍范围内时,停止训练,并保存此时的网络权值和阈值,完成算法的学习过程。

2.2网络学习评价指标体系构建

近年来,有许多学者针对网络学习评价模型进行了深入的研究,如李景奇[2]、王建宏[3]、陈莉萍[4]等人依据不同理论构建了相应的学习评价指标体系。在分析以上网络学习评价指标体系的基础上,综合考虑影响网络学习的主要因素,根据学习评价的基本原则和方法,本文从学习资源利用、交互与协作、学习效果三个方面构建评价指标体系,该体系共包含3个一级指标、10个二级指标、17个评价参数,如表1所示。

表1 网络学习评价指标体系

2.3BP神经网络的网络学习评价模型的建立

在建模过程中,重点是设计合理的网络结构,而其中的关键在于隐含层及节点数的确定,针对网络学习评价的特点,采用三层BP神经网络结构,即使用只包含一个隐含层的网络结构,下面具体介绍评价模型的建立。

1) 输入层设计。根据网络学习评价指标体系,共有10项二级指标,这10项指标作为输入层的输入,因此输入层个数确定为10。

2) 输出层设计。因为网络学习评价的最终结果只有一个,所以输出层的输出节点确定为1。

2.4网络学习评价模型算法

使根据学习评价体系及BP神经网络结构设置,得出BP神经网络的输入为向量X=(x1,x2,…,x10)T,输出向量Y=(y1)T,隐含层和输出层的激活函数采用sigmoid函数作为激活函数,则当输入为xi,i=0,1,…n,这里n=10,隐含层神经元节点的输出为

输入端的神经元节点的输出方程为

若样本的全局误差达不到设定的误差精度要求,可以通过调整隐含层与输出层的连接权系数wjk,降低全局误差E的大小,使之满足精度要求,其计算公式如下:

其中,0<η<1,通常称为学习速率,隐含层每一个神经元的连接权系数调整量计算公式为

3基于Hadoop的BP神经网络并行算法设计

3.1Hadoop框架

Hadoop[4]是由Apache软件基金会维护的一个开源的分布式系统架构,用于编写、运行分布式应用,以处理大规模数据。Hadoop凭借着开源的优势,被广泛应用于数据处理、广告计算、科研实验等研究中。Hadoop主要由HDFS、MapReduce、Hive、HBase四个部分组成。HDFS(HadoopDistributedFileSystem)是一个具有可伸缩性和高可靠性的文件系统。MapReduce是一个分布式计算模型,通过将一个大的任务分解成独立的若干个任务集合,并行处理大规模数据集。Hive是一个基于Hadoop文件系统的数据仓库工具,提供了数据ETL(抽取、转换和加载)、数据存储和大型数据集的查询和分析等海量数据管理功能。HBase是一个分布式的、面向列的开源数据库。

3.2BP神经网络的并行算法设计

本文使用MapReduce实现基于BP神经网络的网络学习评价模型并行算法,算法的基本思路是在Map阶段计算并输出每个权值的变化量,然后在Reduce阶段计算每个权值的总变化量,最后根据总变化量与预期误差的对比对权值进行调整。算法运行步骤如下:

1) 数据输入:在MapReduce中,读入一组数据后,先按照预定的Map任务个数将数据分割,然后把每一个输入分片中的所有数据组织成〈key,value〉对,交给每个Map任务。

2)Map处理:Map任务接收到〈key,value〉类型的数据后,计算出每个权值(value)的变化量,然后再将数据组织成〈key,value〉键值对形式输出。

3) 数据排序:在把经过Map处理后的结果发送到Reduce之前,MapReduce框架会对这些键值对先以key值进行排序,然后再对相同key值的vlaue进行合并,形成新的数据组织形式〈key,value-list〉,其中key是所有Map输出的key中的一个,value-list是同一key值所有Map输出的vlaue的list。这样就把每个样本对应的所有权值变化量放入到同一个value-list里,以便后面计算总体权值变化量。

4)Reduce处理过程:Reduce接收到重新排序的〈key,value-list〉数据后,统计每个权值的总体变化量,更新每个权值的值,再以〈key,value〉形式输出。

A.Map函数伪代码如下:

B.Reduce函数伪代码如下:

输入:key,vlaue-list

输出:更新后的权值

Reduce(key,value-list)

{

While(value-list没有处理完)

{

累计每个权值的变化量

}

更新每权值

保存计算的结果

}

4实验与结果分析

4.1实验环境

本文实验中采用六台普通台式电脑,单机配置为:处理器类型为Intel(R)Core(TM)i7-3770,内存4G,硬盘500G。Hadoop集群设置为全分布模式,其中一台电脑设置为Master节点,并配置NameNode和JobTracker,其余五台设置为Slave节点,配置DataNode和TaskTracker。实验主要软件安装的版本为Hadoop2.2.0,Hive0.9.0,Oozie3.32,Jdk1.6。

4.2算法收敛速度与训练精度测试

此项测试的目的是测试算法的收敛速度与训练精度。本文从学习者学习记录数据库中抽取5个班267个学生的学习记录数据,记为267组数据,取其中230组数据作为训练数据,其余37组数据作为测试数据,用于检查训练生成的模型。评价采用五级制(优秀、良好、中等、合格、不合格),分别对应5个数字区间。将误差精度设定为0.02,最大训练次数为1000。实验结果如表2所示。

表2 算法收敛速度与训练精度训练结果

在37组测试数据中,测试正确的数据有35级,测试错误的有2组,正确率约为94.6%。在对出现偏差的样本数据分析后发现,有1个期望结果输出为9.1(优秀),但测试结果为8.9(良好),另一个期望结果输出为7(良好),测试结果是6.9(合格),分类错误率占5.4%,偏差只出现在相邻区间,这样的误差率在网络学习评价的应用上属于合理范围。

4.3海量数据运行测试

Hadoop集群用于网络学习评价的数据分析处理是要发挥其强大而高效的大数据集并行处理能力,因此,本文接下来进行海量数据的运行测试,目的是测试BP神经网络并行算法的加速比,检验算法是否具有较高的可扩展性。从网络学习平台数据库中抽取5000名学生半年和三年的各种学习活动记录数据,分别有892500条记录和5344500条记录。

把抽取的半年和三年学习活动数据集分别在单机、三机集群和六机集群中进行耗时测试,各运行10次,计算平均耗时,测试结果如表3所示。

表3 并行运行测试结果

耗时统计,如图1所示。

图1 BP并行算法运行耗时

加速比,如图2所示。

图2 BP并行算法加速比

从表3、图4和图5的实验结果可知,本文提出的BP神经网络并行算法在处理较小规模数据集时,多机集群与单机的运行耗时没有特别明显的优势。但在处理大数据集时表现出明显的优势,具有较好的加速比和良好的可扩展性。

5结语

本文构建了基于BP神经网络的网络学习评价模型,并设计基于Hadoop的BP神经网络并行算法,解决网络学习评价中的大数据集分析和处理问题。实验证明,该评价模型拥有较快的收敛速度和较高的精度,可用于网络学习的学习评价,并且在Hadoop集群环境下具有较好的加速比和良好的可扩展性,较好地解决了网络学习评价数据处理量大、耗时过长的缺点,为网络学习评价提供了高效而准确的新方法。

参 考 文 献

[1] 侯丽平.对网络学习者形成性评价及评价系统的研究与设计[D].北京:北京交通大学,2007:30-45.

HOU Liping. The Formative Accessment for E-Learners and the Research and Design of the Evaluation System[D]. Beijing: Beijing Jiaotong University,2007:30-45.

[2] 李景奇,韩锡斌,等.基于CIPP模式的网络学习跟踪与评价系统设计[J].电化教育研究,2009,7:53-57.

LI Jingqi, HAN Xibin, et al. Design of network learning tracking and evaluation system based on CIPP model[J]. E-education Research,2009,7:53-57.

[3] 王建宏,冯颖凌.基于AHP和模糊综合评判的网络学习评价[J].管理学家学术版,2011,8:57-63.

WANG Jianhong, FENG Yingling. Network learning evaluation based on AHP and fuzzy comprehensive evaluation[J]. An Academic Edition of ManaMaga,2011,8:57-63.

[4] 陈莉萍,哈渭涛.个性化网络学习评价模型与系统的设计[J].电子设计工程,2009,3:83-85.

CHEN Liping, HA Weitao. The design of personalized network learning evaluation model and system[J]. Electronic Design Engineering,2009,3:83-85.

[5] WHITE T. Hadoop: The Definitive Guide[M]. 3th Edition. USA: O’Reilly Media, Inc.,2012:12-35.

[6] 陆嘉恒.大数据挑战与NoSQL数据库技术[M].北京:电子工业出版社,2013.

LU Jiaheng. Big data challenge and NoSQL database technology[M]. Beijing: Electronics Industry Press,2013.

[7] 李友坤.BP神经网络的研究分析及改进应用[D].淮南:安徽理工大学,2012:19-25.

LI Youkun. Research analysis and improvement of BP neural network[D]. Huainan: Anhui University of Science and Technology,2012:19-25.

[8] 李玉斌,武书宁,姚巧红.网络学习评价研究的现状与分析[J].现代远距离教育,2013,149(5):34-39.

LI Yubin, WU Shuling, YAO Qiaohong. Current situation and analysis of network learning evaluation[J]. Modern Distance Education,2013,149(5):34-39.

[9] 崔文斌,牟少敏,王云诚,等.Hadoop大数据平台的搭建与测试[J].山东农业大学学报(自然科学版),2013,44(4):550-555.

CUI Wenbin, MOU Shaomin, WANG Yuncheng, et al. Build and test of Hadoop big data platform[J]. Journal of Shandong Agricultural University(Natural Science Edition),2013,44(4):550-555.

[10] 刘仁坤,杨亭亭,王丽娜.论现代远程教育多元化的学习评价方式[J].远程教育,2012,303(4):52-57.

LIU Renkun, YANG Tingting, WANG Lina. On the diversified learning evaluation method of Modern Distance Education[J]. Modern Distance Education,2012,303(4):52-57.

中图分类号TP311

DOI:10.3969/j.issn.1672-9722.2016.02.016

作者简介:陈志华,男,硕士,讲师,研究方向:数据挖掘、云计算、大数据管理、信息技术教学应用。

*收稿日期:2015年6月9日,修回日期:2015年9月25日

猜你喜欢

神经网络
基于递归模糊神经网络的风电平滑控制策略
神经网络抑制无线通信干扰探究
基于Alexnet神经网络的物体识别研究
基于神经网络的中小学生情感分析
基于Q-Learning算法和神经网络的飞艇控制
基于Mel倒谱特征和RBF神经网络的语音识别改进