(12)发明专利申请
(10)申请公布号 CN 105469141 A (43)申请公布日 2016.04.06
(21)申请号 201510810308.7(22)申请日 2015.11.20
(71)申请人北京大学深圳研究生院
地址518055 广东省深圳市南山区西丽深圳
大学城北大园区(72)发明人雍珊珊 王新安 郭到鑫 商亚洲
彭然(74)专利代理机构深圳鼎合诚知识产权代理有
限公司 44281
代理人郭燕 彭家恩(51)Int.Cl.
G06N 3/02(2006.01)G06N 3/08(2006.01)
权利要求书2页 说明书3页 附图2页
(54)发明名称
基于神经网络的预测方法及系统(57)摘要
本申请涉及基于神经网络的预测方法及系统,包括按照常规神经网络预测算法和常规神经网络分类算法对训练数据分别进行训练,分别得到预测模型和分类模型;将测试数据分别输入预测模型和分类模型,分别得到预测结果和分类结果;根据所述预测结果和所述分类结果的区间关系,确定所述预测结果的正确性;在确定出所述预测结果正确后,输出按所述预测模型预测的预测结果。本申请通过采用常规ANN预测算法与分类算法相结合,相互印证,筛选出不一致的结果,由此得到合适的预测模型,从而可以提高预测结果的准确性,并使得即使只有少量训练样本,由于结合了分类算法得到的分类结果予以判断,所以可以提高ANN算法的精度。 C N 1 0 5 4 6 9 1 4 1 ACN 105469141 A
权 利 要 求 书
1/2页
1.一种基于神经网络的预测方法,其特征在于,包括:常规训练步骤:按照常规神经网络预测算法和常规神经网络分类算法对训练数据分别进行训练,分别得到预测模型和分类模型;
测试步骤:将测试数据分别输入预测模型和分类模型,分别得到预测结果和分类结果;判断步骤:根据所述预测结果和所述分类结果的区间关系,确定所述预测结果的正确性;
预测步骤:在确定出所述预测结果正确后,输出按所述预测模型预测的预测结果。2.如权利要求1所述的方法,其特征在于,所述判断步骤包括:判断所述预测结果是否属于所述分类结果所在的区间,如果所述预测结果不属于所述分类结果所在的区间,则丢弃当前的所述预测模型,按照所述常规神经网络预测算法重新训练预测模型;
如果所述预测结果属于所述分类结果所在的区间,则保留当前的所述预测模型。3.如权利要求2所述的方法,其特征在于,所述预测步骤中,在确定出所述预测结果正确后,直接输出所述预测结果;
或者,所述预测步骤包括:在确定出所述预测结果属于所述分类结果所在的区间后,对每一个测试数据进行复制,得到多个同一测试数据,将所述多个同一测试数据输入所述预测模型进行预测,得到多个预测值,对所述多个预测值去掉最大值和最小值后求取平均值,所述平均值作为最终的预测结果输出。
4.如权利要求1所述的方法,其特征在于,在所述常规训练步骤中,应用于常规神经网络预测算法的训练数据和应用于神经网络分类算法的训练数据是同一组数据;所得到的分类模型和预测模型在建立时所使用的参数形式不相同。
5.如权利要求1所述的方法,其特征在于,在所述常规训练步骤中,按照常规神经网络预测算法进行训练的训练数据的形式是直接采用的数值方式,按照常规神经网络分类算法进行训练的训练数据的形式是将数值按不同的幅值划分到不同区间,以将对应的区间数值应用于建立神经网络分类网络。
6.一种基于神经网络的预测系统,其特征在于,包括:常规训练模块,用于按照常规神经网络预测算法和常规神经网络分类算法对训练数据分别进行训练,分别得到预测模型和分类模型;
测试模块,用于将测试数据分别输入预测模型和分类模型,分别得到预测结果和分类结果;
判断模块,用于根据所述预测结果和所述分类结果的区间关系,确定所述预测结果的正确性;
预测模块,用于在确定出所述预测结果正确后,输出按所述预测模型预测的预测结果。7.如权利要求6所述的系统,其特征在于,所述判断模块具体用于判断所述预测结果是否属于所述分类结果所在的区间,
如果所述预测结果不属于所述分类结果所在的区间,则丢弃当前的所述预测模型,按照所述常规神经网络预测算法重新训练预测模型;
如果所述预测结果属于所述分类结果所在的区间,则保留当前的所述预测模型。8.如权利要求7所述的系统,其特征在于,所述预测模块用于在确定出所述预测结果正
2
CN 105469141 A
权 利 要 求 书
2/2页
确后,直接输出所述预测结果;或者所述预测模块具体用于在确定出所述预测结果属于所述分类结果所在的区间后,对每一个测试数据进行复制,得到多个同一测试数据,将所述多个同一测试数据输入所述预测模型进行预测,得到多个预测值,对所述多个预测值去掉最大值和最小值后求取平均值,所述平均值作为最终的预测结果输出。
9.如权利要求6所述的系统,其特征在于,在所述常规训练模块中,应用于常规神经网络预测算法的训练数据和应用于神经网络分类算法的训练数据是同一组数据;所得到的分类模型和预测模型在建立时所使用的参数形式不相同。
10.如权利要求6所述的系统,其特征在于,在所述常规训练模块中,按照常规神经网络预测算法进行训练的训练数据的形式是直接采用的数值方式,按照常规神经网络分类算法进行训练的训练数据的形式是将数值按不同的幅值划分到不同区间,以将对应的区间数值应用于建立神经网络分类网络。
3
CN 105469141 A
说 明 书
基于神经网络的预测方法及系统
1/3页
技术领域
[0001]本申请涉及机器学习技术领域,尤其涉及一种基于神经网络的预测方法及系统。背景技术
[0002]神经网络(Artificial Neural Network,ANN)算法的应用非常广泛,例如一些股市预测、粮食产量预测、以及天气预报等方面。研究人员一直追求更高神经网络算法的精度,这样就能应用更加广泛的领域。然而,现有使用ANN算法进行预测时,经常会出现训练样本过于庞大的情况,使得ANN样本训练过于耗时耗力,甚至造成对样本数据的浪费,使样本数据利用率低下,而如果训练样本量小,则存在精度不高的问题。发明内容
[0003]本申请提供一种基于ANN的预测方法及系统,其可应用于众多领域,旨在提高使用ANN算法的预测精度的同时,还减少了对训练样本量的需求。[0004]根据本申请的一个方面,本申请实施例提供一种基于ANN的预测方法,包括:按照常规ANN预测算法和常规ANN分类算法对训练数据分别进行训练,分别得到预测模型和分类模型;将测试数据分别输入预测模型和分类模型,分别得到预测结果和分类结果;根据所述预测结果和所述分类结果的区间关系,确定所述预测结果的正确性;在确定出所述预测结果正确后,输出按所述预测模型预测的预测结果。[0005]根据本申请的另一方面,包括:常规本申请实施例提供一种基于ANN的预测系统,训练模块,用于按照常规ANN预测算法和常规支持ANN分类算法对训练数据分别进行训练,分别得到预测模型和分类模型;测试模块,用于将测试数据分别输入预测模型和分类模型,分别得到预测结果和分类结果;判断模块,用于根据所述预测结果和所述分类结果的区间关系,确定所述预测结果的正确性;预测模块,用于在确定出所述预测结果正确后,输出按所述预测模型预测的预测结果。
[0006]本申请实施例通过采用常规ANN预测算法与分类算法对训练数据分别进行训练,来得到预测模型和分类模型,然后将测试数据分别输入预测模型和分类模型以得到预测结果和分类结果,对这两种结果进行区间关系判断,以此确定预测模型的预测结果是否正确,使得即使只有少量训练样本,由于结合了分类算法得到的分类结果予以判断,从而可以提高预测的精度。
附图说明
[0007]图1是本申请一实施例的基于ANN的预测方法的流程示意图;[0008]图2是图1所示实施例的细化过程示意图;
[0009]图3是本申请一实施例的基于ANN的预测系统的结构示意图。具体实施方式
4
CN 105469141 A[0010]
说 明 书
2/3页
常规ANN预测算法首先将训练数据标定,得到训练好的预测网络net1,然后将测试
数据经过预测网络net1得到预测结果。类似地,常规ANN分类算法是,首先对训练数据进行标定,得到训练好的分类网络net2,然后将测试数据经过分类网络net2得到分类结果。这两种算法都属于ANN算法的应用,但是都存在需要大量的训练样本、并且精度也有待提升的问题。
[0011]对此,本申请提出一种新的ANN建模方法,将常规ANN分类算法和常规ANN预测算法相结合,并将其应用于ANN建模中。本申请提供的基于ANN的预测方法将ANN预测算法与ANN分类算法相结合,相互印证,筛选出不一致的结果,由此得到合适的预测网络(又称预测模型),从而可以提高预测结果的准确性,实现提高ANN算法的精度。更进一步地,本申请在得到合适的预测模型后,在实际预测过程中,对同一测试数据进行复制后再输入预测模型,获得多个预测值,再对这些预测值进行去除最大最小值后求平均,将平均值作为最终的预测结果,从而进一步提高了预测结果的准确度。[0012]为使本申请的目的、技术方案和优点更加清楚明白,下面将通过具体实施例并结合参考附图对本申请作进一步说明。[0013]如图1和图2所示,为本申请一实施例提供的一种基于ANN的预测方法的流程示意图,包括常规训练步骤S11、测试步骤S13、判断步骤S15和预测步骤S17。[0014]在常规训练步骤S11中,按照常规ANN预测算法和常规ANN分类算法对训练数据分别进行训练,并分别得到预测网络net1和分类网络net2。这里常规ANN预测算法和常规ANN
本申请对此分类算法是指本领域普通技术人员公知的相关的ANN预测算法和ANN分类算法,
不做限制。
[0015]在测试步骤中S13,将测试数据分别输入预测网络net1和分类网络net2,并分别得到预测结果R1和分类结果R2。这里将测试数据输入预测网络和分类网络并进行训练得到对应的结果的过程,也可采用本领域普通技术人员公知的相关技术实现,本申请对此不做限制。
[0016]在判断步骤S15中,根据预测结果R1和分类结果R2的区间关系,确定预测结果R1的正确性。一种具体实现中,ANN预测算法涉及的训练数据形式采用精确数值,ANN分类算法涉及的训练数据形式是将精确数值按不同的幅值范围归类到不同区间,将区间数值应用于建立ANN的分类网络。在本实施例,在步骤S15中,判断预测结果R1是否属于分类结果R2所在的区间,如果属于,则保留预测结果R1;如果不属于,则丢弃预测结果R1,然后重新进行预测,例如返回步骤S11,按照常规ANN预测算法重新训练预测模型。[0017]在预测步骤S17中,在确定出预测结果R1正确(即确定预测结果R1属于分类结果R2所在的区间)后,本实施例的做法是将该预测结果R1作为最终的预测结果输出。[0018]本实施例通过采用常规ANN预测算法与ANN分类算法相互结合,同时使用,能够充分利用神经网络工具箱,提高了神经网络算法的精度。[0019]对于预测步骤S17,在另一实施例中,其在确定出预测结果R1正确(即确定预测结果R1属于分类结果R2所在的区间)后,保留当前的预测网络net1。然后或者同时,复制每一个测试数据Dci(i为正整数),得到多个同一测试数据如Dc1、Dc2、…、Dcn,n为总个数,然后将这多个同一测试数据Dc1、Dc2、…、Dcn输入预测模型net1进行预测,得到多个预测值Rc1、Rc2、…、Rcn,接着对这多个预测值Rc1、Rc2、…、Rcn去掉最大值和最小值,而后求取平均值,
5
CN 105469141 A
说 明 书
3/3页
该平均值作为最终的预测结果输出。对于该实施例,预测模型建立成功后,实际预测过程中,对同一个数据输入进行复制后再输入模型中,从而可获得多个预测值,对这些预测值去掉最大值和最小值,然后求平均值,作为最终的预测结果,这样可充分利用有限数据进一步提高模型精度。
[0020]又一实施例中,对于常规训练步骤S11,应用于常规ANN预测算法的训练数据和应用于ANN分类算法的训练数据是同一组数据,但是所得到的分类模型和预测模型在建立时所使用的参数形式不相同;这样,通过将ANN预测算法和ANN分类算法同时使用,充分利用有限数据,减少了对大量训练样本量的需求,同时也能够提高神经网络算法的精度。[0021]基于上述实施例,本申请另一实施例还提供了一种基于神经网络的预测系统,如图3所示,包括常规训练模块11,用于按照常规神经网络预测算法和常规神经网络分类算法
分别得到预测模型和分类模型;测试模块13,用于将测试数据分对训练数据分别进行训练,
别输入预测模型和分类模型,分别得到预测结果和分类结果;判断模块15,用于根据所得到
用于在确定的预测结果和分类结果的区间关系,确定预测结果的正确性;以及预测模块17,
出预测结果正确后,输出按所得的预测模型预测的预测结果。其中各模块的实现及其功能描述可参考前述例如图1和图2所示实施例的相关内容,在此不作重述。[0022]通过以上描述可知,本申请实施例将ANN预测算法和ANN分类算法相互结合,相互印证,筛选出不一致的结果,可以在得到神经网络预测算法的预测结果和分类算法的分类结果的基础上,能够提高结果的准确性,实现提高神经网络算法的精度,同时这样还可以减少对训练样本量的需求,对于后续研究人员使用ANN算法进行科研将有重要的意义。进一步地,模型建立成功后,实际预测过程中,对同一个数据输入进行复制后再输入模型中,从而可获得多个预测值,对这些预测值去掉最大值和最小值,然后求平均值,作为最终的预测结果,进一步提高ANN算法的精度。
[0023]本领域技术人员可以理解,上述实施方式中各种方法的全部或部分步骤可以通过程序来指令相关硬件完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存储器、磁盘或光盘等。
[0024]以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发
在不脱明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,
离本发明构思的前提下,还可以做出若干简单推演或替换。
6
CN 105469141 A
说 明 书 附 图
1/2页
图1
7
CN 105469141 A
说 明 书 附 图
2/2页
图2
图3
8
因篇幅问题不能全部显示,请点此查看更多更全内容