当前位置: 首页 > 专利查询>四川大学专利>正文

一种分布式数据识别方法及系统技术方案

技术编号:15691534 阅读:111 留言:0更新日期:2017-06-24 04:49
本发明专利技术提供了一种分布式数据识别方法及系统,所述方法包括:对所有待识别数据进行分割以形成多个数据块,所述数据块中包括用于训练的待识别数据和用于检测的待识别数据;MapReduce架构中的各个Map Function计算单元以并行的方式分别获取不同的所述数据块;所述各个Map Function计算单元分别利用获取到的数据块中的用于训练的待识别数据对本地预设的神经网络模型进行训练;在训练过程结束后,所述各个Map Function计算单元分别利用经过训练的所述神经网络模型对获取到的数据块中的用于检测的待识别数据进行识别以得到识别结果;所述MapReduce架构中的Reduce Function单元获取所述各个Map Function计算单元的所述识别结果,并对所有识别结果进行筛选以得到一个识别结果。

Distributed data identification method and system

The present invention provides a system and a distributed data identification method, the method includes: for all the identified data was divided to form a plurality of data blocks, the data blocks to be used including identification data and training for the detection of the identification data; the architecture of MapReduce, each Map Function computing unit in parallel the way to obtain the data block is different; the Map Function computing unit respectively using the data blocks access to the data to be identified for training the neural network model was trained in training the local preset; after the end of the process, the Map Function computing unit were used by the the neural network model training on access to data blocks for identifying data detection identification to get the recognition result; the architecture of MapReduce Reduce The identification results of the various Map Function get Function unit calculation unit, and all the recognition results were selected to obtain a recognition result.

【技术实现步骤摘要】
一种分布式数据识别方法及系统
本专利技术涉及数据识别领域,具体涉及一种分布式数据识别方法及系统。
技术介绍
在现代数据识别应用中,例如图像识别、手写文字辨识、系统模式辨识中,神经元网络算法已经被大量应用。而在多种神经元网络算法中,反向传播神经元网络(BackPropagationNeuralNetwork,BPNN)又是应用最为广泛的一种算法。目前已经有数学证明给出明确结论,在一定数量的神经元和一定数量网络层的支持下,通过每个神经元中的线性部分和非线性部分的组合,该神经元网络可以以任意精度逼近任何连续函数。以上特性为BPNN的广泛应用奠定了坚实的基础。因为任何一种数据辨识应用的本质即为函数拟合,而BPNN的特性可以良好的适用数据辨识应用的需求。典型结构的BPNN中包括输入层和输出层,输入层包含多个输入端,输出层包含多个输出端,BPNN中还包括多个神经元,神经元处于隐层中。在执行数据辨识中,待辨识数据从输入层输入,辨识结果从输出层输出。但是在当前大数据应用的背景下,BPNN的先天缺陷导致其在大数据处理中的效率极为低下,主要原因为:作为有监督的启发式机器学习算法,BPNN需要对算法进行训练。而伴随数据体量增大,训练时间将大大变长,严重影响算法效率。
技术实现思路
因此,本专利技术要解决的技术问题在于克服现有的数据识别方法效率低缺陷。有鉴于此,本专利技术提供一种分布式数据识别方法,包括:对所有待识别数据进行分割以形成多个数据块,所述数据块中包括用于训练的待识别数据和用于检测的待识别数据;MapReduce架构中的各个MapFunction计算单元分别获取不同的所述数据块;所述各个MapFunction计算单元分别利用获取到的数据块中的用于训练的待识别数据对本地预设的神经网络模型进行训练;在训练过程结束后,所述各个MapFunction计算单元分别利用经过训练的所述神经网络模型对获取到的数据块中的用于检测的待识别数据进行识别以得到识别结果;所述MapReduce架构中的ReduceFunction单元获取所述各个MapFunction计算单元的所述识别结果,并对所有识别结果进行筛选以得到一个识别结果。优选地,所述对所有待识别数据进行分割以形成多个数据块,包括:采用自助算法对所有待识别数据进行有放回抽样,以形成多个子样本集合,所述自助算法中的有放回次数与所述MapFunction计算单元的数量相同;分别对所述子样本集合中的待识别数据进行归一化处理以得到归一化待识别数据sk;采用数据结构<instancek,targetk,type>分别将sk存储在多个数据块中,其中,instancek为sk,targetk为sk的训练目标,type为待识别数据的用途,所述用途包括训练用途和检测用途;将所有数据块存储至分布式文件系统中。优选地,所述各个MapFunction计算单元分别利用获取到的数据块中的用于训练的待识别数据对本地预设的神经网络模型进行训练,包括:各个MapFunction计算单元分别从所述分布式文件系统中读取不同的数据块;各个MapFunction计算单元中的神经网络模型分别根据字段type确定sk的用途,对于训练用途的sk,则神经网络模型从输入层输入sk,针对每一层的神经元执行正向传递;当正向传递执行至输出层后,正向传递过程结束,神经网络模型对训练数据sk进行反向传递;各个MapFunction计算单元针对每一训练用途的sk执行预定次数的正向传递和反向传递,直至所有训练用途的sk均被处理完毕。优选地,所述针对每一层的神经元执行正向传递,包括:在所述神经网络模型的每一个神经元内,其线性部分执行:Ij=∑iwijoj′+θj,其中Ij为线性部分输出,wij为该神经元权值,θj为该神经元偏移量,oj′为上一层神经元非线性部分输出;在每一个神经元非线性部分,执行:oj为非线性部分输出(也即每一个神经元输出至下一层神经元的输出),Ij为该神经元内的线性部分输出;所述神经网络模型对训练数据sk进行反向传递,包括:在所述神经网络模型的输出层执行:Errj=oj(1-oj)(tj-oj),Errj为输出层误差敏感度,tj为sk所对应的targetk;在所述神经网络模型的隐层执行:Errj=oj(1-oj)∑kErrkwkj,Errk为隐层中反向传递过程中上一层的误差敏感度,wkj为反向过程中上一层神经元权重;在反向传递过程中,每一个神经元通过误差敏感度调整自身权值w和偏移量θ:Δwij=Errjoj,wij=wij+Δwij,Δθj=Errj,θj=θj+Δθj。优选地,所述神经网络模型为反向传播神经元网络模型,所述各个MapFunction计算单元在执行所述利用获取到的数据块中的用于训练的待识别数据对本地预设的神经网络模型进行训练的步骤之前,分别独立初始化本地的神经网络模型的参数,所述参数包括每一个神经元的权值w和偏移量θ。相应地,本专利技术还提供一种分布式数据识别系统,包括:管理终端和多个计算终端,其中所述管理终端用于对所有待识别数据进行分割以形成多个数据块,所述数据块中包括用于训练的待识别数据和用于检测的待识别数据;所述计算终端用于启动MapReduce架构中的各个MapFunction计算单元分别获取不同的所述数据块;所述各个MapFunction计算单元分别利用获取到的数据块中的用于训练的待识别数据对本地预设的神经网络模型进行训练;在训练过程结束后,所述各个MapFunction计算单元分别利用经过训练的所述神经网络模型对获取到的数据块中的用于检测的待识别数据进行识别以得到识别结果;所述管理终端还用于启动所述MapReduce架构中的ReduceFunction单元获取所述各个MapFunction计算单元的所述识别结果,并对所有识别结果进行筛选以得到一个识别结果。优选地,所述管理终端用于采用自助算法对所有待识别数据进行有放回抽样,以形成多个子样本集合,所述自助算法中的有放回次数与所述MapFunction计算单元的数量相同;分别对所述子样本集合中的待识别数据进行归一化处理以得到归一化待识别数据sk;采用数据结构<instancek,targetk,type>分别将sk存储在多个数据块中,其中,instancek为sk,targetk为sk的训练目标,type为待识别数据的用途,所述用途包括训练用途和检测用途;将所有数据块存储至分布式文件系统中。优选地,所述多个计算终端用于分别启动各个MapFunction计算单元分别从所述分布式文件系统中读取不同的数据块;各个MapFunction计算单元中的神经网络模型分别根据字段type确定sk的用途,对于训练用途的sk,则神经网络模型从输入层输入sk,针对每一层的神经元执行正向传递;当正向传递执行至输出层后,正向传递过程结束,神经网络模型对训练数据sk进行反向传递;各个MapFunction计算单元针对每一训练用途的sk执行预定次数的正向传递和反向传递,直至所有训练用途的sk均被处理完毕。优选地,所述计算终端在所述神经网络模型的每一个神经元内,其线性部分执行:Ij=∑iwijoj′+θj,其中Ij为线性部分输出,wij为该神经元权值,θj为该神经元偏移量本文档来自技高网...
一种分布式数据识别方法及系统

【技术保护点】
一种分布式数据识别方法,其特征在于,包括:对所有待识别数据进行分割以形成多个数据块,所述数据块中包括用于训练的待识别数据和用于检测的待识别数据;MapReduce架构中的各个Map Function计算单元分别获取不同的所述数据块;所述各个Map Function计算单元分别利用获取到的数据块中的用于训练的待识别数据对本地预设的神经网络模型进行训练;在训练过程结束后,所述各个Map Function计算单元分别利用经过训练的所述神经网络模型对获取到的数据块中的用于检测的待识别数据进行识别以得到识别结果;所述MapReduce架构中的Reduce Function单元获取所述各个Map Function计算单元的所述识别结果,并对所有识别结果进行筛选以得到一个识别结果。

【技术特征摘要】
1.一种分布式数据识别方法,其特征在于,包括:对所有待识别数据进行分割以形成多个数据块,所述数据块中包括用于训练的待识别数据和用于检测的待识别数据;MapReduce架构中的各个MapFunction计算单元分别获取不同的所述数据块;所述各个MapFunction计算单元分别利用获取到的数据块中的用于训练的待识别数据对本地预设的神经网络模型进行训练;在训练过程结束后,所述各个MapFunction计算单元分别利用经过训练的所述神经网络模型对获取到的数据块中的用于检测的待识别数据进行识别以得到识别结果;所述MapReduce架构中的ReduceFunction单元获取所述各个MapFunction计算单元的所述识别结果,并对所有识别结果进行筛选以得到一个识别结果。2.根据权利要求1所述的方法,其特征在于,所述对所有待识别数据进行分割以形成多个数据块,包括:采用自助算法对所有待识别数据进行有放回抽样,以形成多个子样本集合,所述自助算法中的有放回次数与所述MapFunction计算单元的数量相同;分别对所述子样本集合中的待识别数据进行归一化处理以得到归一化待识别数据sk;采用数据结构<instancek,targetk,type>分别将sk存储在多个数据块中,其中,instancek为sk,targetk为sk的训练目标,type为待识别数据的用途,所述用途包括训练用途和检测用途;将所有数据块存储至分布式文件系统中。3.根据权利要求2所述的方法,其特征在于,所述各个MapFunction计算单元分别利用获取到的数据块中的用于训练的待识别数据对本地预设的神经网络模型进行训练,包括:各个MapFunction计算单元分别从所述分布式文件系统中读取不同的数据块;各个MapFunction计算单元中的神经网络模型分别根据字段type确定sk的用途,对于训练用途的sk,则神经网络模型从输入层输入sk,针对每一层的神经元执行正向传递;当正向传递执行至输出层后,正向传递过程结束,神经网络模型对训练数据sk进行反向传递;各个MapFunction计算单元针对每一训练用途的sk执行预定次数的正向传递和反向传递,直至所有训练用途的sk均被处理完毕。4.根据权利要求3所述的方法,其特征在于,所述针对每一层的神经元执行正向传递,包括:在所述神经网络模型的每一个神经元内,其线性部分执行:Ij=∑iwijoj′+θj,其中Ij为线性部分输出,wij为该神经元权值,θj为该神经元偏移量,oj′为上一层神经元非线性部分输出;在每一个神经元非线性部分,执行:oj为非线性部分输出(也即每一个神经元输出至下一层神经元的输出),Ij为该神经元内的线性部分输出;所述神经网络模型对训练数据sk进行反向传递,包括:在所述神经网络模型的输出层执行:Errj=oj(1-oj)(tj-oj),Errj为输出层误差敏感度,tj为sk所对应的targetk;在所述神经网络模型的隐层执行:Errj=oj(1-oj)∑kErrkwkj,Errk为隐层中反向传递过程中上一层的误差敏感度,wkj为反向过程中上一层神经元权重;在反向传递过程中,每一个神经元通过误差敏感度调整自身权值w和偏移量θ:Δwij=Errjoj,wij=wij+Δwij,Δθj=Errj,θj=θj+Δθj。5.根据权利要求1-4中任一项所述的方法,其特征在于,所述神经网络模型为反向传播神经元网络模型,所述各个MapFunction计算单元在执行所述利用获取到的数据块中的用于训练的待识别数据对本地预设的神经网络模型进行训练的步骤之前,分别独立初始化本地的神经网络...

【专利技术属性】
技术研发人员:刘洋刘剑许立雄沈晓东
申请(专利权)人:四川大学
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1