一种基于数据间关联关系的遗漏数据填补方法

文档序号:8361561阅读:403来源:国知局
一种基于数据间关联关系的遗漏数据填补方法
【技术领域】
[0001] 本发明属于数据预处理技术领域,具体涉及一种基于数据间关联关系的遗漏数据 填补方法的设计。
【背景技术】
[0002] 当前,由于计算机管理信息系统普遍应用于各行各业,积累的数据量日益增大,为 使这些数据发挥其应有的作用,为相关行业的管理决策提供强有力的支持,提高经济和社 会效益,由此诞生了数据挖掘、知识发现,其方法技术强调面向应用,因此,其应用效果日渐 彰显,越来越受到业内人士的注意和重视。
[0003] 参与数据挖掘和知识发现的数据质量是挖掘出的知识精确实用的前提,在虚假劣 质数据泛滥的数据集上很难发现有用的知识和规则,因此在进行数据挖掘前,对数据进行 相关的处理(例如:填补空缺数据项、平滑噪声数据、识别或去除异常数据和解决不一致数 据等过程)对于提高数据质量,为随后的数据挖掘、知识发现提供优质的数据,是一个非常 必要的步骤,一般称其为数据预处理。
[0004] 目前,在数据预处理中填补遗漏数据的技术有:1、从相关信息中提取填补空缺值 所需数据;2、利用同类别均值填补空缺值;3、利用决策树技术填补空缺值。这些技术在一 定程度上解决了遗漏数据填补的问题,然而这些技术都没有很好的利用数据之间的关联关 系,为数据分析提供较为精确的数据。
[0005] 因此,针对上述现有技术在数据预处理中填补遗漏数据方面存在的缺陷,实有必 要进行研宄,以提供一种基于数据间关联关系的遗漏数据填补方法,用以为后期的数据分 析提供高质量的数据。

【发明内容】

[0006] 本发明的目的是为了解决现有技术在数据预处理中填补遗漏数据方面不够精确 的问题,提出了一种基于数据间关联关系的遗漏数据填补方法。
[0007] 本发明的技术方案为:一种基于数据间关联关系的遗漏数据填补方法,包括以下 步骤:
[0008] Sl、对数据之间的关联关系进行分析,得到数据之间的关联规律;
[0009] S2、找到数据之间关联关系最强的关联规律;
[0010] S3、根据步骤S2中得到的最强关联规律对数据进行分组;
[0011] S4、对数据中的遗漏数据进行预填补;
[0012] S5、进行BP神经网络的设计;
[0013] S6、循环应用步骤S5中得到的BP神经网络进行数据填补,直到所有的数据填补完 成。
[0014] 进一步地,步骤Sl中的数据是现实社会的信息描述。
[0015] 进一步地,步骤S2具体为通过基于属性的相关性计算或者基于数据值的相关性 计算找到数据之间关联关系最强的关联规律。
[0016] 进一步地,步骤S5包括以下分步骤:
[0017] S51、根据步骤S3中的分组情况,将每组数据中的80%作为训练集,20%作为测试 集;
[0018]S52、假设训练集共有k列数据,则选择其中一列作为输出,其他作为输入,重复选 择k次;
[0019]S53、在输入层设计n个神经元,n为步骤S3中分组个数,输出层设计一个神经元; 在输入层与输出层之间设计一个隐层,隐层中的初始神经元个数为k-1个,根据实验情况 的好坏,可能改变隐层神经元的个数,以寻找误差最小的神经元个数,以此构建BP神经网 络;
[0020] S54、确定训练函数对BP神经网络的正向训练与反向学习,不断的缩小误差,最后 达到误差很小的状态。
[0021] 进一步地,步骤S54包括以下分步骤:
[0022] S541、权值初始化;
[0023]S542、给定输入变量和期望输出;
[0024]S543、正向训练:根据给定的输入变量计算得到神经网络的实际输出,并将其与期 望输出比较,如果存在误差则进入步骤S544,否则结束;
[0025]S544、反向学习:计算同一层单元的误差,求出误差梯度,修正权值与阀值,判断误 差是否满足要求,若满足要求则结束,否则返回步骤S542。
[0026] 本发明的有益效果是:本发明利用数据之间的关联关系,通过设计BP神经网络解 决了遗漏数据的填补问题,为后期的数据分析提供了高质量的数据,具有简单、高效、精确 等优点。此外,本发明在设计BP神经网络之前设计了相关算法对遗漏数据进行了预填补, 能够得到更好的神经网络模型和更精确的数据。
【附图说明】
[0027] 图1为大数据的矩阵示意图。
[0028] 图2为矩阵中数据遗失示意图。
[0029] 图3为本发明提供的基于数据间关联关系的遗漏数据填补方法步骤流程图。
[0030] 图4为本发明实施例的寻找MovieLens评分数据集中最强关联规律的流程图。
[0031] 图5为本发明实施例的采用slopeone算法进行遗漏值的预填补的步骤流程图。
[0032] 图6为本发明步骤S5的分步骤流程图。
[0033] 图7为本发明实施例的BP神经网络结构示意图。
[0034] 图8为本发明步骤S54的分步骤流程图。
【具体实施方式】
[0035] 下面结合附图对本发明的实施例作进一步的说明。
[0036] 大数据一般采用矩阵的方式表达,如图1所示。其中可能会出现数据遗漏的情况, 如图2所示,图中画X的地方表示此值遗失,这些遗失的数据可能包含很多的信息和知识, 对数据挖掘和知识发现等会有很大负面影响,因此需要对这些遗失数据进行填补。
[0037] 本发明提供了一种基于数据间关联关系的遗漏数据填补方法,如图3所示,包括 以下步骤:
[0038] S1、对数据之间的关联关系进行分析,得到数据之间的关联规律;
[0039] 这里的数据是现实社会的信息描述,现实社会总是会存在各种关联现象,那么数 据之间也存在或多或少的关联关系,找出这种关系会对遗漏数据的填补提供更多的支持。
[0040] S2、找到数据之间关联关系最强的关联规律;
[0041] 为了找到数据之间关联关系最强的关联规律,需要对数据进行相关性计算,对数 据的相关性计算可分为基于属性的相关性计算和基于数据值的相关性计算。
[0042] 本实施例以MovieLens评分数据集为例,其中包含了不同用户对不同电影的评 价。
[0043] 如图4所示,在对评分数据进行相关性计算时,若采用基于属性的相关性计算,即 从进行评分的用户入手,则首先应将所有电影进行分类,比如:喜剧,爱情,悬疑,科幻,悲 剧,言情,武术等20种类别,如果某个用户喜爱某类电影,则在该类电影的位置标识为1,否 则标识为0。然后任意选取两个用户的评分数据表示如下:
[0044] Pl= {1,0, 0, 1,0, 0, 1,1,1,1,0, 1,0, 0, 1,0, 1,0, 1,1}
[0045] P2 ={0, 0, 1,1,0, 1,0, 0, 1,1,0, 0, 1,0, 1,0, 1,1,0, 0}
[0046] 计算P1,P2的相似性Sum(Pl,P2):若两组数据第R位上的值相同(0〈1?〈21,1?为整 数),则Sum(Pl,P2)的值加1,那么上述两组数据的Sum(Pl,P2) = 10〇
[0047] 找出Sum(Pl,P2)值最大的两组数据,即为具有最强关联关系的数据。
[0048] 若采用基于数据值的相关性计算,即从评分数据入手,则对同一部电影评分相近, 说明两者可能存在某种关联关系,将所有电影的评价进行总体分析,如果结果越相近,表明 两者关联关系越紧密,具体的计算公式如公式(1)所示:
【主权项】
1. 一种基于数据间关联关系的遗漏数据填补方法,其特征在于,包括w下步骤: 51、 对数据之间的关联关系进行分析,得到数据之间的关联规律; 52、 找到数据之间关联关系最强的关联规律; 53、 根据步骤S2中得到的最强关联规律对数据进行分组; 54、 对数据中的遗漏数据进行预填补; 55、 进行BP神经网络的设计; 56、 循环应用步骤S5中得到的BP神经网络进行数据填补,直到所有的数据填补完成。
2. 根据权利要求1所述的遗漏数据填补方法,其特征在于,所述步骤S1中的数据是现 实社会的信息描述。
3. 根据权利要求1所述的遗漏数据填补方法,其特征在于,所述步骤S2具体为通过基 于属性的相关性计算或者基于数据值的相关性计算找到数据之间关联关系最强的关联规 律。
4. 根据权利要求1所述的遗漏数据填补方法,其特征在于,所述步骤S5包括W下分步 骤: 551、 根据步骤S3中的分组情况,将每组数据中的80%作为训练集,20%作为测试集; 552、 假设训练集共有k列数据,则选择其中一列作为输出,其他作为输入,重复选择k 次; 553、 在输入层设计n个神经元,n为步骤S3中分组个数,输出层设计一个神经元;在输 入层与输出层之间设计一个隐层,隐层中的初始神经元个数为k-1个,根据实验情况的好 坏,可能改变隐层神经元的个数,W寻找误差最小的神经元个数,W此构建BP神经网络; 554、 确定训练函数对BP神经网络的正向训练与反向学习,不断的缩小误差,最后达到 误差很小的状态。
5. 根据权利要求4所述的遗漏数据填补方法,其特征在于,所述步骤S54包括W下分步 骤: 5541、 权值初始化; 5542、 给定输入变量和期望输出; 5543、 正向训练:根据给定的输入变量计算得到神经网络的实际输出,并将其与期望输 出比较,如果存在误差则进入步骤S544,否则结束; 5544、 反向学习;计算同一层单元的误差,求出误差梯度,修正权值与阀值,判断误差是 否满足要求,若满足要求则结束,否则返回步骤S542。
【专利摘要】本发明公开了一种基于数据间关联关系的遗漏数据填补方法,包括以下步骤:S1、对数据之间的关联关系进行分析,得到数据之间的关联规律;S2、找到数据之间关联关系最强的关联规律;S3、根据步骤S2中得到的最强关联规律对数据进行分组;S4、对数据中的遗漏数据进行预填补;S5、进行BP神经网络的设计;S6、循环应用步骤S5中得到的BP神经网络进行数据填补,直到所有的数据填补完成。本发明利用数据之间的关联关系,通过设计BP神经网络解决了遗漏数据的填补问题,为后期的数据分析提供了高质量的数据,具有简单、高效、精确等优点。
【IPC分类】G06N3-02, G06F17-30
【公开号】CN104679868
【申请号】CN201510098877
【发明人】王淋铱, 文有庆, 刘聪
【申请人】四川深度信息技术有限责任公司
【公开日】2015年6月3日
【申请日】2015年3月6日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1