一种基于目标分布的样本集优化算法的制作方法

文档序号:15518104发布日期:2018-09-25 18:48阅读:164来源:国知局

本发明属于信息加工技术领域,涉及一种处理不平衡数据集的优化方法,具体地说,基于已有数据集的特征分布与给定目标分布,调整数据集中特征偏高或偏低的样本。



背景技术:

近年来,社交网络的兴起给研究者们提供了大量的开源和多样的数据用以开展具有各种针对性的研究工作。社交媒体研究是基于上千万个独立个体,然而对于大型社交媒体,传统的数据抽样方法往往具有各种各样的弊端。其中最为突出的,是样本集数据代表性存疑,使得这些结论往往具有一定的局限性。已有的工作往往关注如何在采样过程中施加约束并控制样本集达到预先给定的目标。然而现实研究中,很多时候研究者们得到的只是由运营商提供的一部分被允许公开的数据,或者是可以利用的数据仅有这一点。这意味着他们往往无法直接在采样过程中进行干预。因此这时研究者们需要一种方法,可以让他们从已有的结果样本集中挖掘出符合目标分布的数据集以修正数据偏差用于研究。

专利cn106599935a提出了一种解决大规模不平衡数据集在机器学习和模式识别领域中的分类问题的方法。采用spark的rdd进行数据变化,根据邻域三支决策模型将整个训练集中的样本划分成正域,边界域和负域样本;然后分别对边界域样本,负域样本进行过采样;但完全依赖过采样的方法在小类样本数量相对较少时浮动性很大,容易由于样本个体的极值严重影响数据集整体表现。专利cn107133639a公开了一种将模型认知数据和加权特征空间数据分布相结从而优化非平衡数据的方法。该专利采用boost模型学习当前数据,取得模型评分与特征权重,将数据集划分为pure数据集合、danger数据集合和noise数据集合,然后递归地获取数据近邻。该方法实现了生成小类样本同时去除大类样本,有一定的借鉴意义。但是该方法中各类数据目标占比定义由人为设定,无法有效地结合物理空间的分布信息进行样本集优化,同时,采样中使用近邻算法来选取样本不可避免地也会导致采样效率受损。



技术实现要素:

要解决的技术问题

为了解决一些情况下,给定的数据集特征分布无法满足研究者要求的问题,本发明提出了一种基于蒙特卡洛-马尔科夫链的模型来优化样本集中各个样本的对结果集贡献度的算法,可以更加综合地考虑原始数据集中数据的多样性以及分布的偏差性,从而获得更好的样本数据集,可更好地支撑相关的应用研究。

技术方案

一种基于目标分布的样本集优化算法,其特征在于步骤如下:

步骤1:根据给定的粒度,将原始数据集的特征与目标特征分布分段,并根据公式计算离散后的特征分布;式中,[sin,si(n+1)]表示分段得到的任意一个特征区间,uj表示一个样本特征对应的值;从而得到向量形式的原始数据集特征分布与目标分布,分别记为{f1,f2…fk}和{t1,t2…tk},其中k表示区间总个数;

步骤2:生成原始数据集中随机采样的样本特征转移矩阵qk×k:

步骤3:计算与上述转移矩阵大小相同的转移接收矩阵ak×k;矩阵中任意一项aij满足式中qij表示步骤2中转移矩阵qk×k中的对应项;

步骤4:从原始数据集中随机抽取一组样本其中n小于所需样本总数n的十分之一;将其作为采样初始阶段的样本特征状态,并将其加入新样本集s;此时计采样轮次r=0;

步骤5:随机抽取n个样本,构成第r轮采样的结果将其与上一轮到的结果进行比较对于下标相同的每个样本,如果则无条件接受新一轮的样本;如果依据[0,1]的均匀分布随机产生一个值表示实际接受概率p,若即接受本次采样,否则放弃该样本,保持上一轮的样本不变,即

步骤6:将调整后的本轮采样结果保存至新样本集s,同时使轮次计数值r自加一;

步骤7:重复步骤5~6,直到新样本集s中的样本数目大于等于n,即|s|≥n;

步骤8:汇总所有轮次的采样结果,若|s|>n,则从s中随机抛弃n-|s|个样本;此时,s中各个样本出现的频次即为它们在原有数据集中的权重。

有益效果

本发明提出的一种基于目标分布的样本集优化算法,可以更加综合地考虑原始数据集中数据的多样性以及分布的偏差性,通过产生合适的接收矩阵来选取合适的样本,从而获得更好的样本数据集,可更好地支撑相关的应用研究。

附图说明

图1为本发明实施例一种基于目标分布的给定数据集优化方法的整体流程图。

图2为本发明实施例一种基于目标分布的给定数据集优化方法样本特征状态随采样过程变化示意图。

具体实施方式

现结合实施例、附图对本发明作进一步描述:

一种基于目标分布的样本集优化方法,包括:分析原始数据集的数据特征,按给定的粒度,将连续特征分段,计算各个特征区间内数据集的分布情况,构造随机采样的特征状态转移矩阵;同时以物理空间的数据集特征分布作为目标分布,将其按对应的分段方式离散化后,结合数据集的状态转移矩阵,计算构造采样的接收矩阵;以待优化数据集作为采样空间,在其上通过重采样来调整样本权重,并依据接受矩阵确定样本的权重升降;从而可以控制特征变量的分布,最终得到一个符合目标分布的样本数据集。

如图1所示,本发明实施例提供了一种基基于目标分布的给定数据集优化方法,包括如下步骤:

步骤一:根据给定的粒度,将原始数据集的特征与目标特征分布分段,并根据公式计算离散后的特征分布。式中,[sin,si(n+1)]表示分段得到的任意一个特征区间,uj表示一个样本特征对应的值。从而得到向量形式的原始数据集特征分布与目标分布,分别记为{f1,f2…fk}和{t1,t2…tk},其中k表示区间总个数。

步骤二:生成原始数据集中随机采样的样本特征转移矩阵q。根据统计学原理,随机采样的样本特征跳转概率由样本集特征分布{f1,f2…fk}决定。因此可以得到特征转移矩阵qk×k如下:

步骤三:将采样过程转换为一组随机变量在有限状态内跳转的过程,结合离散后的目标分布{t1,t2…tk},根据马尔科夫链的细致平稳特性,计算与上述转移矩阵大小相同的转移接收矩阵ak×k。矩阵中任意一项aij满足式中qij表示步骤二中转移矩阵qk×k中的对应项。

步骤四:从原始数据集中随机抽取一组样本其中n应小于所需样本总数n的十分之一。将其作为采样初始阶段的样本特征状态,并将其加入新样本集s。此时计采样轮次r=0。

步骤五:随机抽取n个样本,构成第r轮采样的结果将其与上一轮到的结果进行比较对于下标相同的每个样本,如果则依据转移接收矩阵的概率接收这次转移。对于不被接收的转移,令

步骤六:保存本轮采样结果至新样本集s。并令轮次计数r自加一。

步骤七:重复步骤五至步骤六,直到新样本集s中的样本数目|s|大于等于n,即|s|≥n。

步骤八:汇总所有轮次的采样结果,输出新样本集s。此时,s中各个样本出现的频次即为它们在原有数据集中的权重。需要补充的是,s可直接作为样本数据集来被研究使用,各个数据的权重由新样本集中的样本直接体现。

实施例

预备:利用爬虫等方式获取的一万多个微博数据作为已有的给定数据集,根据国家统计局公布的人口普查数据作为目标数据。通过调整各个样本在新数据集s中的权值来优化样本集,使用基于用户id的随机抽样来选择样本用户u在最终样本集s中的权值。

步骤一、使用某个特征作为采样分类的依据并对特征进行适当的分段。举例来说,可以使用用户年龄特征作为采样的约束特征,将样本用户年龄根据其出生年份是否早于1980,1990,2000年以及其他,划分为4个区间[i1,i2,i3,i4],并计算相应描述特征分布的向量。

步骤二、以数据集的特征分布向量{f1,f2…fk}初始化样本特征转移矩阵qk×k的每一行。

步骤三、将采样过程转换为一组随机变量在有限状态内跳转的过程,结合离散后的目标分布{t1,t2…tk},根据马尔科夫链的细致平稳特性,计算与上述转移矩阵大小相同的转移接收矩阵ak×k。接受概率是一个[0,1]范围内的值,表示新一轮采集到的样本被接收加入新样本集s的概率。

步骤四、从原始数据集中随机抽取n个样本n为一个合适的较小值,应小于所需样本总数n的1/10。该组样本为第一轮采样时样本特征所处的状态,加入新数据集s。

步骤五、继续从原数据集中随机抽取等量的n个样本,构成下一轮采样的结果基于相同的下标比较本轮与上一轮采样的结果。如果则无条件接受新一轮的样本;否则,依据[0,1]的均匀分布随机产生一个值表示实际接受概率p。若说明接受样本特征由跳转到即接受本次采样。否则放弃该样本,保持上一轮的样本不变,即

步骤六:将调整后的本轮采样结果保存至新样本集s。同时使轮次计数值r自加一。

步骤七:重复步骤五至步骤六,直到新样本集s中的样本数目大于等于n,即|s|≥n。

步骤八:汇总所有轮次的采样结果。若|s|>n,则从s中随机抛弃n-|s|个样本。此时,s中各个样本出现的频次即为它们在原有数据集中的权重。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1