一种非参数回归方法

文档序号:6475025阅读:202来源:国知局
专利名称:一种非参数回归方法
专利说明本发明涉及预测方法的领域,特别涉及一种非参数回归方法。
背景技术
非参数回归(NPR)是一种数据驱动的预测技术,是近些年来兴起的一种适合不确 定性的、非线性的动态系统的非参数估计方法。非参数回归预测的原理如下假设预测对象 的状态X与关心的某个变量y之间存在某种关系y = m(x),如果预测对象当前的状态是J, 如果使用非参数回归的方法,则可以运用如下的过程来预测当预测对象的状态为J时歹的 值1、收集足够多的已知数据(Xl,yi) (xn,yn),并存储成数据集。2、找出数据集的一个子集合乂11,满足对于"1^夂,〈1”^尺,其中R是由方法使用 者定义的“相似”关系,即满足这种关系的X和f被认为是类似的。3、y = F(义),F为JJ和Xn之间的映射关系。从上面的过程中可以发现,非参数回归的实质是在模式库中寻找与当前状态相 似的历史状态,并把与当前状态相似的历史状态应用于状态预测。将已知数据(Xl,Y1)称 作一个模式。模式(X,y)中的X称作状态,或者自变量,它是与预测结果有直接影响的量。 y称作状态χ对应的结果,或者因变量,是系统的管理者或使用者所关心的量。从模式库中 找出与当前状态相似的历史状态过程被称作相似模式搜索,它是非参数回归预测方法的核 心,决定了非参数回归预测的计算速度和预测精度。在计算速度方面,现有的方法大多是使用线性结构来建立模式库,虽然简单,易于 搜索算法的实现,但是由于其结构决定了搜索算法的实现只能按照一维顺序执行,所以其 搜索操作所需时间耗费太长,尤其是样本数据库的规模比较大时,更是无法满足实时性要 求。在预测精度方面,现有的方法大多是开环系统,模式库和系统参数一旦设定就不再改 变,不能再运行过程中进行调节,因而影响了实际的预测效果。

发明内容
为了解决上述问题,本发明提供了一种非参数回归方法,该方法提高了非参数回 归预测的计算速度和预测精度,所述方法包括以下步骤(1)根据预测对象确定预测量;(2)从所述预测对象中获取预测量的属性P1 Pn,将所述属性P1 Pn作为所述预 测对象状态的各个分量,η为属性的个数;(3)收集模式;(4)根据收集到的所述模式,利用KD树数据结构构建模式库;(5)采集所述预测对象状态的参数,由所述参数构成所述预测对象当前状态向量, 按照预设准则在所述模式库中搜索与当前状态向量相似的k个模式,并获取所述k个模式 对应的待预测量的值yi yn;
(6)将获取到的所述待预测量的值yi yn代入预测函数中,得到预测值yf。rcast ;(7)经过时间T,采集待预测量的真实值yMal,根据所述预测值yto。ast和所述真实 值yMal计算预测误差e,根据所述预测误差e对所述预设准则中的权值、所述模式库的结构 进行调整。步骤(4)中的所述根据收集到的所述模式,利用KD树数据结构构建模式库具体 为构建第一参数P、第二参数cbpth和第三参数ds,第一参数P用于构造KD树的点 集、第二参数depth用于表示递归深度,第三参数ds用于表示点集中每个点的维数d ;
判断第一参数P是否只有一个节点,如果是,建立并储存节点的叶子并返回;如果 否,令维数d = depth% ds,找出第一参数P内各点第d维中值,以中值为分割线将第一参 数P划分成两部分,分别记为第一部分Pl,第二部分P2,同时生成一个节点V用来存储分割 第一参数P的中值;将第一部分PI、cbpth+Ι和第三参数ds作为参数,递归执行,直到返回,并将返回 的节点存储为VL ;将第二部分P2、depth+Ι和第三参数ds作为参数,递归执行,直到返回,并将返回 的节点存储为VR ;分别将VL和VR置为节点V的左右孩子。步骤(5)中的所述预设准则具体为在所述模式库中获取k个与所述当前状态向量距离最近的模式,所述距离为 d(H1,H2) = Max(a1\hl-hl2\,a2\^-h22\,L αη\^"-Η"2\),其中,H1 为当前状态向量,H2 为模式, Ii1为当前状态向量的分量,h2为模式的分量,ai; a2,... an为属性P1 Pn的权值,其中满足所述k的取值具体为设定一个区域半径R,在以所述当前状态向量为圆心,R为 半径的区域内搜索k个最接近的模式,如果区域内的历史模式小于等于k个,就以所有历史 模式作为相似模式;当区域内的历史模式大于k个,根据距离找最近的k个模式作为相似模式。步骤(5)中所述按照预设准则在模式库中搜索与当前状态向量相似的k个模式, 具体为在搜索区域内搜索到的模式个数为N,当N大于K时,对于这N个模式中的每一个 模式,构造一个数据对<b,V〉,其中V是模式本身,b表示模式到当前状态向量的距离,以N 个数据对为元素,b为关键字构造一个大顶堆,输出并删除堆顶元素,将剩余部分重新调整 为大顶堆,重复以上步骤N-K次,则堆内剩余的K个元素就是与所述当前状态向量距离最近 的K个模式;当N小于等于K时,则,以这N个模式作为与所述当前状态向量距离最近的模 式。步骤(7)中所述根据预测误差e对预设准则中的权值进行调整具体为定义能量误差函数五= ^e2,distance, e为预测误差,a2,. . . an为属性P1
Pn的权值,distance为当前状态向量X与已有模式之间的距离,为调整后的权值,为 调整前的权值,
权利要求
一种非参数回归方法,其特征在于,所述方法包括以下步骤(1)根据预测对象确定预测量;(2)从所述预测对象中获取预测量的属性P1~Pn,将所述属性P1~Pn作为所述预测对象状态的各个分量,n为属性的个数;(3)收集模式;(4)根据收集到的所述模式,利用KD树数据结构构建模式库;(5)采集所述预测对象状态的参数,由所述参数构成所述预测对象当前状态向量,按照预设准则在所述模式库中搜索与当前状态向量相似的k个模式,并获取所述k个模式对应的待预测量的值y1~yn;(6)将获取到的所述待预测量的值y1~yn代入预测函数中,得到预测值yforcast;(7)经过时间T,采集待预测量的真实值yreal,根据所述预测值yforcast和所述真实值yreal计算预测误差e,根据所述预测误差e对所述预设准则中的权值、所述模式库的结构进行调整。
2.根据权利要求1所述的非参数回归方法,其特征在于,步骤(4)中的所述根据收集到 的所述模式,利用KD树数据结构构建模式库具体为构建第一参数P、第二参数cbpth和第三参数ds,第一参数P用于构造KD树的点集、第 二参数depth用于表示递归深度,第三参数ds用于表示点集中每个点的维数d ;判断第一参数P是否只有一个节点,如果是,建立并储存节点的叶子并返回;如果否, 令维数d = depth% ds,找出第一参数P内各点第d维中值,以中值为分割线将第一参数P 划分成两部分,分别记为第一部分Pl,第二部分P2,同时生成一个节点V用来存储分割第一 参数P的中值;将第一部分Pl、depth+1和第三参数ds作为参数,递归执行,直到返回,并将返回的节 点存储为VL ;将第二部分P2、depth+Ι和第三参数ds作为参数,递归执行,直到返回,并将返回的节 点存储为VR ;分别将VL和VR置为节点V的左右孩子。
3.根据权利要求1所述的非参数回归方法,其特征在于,步骤(5)中的所述预设准则具 体为在所述模式库中获取k个与所述当前状态向量距离最近的模式,所述距离为 d(H1,H2) = Max(a1\hl-hl2\,a2\^-h22\,L αη\^"-Η"2\),其中,H1 为当前状态向量,H2 为模式, Ii1为当前状态向量的分量,h2为模式的分量,ai; a2,... an为属性P1 Pn的权值,其中满足a^as+L+an = 1,0<&±<1,1<: <πο
4.根据权利要求3所述的非参数回归方法,其特征在于,所述k的取值具体为设定一 个区域半径R,在以所述当前状态向量为圆心,R为半径的区域内搜索k个最接近的模式,如 果区域内的历史模式小于等于k个,就以所有历史模式作为相似模式;当区域内的历史模 式大于k个,根据距离找最近的k个模式作为相似模式。
5.根据权利要求1所述的非参数回归方法,其特征在于,步骤(5)中所述按照预设准则 在模式库中搜索与当前状态向量相似的k个模式,具体为在搜索区域内搜索到的模式个数为N,当N大于K时,对于这N个模式中的每一个模式, 构造一个数据对<b,V>,其中V是模式本身,b表示模式到当前状态向量的距离,以N个数据 对为元素,b为关键字构造一个大顶堆,输出并删除堆顶元素,将剩余部分重新调整为大顶 堆,重复以上步骤N-K次,则堆内剩余的K个元素就是与所述当前状态向量距离最近的K个 模式;当N小于等于K时,则,以这N个模式作为与所述当前状态向量距离最近的模式。
6.根据权利要求1所述的非参数回归方法,其特征在于,步骤(7)中所述根据预测误差 e对预设准则中的权值进行调整具体为定义能量误差函数五=distance, e为预测误差,BijB2,... an为属性P1 Pn的权值,distance为当前状态向量X与已有模式之间的距离,为调整后的权值,为调 整前的权值,distance =全[( !O1 _ &)f + ( 2O2 _ xi2)f +L + {am(xm ~x-)f .. dE de / 、Aat = ----= Cai(Xi-Xii)de Cii
7.根据权利要求1所述的非参数回归方法,其特征在于,步骤(7)中所述根据预测误差 e对模式库的结构进行调整具体为对模式库进行增加模式的操作、对模式库进行删除模式的操作和对模式库进行平衡的 操作。
8.根据权利要求7所述的非参数回归方法,其特征在于,所述对模式库进行增加模式 的操作具体为设定第一阈值和第二阈值,测得预测对象当前的状态,在模式库中搜寻以当前的状态 为中心,第一阈值为半径的区域,如果区域内存在的已有模式数小于第二阈值,则将当前的 状态加入模式库中,否则不做处理。
9.根据权利要求7所述的非参数回归方法,其特征在于,所述对模式库进行删除模式 的操作具体为;为模式库中的每个模式增加一个标识和一个计数器,标识等于1表示为正常模式,标 识等于O表示为不良模式,设置误差阈值et和第三阈值,在t时刻,如果I Hyi I /Vi > et, 则计数器加1,当计数器的值大于第三阈值,则将标识置为0,并在模式库中删除不良模式, 其中,Yi为与当前状态向量相似的模式对应的待预测量Ptl的值,1 < i ^n0
10.根据权利要求7所述的非参数回归方法,其特征在于,所述对模式库进行平衡的操 作具体为设定一个不平衡阈值,当子树的左右子树深度之差大于不平衡阈值时,对模式库进行 平衡的操作,否则,不对模式库进行平衡的操作,平衡的操作具体为设置一个列表的最大长 度,当叶子节点的列表长度大于最大长度时,则将列表分裂成一个根节点和两个叶子节点。
全文摘要
本发明公开了一种非参数回归方法,涉及预测方法领域,根据预测对象确定预测量;从预测对象中获取预测量的属性P1~Pn,将属性P1~Pn作为预测对象状态的各个分量,n为属性的个数;收集模式;根据收集到的模式,利用KD树数据结构构建模式库;采集预测对象状态的参数,由参数构成预测对象当前状态向量,按照预设准则在模式库中搜索与当前状态向量相似的k个模式,并获取k个模式对应的待预测量的值y1~yn;将获取到的待预测量的值y1~yn代入预测函数中,得到预测值yforcast;经过时间T,采集待预测量的真实值yreal,根据预测值yforcast和真实值yreal计算预测误差e,根据预测误差e对预设准则中的权值、模式库的结构进行调整。通过该方法提高了非参数回归预测的计算速度和预测精度,满足实际应用中的需要。
文档编号G06F17/00GK101968780SQ20101029532
公开日2011年2月9日 申请日期2010年9月28日 优先权日2010年9月28日
发明者朱宁, 王鹏飞, 贾宁, 郑亮, 马寿峰 申请人:天津大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1