一种对数据进行采样的方法和装置制造方法及图纸

技术编号:20655079 阅读:25 留言:0更新日期:2019-03-23 06:47
本申请公开了一种对数据进行采样的方法,包括:对所有用户的初始数据进行抽样处理,其中,每个用户对应一个数据向量;对于各个抽样用户及其对应的数据向量,计算每个抽样用户与其他所有抽样用户的向量间的相似性,得到每个抽样用户对应的距离矩阵;根据所有抽样用户对应的距离矩阵,对抽样用户对应的数据向量进行数据聚类;根据聚类结果,选择最重要的一个或多个特征;将所有用户的初始数据按照选择出的所有特征分成k类,并在每一类中进行抽样处理,并保证不同类中的抽样数差值最小。应用本申请,能够实现均匀采样,提高数据处理的准确性。

【技术实现步骤摘要】
一种对数据进行采样的方法和装置
本申请涉及采样技术,特别涉及一种对数据进行采样的方法和装置。
技术介绍
随着大数据时代的到来,很多工作都需要以大量数据的分析为基础进行。通常,对于大数据量进行分析前,需要对数据进行适当的采用,以缩小数据量,并保持数据特性。而在我们的学习和日常生活中,我们所遇到的大多数数据都存在数据不平衡的问题。例如,在信息安全监控、风险管理、文本分类、机器故障等方面,都有某些类存在较多样本,而某些类只存在较少或很少的样本的情况出现。数据集中不同类别的数据的数目相差很大,使得数据不均匀分布,这种数据不平衡可能会导致对数据后续的处理产生一定的影响,如在分类过程中,不平衡的训练数据会导致分类器的性能下降,使得分类结果不准确。例如,随着智能电网的发展,电力数据量迅速增长。为了更快捷、有效的分析海量的电力数据,我们需要对电力数据进行采样分析。蓄水池抽样算法可以在数据量过大、数据长度未知的情况下对数据进行随机抽样,是目前电力系统中应用较普遍的对电力数据进行采样的方法。然而传统的诸如蓄水池算法之类的抽样算法无法均匀采样,因而会影响数据处理的准确性。那么,如何改进抽样算法,得到平衡的数据,是我们要解决的重要问题。
技术实现思路
本申请提供一种对数据进行采样的方法和装置,能够实现均匀采样,提高数据处理的准确性。为实现上述目的,本申请采用如下技术方案:一种对数据进行采样的方法,包括:a、对所有用户的初始数据进行抽样处理,其中,每个用户对应一个数据向量;b、对于各个抽样用户及其对应的数据向量,计算每个抽样用户与其他所有抽样用户的向量间的相似性,得到每个抽样用户对应的距离矩阵;根据所有抽样用户对应的距离矩阵,对抽样用户对应的数据向量进行数据聚类;根据聚类结果,选择最重要的一个或多个特征;c、将所有用户的初始数据按照选择出的所有特征分成k类,并在每一类中进行抽样处理,并保证不同类中的抽样数差值最小。较佳地,所述对抽样用户对应的数据向量进行数据聚类包括:对抽样用户对于的数据向量进行聚类,计算轮廓系数,并取最大的轮廓系数作为聚类总数k,根据所述k进行聚类,得到聚类结果。较佳地,所述根据聚类结果选择最重要的一个或多个特征包括:针对聚类结果中每一类数据向量,计算每个备选特征对应的特征值;根据各特征值计算各个备选特征的重要性,将最重要的一个或多个备选特征作为选择出的特征。较佳地,所述备选特征为均值、标准差、方根幅值、峰度、偏度和/或峰值。较佳地,所述步骤c包括:c1、将所有用户中的第一个用户作为当前用户,初始化k个数据集,每个数据集的大小为n/k,每个数据集对应于所述数据聚类的一个类别;c2、按照选择出的所有特征,确定当前用户的初始数据所属的类别x;c3、判断所述类别x对应的数据集c是否放满,若是,则执行步骤c4,否则将当前用户对应的数据向量加入数据集c,再执行步骤c5;c4、以(n/k)/m的概率替换掉数据集c中的一个数据向量;c5、判断当前用户是否为最后一个用户,若是,则将k个数据集中的数据向量作为采样结果;否则,将下一个用户作为当前用户,返回步骤c2。较佳地,步骤c中所述将所有用户的初始数据按照选择出的所有特征分成k类包括:按照所述聚类结果,计算每一类的所有数据向量对应于所述所有特征的特征值/特征向量,将该特征值/特征向量作为分类标准;对于所有用户中的任一用户,计算该用户的数据向量对应于所述所有特征的特征值/特征向量,将所述任一用户的特征值/特征向量与所述分类标准进行比较后,选择差别最小的一类作为所述任一用户的所属类。较佳地,所述数据向量对应于所述所有特征的特征值/特征向量为:将所述数据向量中的数据分成N组,对应每组计算所述特征值/特征向量;所述选择差别最小的一类包括:对应每组,计算任一用户的特征值/特征向量与所述分类标准的差值,再对各个组的差值计算加权和或加权平均,选择加权和或加权平均最小的一类作为差别最小的一类;其中,N为预设的正整数。较佳地,所述用户对应的数据向量为用户一年内的每日用电量组成的向量。一种对数据进行采样的装置,包括:初始抽样单元、聚类单元和重抽样单元;所述初始抽样单元,用于对所有用户的初始数据进行抽样处理,其中,每个用户对应一个数据向量;所述聚类单元,用于对各个抽样用户及其对应的数据向量,计算每个抽样用户与其他所有抽样用户的向量间的相似性,得到每个抽样用户对应的距离矩阵;根据所有抽样用户对应的距离矩阵,对抽样用户对应的数据向量进行数据聚类;根据聚类结果,选择最重要的一个或多个特征;所述重抽样单元,用于将所有用户的初始数据按照选择出的所有特征分成k类,并在每一类中进行抽样处理。由上述技术方案可见,本申请中,对所有用户的初始数据进行传统抽样处理;对于各个抽样用户及其对应的数据向量,计算每个抽样用户与其他所有抽样用户的向量间的相似性,得到每个抽样用户对应的距离矩阵;根据所有抽样用户对应的距离矩阵,对抽样用户对应的数据向量进行数据聚类;根据聚类结果,选择最重要的一个或多个特征;将所有用户的初始数据按照选择出的所有特征分成k类,并在每一类中进行传统抽样处理,且每一类的抽样数相同。通过上述方式,利用聚类结果进行特征选择,然后再按照特征将所有初始数据分类后进行抽样,这样保证在不同特性的数据中抽样量相同,从而实现均匀抽样,提高数据处理的准确性。附图说明图1为本申请中采样方法的基本流程示意图;图2为本申请中采样装置的基本结构示意图;图3为本申请中采样方法和传统蓄水池采用方法的性能比较示意图。具体实施方式为了使本申请的目的、技术手段和优点更加清楚明白,以下结合附图对本申请做进一步详细说明。现有的抽样方法中直接在初始数据中进行抽样,没有考虑抽样数据的不同数据特征,因此,会造成不同类别的数据抽样量差别很大。本申请中的基本思想在于:对初始数据按照特征进行分类后,在每一类中进行抽样,并保证不同类中抽样数相同。现有比较普遍的对数据进行分类的方法是数据聚类,但是,如果直接对初始数据进行数据聚类,数据处理的计算量过于庞大。考虑到该问题,本申请中的采样方法没有直接对初始数据进行聚类,而是首先进行数据采样,再对采用后的数据进行聚类后提取重要特征,并根据特征对初始数据进行快速分类。具体地,本申请中对数据进行采样方法的思路包括:首先用户通过给出初始数据,对初始数据进行采样,然后对数据进行聚类,对聚类出的每一类的数据进行特征计算,特征提取,根据得到的特征进行快速分类,实现蓄水池抽样算法的均衡抽样,得到均匀分布的抽样数据。本申请中的方法尤其适用于不同数据特征的数据数目不同的场景,例如对用电数据进行采样的场景。下面对本申请中采样方法的具体实现进行介绍。图1为本申请中采样方法的基本流程示意图。其中,以对所有用户一年内的用电数据进行采样为例进行说明。如图1所示,该方法包括:步骤101,对所有用户的初始数据进行抽样处理。其中,每个用户对应一个数据向量。本例中,在M个用户的全年用电数据中采样部分用户的全年用电数据。其中,全年用电数据是指一年内每日的用电量。因此,每个用户对应的一个数据向量包括365个数据,每个数据表示该用户某一天的用电量。具体地,在电力系统中,每一个用户的原始数据为356天24点用电数据,将用户一天的用电量相加,减少数据量,本文档来自技高网...

【技术保护点】
1.一种对数据进行采样的方法,其特征在于,包括:a、对所有用户的初始数据进行抽样处理,其中,每个用户对应一个数据向量;b、对于各个抽样用户及其对应的数据向量,计算每个抽样用户与其他所有抽样用户的向量间的相似性,得到每个抽样用户对应的距离矩阵;根据所有抽样用户对应的距离矩阵,对抽样用户对应的数据向量进行数据聚类;根据聚类结果,选择最重要的一个或多个特征;c、将所有用户的初始数据按照选择出的所有特征分成k类,并在每一类中进行抽样处理,并保证不同类中的抽样数差值最小。

【技术特征摘要】
1.一种对数据进行采样的方法,其特征在于,包括:a、对所有用户的初始数据进行抽样处理,其中,每个用户对应一个数据向量;b、对于各个抽样用户及其对应的数据向量,计算每个抽样用户与其他所有抽样用户的向量间的相似性,得到每个抽样用户对应的距离矩阵;根据所有抽样用户对应的距离矩阵,对抽样用户对应的数据向量进行数据聚类;根据聚类结果,选择最重要的一个或多个特征;c、将所有用户的初始数据按照选择出的所有特征分成k类,并在每一类中进行抽样处理,并保证不同类中的抽样数差值最小。2.根据权利要求1所述的方法,其特征在于,所述对抽样用户对应的数据向量进行数据聚类包括:对抽样用户对于的数据向量进行聚类,计算轮廓系数,并取最大的轮廓系数作为聚类总数k,根据所述k进行聚类,得到聚类结果。3.根据权利要求1所述的方法,其特征在于,所述根据聚类结果选择最重要的一个或多个特征包括:针对聚类结果中每一类数据向量,计算每个备选特征对应的特征值;根据各特征值计算各个备选特征的重要性,将最重要的一个或多个备选特征作为选择出的特征。4.根据权利要求3所述的方法,其特征在于,所述备选特征为均值、标准差、方根幅值、峰度、偏度和/或峰值。5.根据权利要求1所述的方法,其特征在于,所述步骤c包括:c1、将所有用户中的第一个用户作为当前用户,初始化k个数据集,每个数据集的大小为n/k,每个数据集对应于所述数据聚类的一个类别;c2、按照选择出的所有特征,确定当前用户的初始数据所属的类别x;c3、判断所述类别x对应的数据集c是否放满,若是,则执行步骤c4,否则将当前用户对应的数据向量加入数据集c,再执行步骤c5;c4、以(n/k)/m的概率替换掉数据集c中的一个数据向量;c5、判断当前用户是否为最后一个用户,若是,则...

【专利技术属性】
技术研发人员:林荣恒苏运毕倩邹华叶泽州
申请(专利权)人:北京邮电大学国网上海市电力公司
类型:发明
国别省市:北京,11

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

1