模拟数据的生成方法、装置、智能终端及存储介质与流程

文档序号:30211640发布日期:2022-05-31 11:56阅读:232来源:国知局
模拟数据的生成方法、装置、智能终端及存储介质与流程

1.本发明涉及数据分析技术领域,尤其涉及的是一种模拟数据的生成方法、装置、智能终端及存储介质。


背景技术:

2.随着科学技术的发展,尤其是数据分析技术的发展,数据分析研究被广泛应用到各个领域中。数据分析研究过程中,需要使用大量真实的数据使得分析结果趋近实际结果,而实际使用过程中,真实数据的数量不足以满足数据分析的需求,因此数据分析研究过程中通常可以进行数据模拟,并根据获得的模拟数据进行分析。
3.现有技术中,通常根据真实的历史数据来进行数据模拟以生成历史数据对应的大量模拟数据。现有技术的问题在于,模拟数据的生成过程中需要采集获取具体的真实历史数据才能实现数据模拟,而无法对涉及隐私的真实数据进行保护。为保证数据隐私的情况下,需要对真实数据进行处理隐去真实数据本身的信息后再进行数据模拟,该过程需要耗费大量时间,不利于快速进行数据模拟,不利于提高模拟数据的生成效率。
4.因此,现有技术还有待改进和发展。


技术实现要素:

5.本发明的主要目的在于提供一种模拟数据的生成方法、装置、智能终端及存储介质,旨在解决现有技术中模拟数据的生成过程中需要采集获取具体的历史数据才能实现数据模拟,无法对涉及隐私的真实数据进行保护的问题。
6.为了实现上述目的,本发明第一方面提供一种模拟数据的生成方法,其中,上述模拟数据的生成方法包括:获取待模拟数据的统计特征,上述统计特征包括最大值、最小值和数据特征参数;根据预设的区间数目对数据取值范围进行划分并获得多个分箱,由各上述分箱的中间数值构建中间数值数组,根据上述中间数值数组生成对应的待优化概率数组,其中,上述分箱的数目不小于上述区间数目,上述数据取值范围是上述最小值和上述最大值构成的范围,上述待优化概率数组中的各个元素分别与对应分箱的概率值相对应;根据上述统计特征、上述中间数值数组以及上述待优化概率数组构建代价函数,当上述代价函数的值最小时获得最优的目标概率数组,其中,上述代价函数符合目标统计条件,上述目标统计条件由上述数据特征参数确定;根据上述目标概率数组和上述分箱生成模拟数据。
7.可选的,上述数据特征参数包括上述待模拟数据的分位数,上述根据预设的区间数目对数据取值范围进行划分并获得多个分箱,包括:根据上述分位数对上述数据取值范围进行划分并获得多个分位数区间;根据上述区间数目分别对每一个上述分位数区间进行等分,获得多个分箱,其中,一个上述分位数区间被划分为上述区间数目个分箱。
8.可选的,上述待模拟数据的数据特征参数还包括平均数和标准差,上述根据上述统计特征、上述中间数值数组以及上述待优化概率数组构建代价函数,当上述代价函数的值最小时获得最优的目标概率数组,包括:获取标准化平均数和标准化标准差,基于上述标准化平均数、上述标准化标准差、上述待模拟数据的平均数以及上述待模拟数据的标准差对上述中间数值数组中的每一个元素进行标准化,获得中间数值标准化数组;根据上述统计特征、上述中间数值标准化数组以及上述待优化概率数组构建代价函数,根据上述代价函数对上述待优化概率数组进行优化并获得目标概率数组。
9.可选的,上述中间数值标准化数组的第个元素的值是第一标准值与第二标准值的乘积,上述第一标准值是上述中间数值数组的第个元素减去上述待模拟数据的平均数然后再加上上述标准化平均数之后获得的值,上述第二标准值是上述标准化标准差除以上述待模拟数据的标准差之后获得的值。
10.可选的,上述代价函数由多个符合上述目标统计条件的约束子函数构成,上述目标统计条件由上述待模拟数据的统计特征确定,各上述约束子函数分别根据上述数据特征参数、上述中间数值标准化数组以及上述待优化概率数组生成。
11.可选的,上述约束子函数包括概率和约束子函数、平均数约束子函数以及方差约束子函数,上述根据上述统计特征、上述中间数值标准化数组以及上述待优化概率数组构建代价函数,根据上述代价函数对上述待优化概率数组进行优化并获得目标概率数组,包括:根据上述标准化平均数、上述标准化标准差、上述中间数值标准化数组以及上述待优化概率数组分别生成上述概率和约束子函数、上述平均数约束子函数以及上述方差约束子函数,并构建上述代价函数,其中,上述概率和约束子函数用于表示待优化概率和与目标概率值之间的差值,上述平均数约束子函数用于表示待优化平均数与上述标准化平均数之间的差值,上述方差约束子函数用于表示待优化方差与标准化方差之间的差值,一个上述待优化概率和是上述待优化概率数组中与一个分位数对应的所有元素所对应的概率值之和,一个目标概率值是该分位数对应的概率值,上述待优化平均数是根据上述待优化概率数组以及上述中间数值标准化数组计算获得的平均数,上述待优化方差是根据上述待优化概率数组以及上述中间数值标准化数组计算获得的方差,上述标准化方差是上述标准化标准差的平方;通过预设的数学优化算法,以上述代价函数的值最小为优化目标,对上述待优化概率数组进行优化,并获得目标概率数组。
12.可选的,上述待优化概率数组中的各个元素分别与对应分箱的概率值成指数函数关系。
13.可选的,上述根据上述目标概率数组和上述分箱生成模拟数据,包括:根据上述目标概率数组计算获取上述分箱对应的概率累计分布函数数组,上述概率累计分布函数数组中的第个元素是上述目标概率数组中前个元素对应的概率值的和;根据预设的分箱内样本分布类型、上述概率累计分布函数数组以及上述分箱生成上述待模拟数据对应的模拟数据。
14.可选的,上述预设的分箱内样本分布类型为均匀分布,上述根据预设的分箱内样本分布类型、上述概率累计分布函数数组以及上述分箱生成上述待模拟数据对应的模拟数据,包括:获取模拟数据生成次数,根据上述模拟数据生成次数执行模拟样本数据生成步骤,并将获得的所有样本数据作为上述模拟数据,其中,每一次执行的上述模拟样本数据生成步骤包括:从预设的概率范围中使用平均分布随机生成一个浮点数,获取上述概率累计分布函数数组中的目标元素,在上述目标元素对应的分箱中通过均匀分布生成一组随机样本数据,其中,上述目标元素的前一个元素小于上述浮点数且上述目标元素不小于上述浮点数。
15.本发明第二方面提供一种模拟数据的生成装置,其中,上述模拟数据的生成装置包括:统计特征获取模块,用于获取待模拟数据的统计特征,上述统计特征包括最大值、最小值和数据特征参数;统计特征处理模块,用于根据预设的区间数目对数据取值范围进行划分并获得多个分箱,由各上述分箱的中间数值构建中间数值数组,根据上述中间数值数组生成对应的待优化概率数组,其中,上述分箱的数目不小于上述区间数目,上述数据取值范围是上述最小值和上述最大值构成的范围,上述待优化概率数组中的各个元素分别与对应分箱的概率值相对应;概率优化模块,用于根据上述统计特征、上述中间数值数组以及上述待优化概率数组构建代价函数,当上述代价函数的值最小时获得最优的目标概率数组,其中,上述代价函数符合目标统计条件,上述目标统计条件由上述数据特征参数确定;数据生成模块,用于根据上述目标概率数组和上述分箱生成模拟数据。
16.本发明第三方面提供一种智能终端,上述智能终端包括存储器、处理器以及存储在上述存储器上并可在上述处理器上运行的模拟数据的生成程序,上述模拟数据的生成程序被上述处理器执行时实现任意一项上述模拟数据的生成方法的步骤。
17.本发明第四方面提供一种计算机可读存储介质,上述计算机可读存储介质上存储有模拟数据的生成程序,上述模拟数据的生成程序被处理器执行时实现任意一项上述模拟数据的生成方法的步骤。
18.由上可见,本发明方案中,获取待模拟数据的统计特征,上述统计特征包括最大值、最小值和数据特征参数;根据预设的区间数目对数据取值范围进行划分并获得多个分箱,由各上述分箱的中间数值构建中间数值数组,根据上述中间数值数组生成对应的待优化概率数组,其中,上述分箱的数目不小于上述区间数目,上述数据取值范围是上述最小值和上述最大值构成的范围,上述待优化概率数组中的各个元素分别与对应分箱的概率值相对应;根据上述统计特征、上述中间数值数组以及上述待优化概率数组构建代价函数,当上述代价函数的值最小时获得最优的目标概率数组,其中,上述代价函数符合目标统计条件,上述目标统计条件由上述数据特征参数确定;根据上述目标概率数组和上述分箱生成模拟数据。与现有技术中根据真实的历史数据来进行数据模拟以生成模拟数据的方案相比,本发明中无需采集真实的历史数据,而只需要获取历史数据(即待模拟数据)对应的统计特征,根据统计特征即可以实现数据模拟,并获得待模拟数据对应的模拟数据,无需采集原始
的真实历史数据,有利于保护真实历史数据;且统计特征的获取和处理更加简单快速,有利于减少数据采集和处理的时间,快速进行数据模拟,并提高模拟数据的生成效率。
附图说明
19.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
20.图1是本发明实施例提供的一种模拟数据的生成方法的流程示意图;图2是本发明实施例图1中步骤s200的具体流程示意图;图3是本发明实施例图1中步骤s300的具体流程示意图;图4是本发明实施例图3中步骤s302的具体流程示意图;图5是本发明实施例提供的一种模拟数据的生成装置的结构示意图;图6是本发明实施例提供的一种智能终端的内部结构原理框图。
具体实施方式
21.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况下,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
22.应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
23.还应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
24.还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
25.如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当

时”或“一旦”或“响应于确定”或“响应于检测到”。类似的,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述的条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0026]
下面结合本发明实施例的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0027]
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其它不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
[0028]
随着科学技术的发展,尤其是数据分析技术的发展,数据分析研究被广泛应用到各个领域中。数据分析研究过程中,需要使用大量实验数据,而实际使用过程中,能够通过采集获得的真实数据是有限的,因此数据分析研究过程中通常可以进行数据模拟,并根据获得的模拟数据进行分析。
[0029]
现有技术中,通常根据真实的历史数据来进行数据模拟以生成历史数据对应的大量模拟数据。现有技术的问题在于,模拟数据的生成过程中需要采集获取具体的历史数据才能实现数据模拟,需要采集的数据量较大,对历史数据进行采集和处理的过程需要耗费大量时间,不利于快速进行数据模拟,不利于提高模拟数据的生成效率。
[0030]
同时,在一种应用场景中,真实数据可能由于隐私限制而无法获得,数据分析过程中的相关算法需要使用伪数据或模拟样本数据进行验证和实验。但真实的历史数据无法获取,而现有技术中的数据模拟方法依赖于历史数据的输入,在此场景下,基于现有技术的方法无法实现数据模拟,不能实现模拟数据的生成,从而导致后续的数据分析过程无法实施。
[0031]
进一步的,在另一种应用场景中,获得对应的历史数据之后,直接使用常用的概率分布模型进行模拟并生成随机数据,例如使用正态分布、泊松分布、贝塔分布等。但实际使用过程中对应的真实数据并不一定使用常用的概率分布模型进行模拟,基于该方案难以构建通用的模型,需要根据具体的数据进行复杂的调整,影响模拟数据生成的效率,且选取的常用概率分布模型不一定能够与真实数据很好的匹配,影响模拟数据生成的效果。
[0032]
为了解决上述多个问题中的至少一个问题,本发明方案中,获取待模拟数据的统计特征,上述统计特征包括最大值、最小值和数据特征参数;根据预设的区间数目对数据取值范围进行划分并获得多个分箱,由各上述分箱的中间数值构建中间数值数组,根据上述中间数值数组生成对应的待优化概率数组,其中,上述分箱的数目不小于上述区间数目,上述数据取值范围是上述最小值和上述最大值构成的范围,上述待优化概率数组中的各个元素分别与对应分箱的概率值相对应;根据上述统计特征、上述中间数值数组以及上述待优化概率数组构建代价函数,当上述代价函数的值最小时获得最优的目标概率数组,其中,上述代价函数符合目标统计条件,上述目标统计条件由上述数据特征参数确定;根据上述目标概率数组和上述分箱生成模拟数据。
[0033]
与现有技术中根据真实的历史数据来进行数据模拟以生成模拟数据的方案相比,本发明中无需采集真实的历史数据,而只需要获取历史数据(即待模拟数据)对应的统计特征,根据统计特征即可以实现数据模拟,并获得待模拟数据对应的模拟数据,无需采集原始的真实历史数据,有利于实现对原始的真实历史数据的保护;且统计特征的获取和处理更加简单快速,有利于减少数据采集和处理的时间,快速进行数据模拟,并提高模拟数据的生成效率。
[0034]
同时,本发明中只需要根据真实数据(即待模拟数据)的统计特征即可实现模拟数据的生成,无需获取具体的真实数据。因此本发明中的模拟数据的生成方法可以很好地应用于隐私保护的场景,无需获取需要进行隐私保护的真实数据,只需要获取真实数据对应的统计特征就可以实现模拟数据的生成,可以在不泄露隐私的基础上实现模拟数据的生成。
[0035]
示例性方法如图1所示,本发明实施例提供一种模拟数据的生成方法,具体的,上述方法包括
如下步骤:步骤s100,获取待模拟数据的统计特征,上述统计特征包括最大值、最小值和数据特征参数。
[0036]
其中,上述待模拟数据是需要进行模拟的数据(如历史数据或真实数据),本实施例中,根据上述模拟数据的生成方法,对上述待模拟数据的分布情况进行模拟,生成的模拟数据与待模拟数据的分布情况相同(或相似),从而可以根据获得的大量模拟数据实现后续的数据分析过程。
[0037]
上述统计特征是待模拟数据的数学统计特征,可以包括待模拟数据的最大值和最小值,还可以包括平均数、标准差、分位数、数据变化斜率等数据特征参数,以使得获得的模拟数据的分布特征更接近上述待模拟数据。
[0038]
步骤s200,根据预设的区间数目对数据取值范围进行划分并获得多个分箱,由各上述分箱的中间数值构建中间数值数组,根据上述中间数值数组生成对应的待优化概率数组,其中,上述分箱的数目不小于上述区间数目,上述数据取值范围是上述最小值和上述最大值构成的范围,上述待优化概率数组中的各个元素分别与对应分箱的概率值相对应。
[0039]
其中,上述预设的区间数目是预先设置的对一个区间进行划分时需要划分的区间个数,可以根据实际需求预先设置和调整,在此不做具体限定。上述分箱是通过区间划分获得的小区间,需要说明的是,划分获得的分箱的数目是上述区间数目的整数倍。上述待优化概率数组中的各个元素根据实际需求进行初始化,或者直接设置为预设值。
[0040]
具体的,如果获得的统计特征中的数据特征参数不包括分位数,则直接将上述数据取值范围进行区间划分,获得区间数目个分箱,每一个分箱的区间长度相同。如果获得的统计特征中的数据特征参数包括分位数,则可以预先根据分位数对上述数据取值范围进行,然后分别对划分获得的每一个区间再等分为区间数目个分箱。如此,划分获得更多的小区间,使得后续优化时可调整的范围更大,提高模拟数据的生成效果。
[0041]
上述中间数值数组是各上述分箱的中间数值构建的数组,可以用于计算分箱对应的统计数据(例如可以用于计算所有分箱对应的平均数和标准差等),上述中间数值数组中的元素与上述分箱一一对应。
[0042]
本实施例中,上述数据特征参数包括上述待模拟数据的分位数,如图2所示,上述步骤s200具体包括如下步骤:步骤s201,根据分位数对上述数据取值范围进行划分并获得多个分位数区间。
[0043]
步骤s202,根据上述区间数目分别对每一个上述分位数区间进行等分,获得多个分箱,其中,一个上述分位数区间被划分为上述区间数目个分箱。
[0044]
其中,上述分位数可以是上述待模拟数据的二分位数、四分位数、八分位数等,本实施例中以四分位数为例,但不作为具体限定。本实施例中,根据最大值和最小值构建数据取值范围,并将分位数作为取值范围划分的条件,对数据取值范围进行分箱划分,获得多个分位数区间。对于形成的每个分位数区间再根据用户自定义的区间数目(可以记为)进行平均划分,划分成每一个分箱,同时可以记录每一个小区间的中间数值并组成中间数值数组(记为)。需要说明的是,区间数目的取值越大,划分获得的小区间越多,后续优化时可以调整的范围越大,优化结果更好,但对应的计算时间更长,因此可以根据实际需求调整
区间数目的取值,本实施例中,上述区间数目的取值优选为100。
[0045]
具体的,本实施例中,根据最大值、最小值和四分位数可以划分获得4个分位数区间,分别为0%-25%、25%-50%、50%-75%以及75%-100%的区间,其中,0%-25%代表最小值到下四分位数对应的区间,25%-50%代表下四分位数到中位数(即第2个四分位数)对应的区间,50%-75%代表中位数到上四分位数对应的区间,75%-100%代表上四分位数到最大值对应的区间。进一步的,根据区间数目=100将每一个区间分别等分为100个小区间(分箱)。在一种应用场景中,若最小值为0,25%的值(即下四分位数)的值为200,则0%-25%的区间划分获得的分箱包括:[(0,2),(2,4),(4,6),

,(198,200)]。同时,记录各个小区间的中间数值,即[1,3,5,

,199]。将所有4个分位数区间都如此处理以后,根据所有分箱的中间数值构成一个长度为的中间数值数组。
[0046]
需要说明的是,本实施例中计算并构建中间数值数组是为了统一后面代价函数和生成随机数时的模型,本实施例中根据需求设定样本分布类型为每一个分箱内部的数据是均匀分布的,分箱的平均数即为对应分箱的中间数值。
[0047]
步骤s300,根据上述统计特征、上述中间数值数组以及上述待优化概率数组构建代价函数,当上述代价函数的值最小时获得最优的目标概率数组,其中,上述代价函数符合目标统计条件,上述目标统计条件由上述数据特征参数确定。
[0048]
需要说明的是,真实数据(待模拟数据)中可能会存在异常值,尤其是最大值和最小值可能出现异常,从而导致对应的数据取值范围过大,影响程序计算过程的效率和准确性。例如,当最大值和最小值离平均数非常远的时候,限定的范围很大,从而导致中间数值数组中的部分元素很大,即参与计算的数值较大,影响程序的计算,计算代价函数时容易溢出(即计算代码中的数据类型容易溢出),代价函数所得值异常,影响数学优化结果,极端情况下无法进行优化。因此,本实施例中可以在构建对应的代价函数之前对中间数值数组中的各个元素进行一个标准化操作,降低其数值,避免程序出错。
[0049]
具体的,本实施例中,可以对上述待模拟数据的统计特征对应的数值进行判断,当统计特征对应的数值(例如最大值)的绝对值不小于预设数量级时,认为数值过大,执行标准化操作,然后根据标准化后获得的数组构建对应的代价函数并进行优化。上述预设数量级可以根据实际需求进行设置和调整,本实施例中以为例。
[0050]
本实施例中,上述待模拟数据的数据特征参数还包括平均数和标准差,如图3所示,上述步骤s300具体包括如下步骤:步骤s301,获取标准化平均数和标准化标准差,基于上述标准化平均数、上述标准化标准差、上述待模拟数据的平均数以及上述待模拟数据的标准差对上述中间数值数组中的每一个元素进行标准化,获得中间数值标准化数组。
[0051]
步骤s302,根据上述统计特征、上述中间数值标准化数组以及上述待优化概率数组构建代价函数,根据上述代价函数对上述待优化概率数组进行优化并获得目标概率数组。
[0052]
其中,上述标准化平均数和标准化标准差是进行标准化操作后期望对应的数组达到的平均数和标准差,可以由用户预设设置或实时输入,也可以根据实际需求随时进行调整,以达到更好的优化效果。需要说明的是,上述标准化平均数也可以与待模拟数据的平均
数相等,上述标准化标准差也可以与待模拟数据的标准差相等,此时代表标准化操作并不改变中间数值数组中各个元素的值。
[0053]
上述中间数值标准化数组的第个元素的值是第一标准值与第二标准值的乘积,上述第一标准值是上述中间数值数组的第个元素减去上述待模拟数据的平均数然后再加上上述标准化平均数之后获得的值,上述第二标准值是上述标准化标准差除以上述待模拟数据的标准差之后获得的值。
[0054]
具体的,本实施例中,根据如下公式(1)对上述中间数值数组进行标准化操作并获得中间数值标准化数组:其中,代表中间数值标准化数组中的第个元素,代表中间数值数组中的第个元素,代表上述待模拟数据的平均数,代表上述标准化平均数,代表上述待模拟数据的标准差,代表上述标准化标准差,为0到的整数,即各个数组的元素编号从0开始。本实施例中,优选为0,优选为10000,以方便计算,但不作为具体限定。需要说明的是,获得的中间数值标准化数组中各个元素对应的数量级小于预设数量级。
[0055]
需要说明的是,当统计特征对应的数值(例如最大值)不过大时,可以不进行上述标准化操作,直接将上述中间数值数组作为中间数值标准化数组,将待模拟数据的平均数作为标准化平均数,将待模拟数据的标准差作为标准化标准差,以降低数据计算所需的时间,提高模拟数据的生成效率。当不需要进行标准化操作时,可以令。
[0056]
本实施例中,上述代价函数由多个符合目标统计条件的约束子函数构成,上述目标统计条件由上述待模拟数据的统计特征确定,各上述约束子函数分别根据数据特征参数、上述中间数值数组以及上述待优化概率数组生成。
[0057]
其中,上述目标统计条件是符合统计特征以及实际情况的条件,例如,数据落入第一个四分位数之前的区间的概率为0.25,则最优概率数组中所有与第一个四分位数对应的元素所对应的概率值之和应该接近0.25。
[0058]
进一步的,上述约束子函数包括概率和约束子函数、平均数约束子函数以及方差约束子函数,如图4所示,上述步骤s302具体包括如下步骤:步骤s3021,根据上述标准化平均数、上述标准化标准差、上述中间数值标准化数组以及上述待优化概率数组分别生成概率和约束子函数、平均数约束子函数以及方差约束子函数,并构建上述代价函数。
[0059]
其中,上述概率和约束子函数用于表示待优化概率和与目标概率值之间的差值,上述平均数约束子函数用于表示待优化平均数与上述标准化平均数之间的差值,上述方差约束子函数用于表示待优化方差与标准化方差之间的差值,一个上述待优化概率和是上述
待优化概率数组中与一个分位数对应的所有元素所对应的概率值之和,一个目标概率值是该分位数对应的概率值,上述待优化平均数是根据上述待优化概率数组以及上述中间数值标准化数组计算获得的平均数,上述待优化方差是根据上述待优化概率数组以及上述中间数值标准化数组计算获得的方差,上述标准化方差是上述标准化标准差的平方。
[0060]
步骤s3022,通过预设的数学优化算法,以上述代价函数的值最小为优化目标,对上述待优化概率数组进行优化,并获得目标概率数组。
[0061]
其中,待优化概率数组中的第个元素与中间数值数组(或中间数值标准化数组)中的第个元素对应,也即与第个分箱对应,具体的,与第个分箱的概率值对应且成指数函数关系。其中,第个分箱的概率值是数据落入该分箱的概率。
[0062]
需要说明的是,在数学优化过程中需要有一个起始点,即需要对上述待优化概率数组进行初始化并作为后续数学优化的起始值。在一种应用场景中,可以为上述待优化概率数组随机赋值进行初始化(即上述概率数组中各个元素的初始值为一个随机值),或根据用户预先设置的概率值对上述待优化概率数组进行初始化。
[0063]
本实施例中,为了获得更好的优化效果,以四分位数区间再分别划分等份,每一个分箱对应的概率值初始化为。优选的,本实施例中,上述待优化概率数组中的各个元素分别与对应分箱的概率值成指数函数关系。
[0064]
具体的,概率是非负的,因此需要使用一个非负函数代表概率来松弛概率的非负约束,避免最终的优化结果对应的概率值为负数(即结果出错),且上述非负函数最好具有单调性以方便优化。本实施例中,使用指数代表模拟数据的数据分布中数据在某一个分箱的概率。本实施例中优选作为数据落在第个分箱对应的概率值的表达形式。且本实施例中以400个分箱为例进行说明,则每一个分箱的概率为1/400=0.0025,因此每一个分箱对应的的初始值为,其中是数学优化的直接对象,且对于待优化概率数组(记为)的第个元素有,其中代表第个元素的值,即待优化概率数组的每一个元素实际的值可以是不同的,但其表达形式都是的表达形式。
[0065]
上述待优化概率数组的长度和上述中间数值数组的长度相同,且上述待优化概率数组的初始值如下公式(2)所示:其中,是上述待优化概率数组中第个元素的初始值。需要说明的是,本实施例中数学优化对应的代价函数的结果是一个局部最小值,而不能保证是全局最小值,因此待优化概率数组的初始值不同对应的优化结果也不一定相同,即待优化概率数组的初始值可能对最终的优化结果产生影响,因此上述待优化概率数组的初始值也可以根据实际使用过程中经过多次优化测试后找到的一组效果较好的值来设定。而本实施例中,将上述待优化概率数组中各元素对应的初始值设置为,可以保证对应的初始概率能够满足上述概率和约束子函数的要求,从而减小优化过程中的计算量且提高优化效果。
[0066]
本实施例中,将上述待优化概率函数作为被优化对象,使用预设的数学优化算法,以代价函数对应的值最小为目标对待优化概率函数进行优化,找到一组概率数组使得代价函数的取值最小。优化时使用的各个分箱的数值为标准化操作之后的数值,即对应的数值。
[0067]
需要说明的是,上述预设的数学优化算法可以根据实际需求进行预先设置和调整,例如,可以设置为slsqp(sequential least squares programming optimization algorithm)算法、nelder-mead算法、bfgs算法等,还可以设置为其它算法,在此不作具体限定。
[0068]
本实施例中,根据对应的平均数、标准差和四分位数构建对应的代价函数,本实施例中的代价函数包括3个部分,具体的,,、和分别代表概率和约束子函数、平均数约束子函数以及方差约束子函。
[0069]
具体的,上述概率和约束子函数用于表示待优化概率和与目标概率值之间的差值(该差值应尽量贴近0),本实施例中,以上述分位数为四分位数为例进行说明,则概率数组(待优化概率数组或目标概率数组)所代表的概率和应该符合待模拟数据对应的统计特征,例如,概率数组的前个元素对应的概率值之和为0.25,前个元素对应的概率值之和为0.5,前个元素对应的概率值之和为0.75,所有元素对应的概率值之和为1。本实施例中,上述概率和约束子函数如下公式(3)所示:其中,代表前几个分位数区间对应的编号,具体的,第个区间是最小值与第个分位数形成的区间,本实施例中采用四分位数统计时,的取值为1、2、3、4,代表待优化概率数组中的第个元素,则代表该第个元素对应分箱的概率值,将待优化概率数组中元素对应的概率值求和获得待优化概率和,将分位数对应的概率和作为目标概率值(例如,上四分位数对应的概率和是上四分位数之前的区间对应的概率和,即0.25)。需要说明的是,本实施例中对待优化概率和与目标概率值的差值取平方值后作为上述概率和约束子函数,以避免负数带来的误判。
[0070]
优选的,本实施例中还为上述概率和约束子函数设置了权重值,对应的对于平均数约束子函数以及方差约束子函数也分别设置了权重值,设置的权重值用于体现各个子函数的重要程度。实际使用过程中,难以获得一个可以满足所有统计约束条件的概率数组,用户可以通过调整权重值来调整各个统计约束子函数对应的权重,一个约束子函数对应的权重越高,则最终优化结果会越贴近这个统计约束条件。需要说明的是,各个约束
子函数对应的权重值可以由用户预先设置或根据实际需求进行调整,也可以不设置权重值,即都设置为1。
[0071]
本实施例中,上述平均数约束子函数用于表示待优化平均数与上述标准化平均数之间的差值(该差值应尽量贴近0),具体的,根据待优化概率数组与中间数值标准化数组算出的平均数(即待优化平均数)应该尽量贴近上述标准化平均数。具体的,上述标准化平均数的计算方式和上述平均数约束子函数分别如下公式(4)和公式(5)所示:示:其中,为上述待优化平均数,代表中间数值标准化数组中的第个元素。为上述平均数约束子函数,为上述平均数约束子函数对应的权重值,本实施例中上述优选为0。需要说明的是,本实施例中对待优化平均数与上述标准化平均数之间的差值也取平方,以避免负数带来的误差。
[0072]
本实施例中,上述方差约束子函数用于表示待优化方差与标准化方差之间的差值(该差值应尽量贴近0),具体的,根据待优化概率数组与中间数值标准化数组算出的平均差应该尽量贴近标准化平均差,即根据待优化概率数组与中间数值标准化数组算出的方差(即待优化方差)应该尽量贴近标准化方差,上述标准化方差是标准化平均差的平方。具体的,上述待优化方差的计算公式和上述方差约束子函数分别如下公式(6)和公式(7)所示:(6)和公式(7)所示:其中,代表上述待优化方差,代表上述标准化平均差,则为标准化方差,代表上述方差约束子函数对应的权重值。需要说明的是,方差约束子函数中对待优化方差与标准化方差之间的差值取绝对值,以避免负数带来的误差。
[0073]
需要说明的是,实际应用过程中,还可以根据其它统计特征、数据特征参数或其它约束条件增加对应的子函数,构建更精准的代价函数,以提高模拟数据的准确性,此时用户
distribution function)数组,数组中的第个元素代表上述目标概率数组中前个元素对应的概率值的和,如下公式(11)所示:同时,由于概率是非负的,故数组是单调递增的,而在优化过程中获得的目标概率数组可能并不是完美符合各个约束的,导致获得的概率累计分布函数数组可能有错误,即概率累计分布函数数组中最后一个元素的值可能不为1,而实际使用过程中需要为1。因此,本实施例中还对获得的概率累计分布函数数组进行标准化,具体的,若不等于1,则对概率累计分布函数数组中的每一个元素进行标准化,获得标准化之后的概率累计分布函数数组(可以记为),使得等于1,需要说明的是,当不需要进行标准化时,,标准化过程如下公式(12)所示:其中,代表标准化后的概率累计分布函数数组中的第个元素的值。本实施例中,可以将标准化之后的概率累计分布函数数组作为模拟数据对应的数据分布模型,并据此生成符合要求的模拟数据。
[0081]
本实施例中,上述预设的分箱内样本分布类型为均匀分布,上述根据预设的分箱内样本分布类型、上述概率累计分布函数数组以及上述分箱生成上述待模拟数据对应的模拟数据,包括:获取模拟数据生成次数,根据上述模拟数据生成次数执行模拟样本数据生成步骤,并将获得的所有样本数据作为上述模拟数据,其中,每一次执行的上述模拟样本数据生成步骤包括:从预设的概率范围中使用平均分布随机生成一个浮点数,获取上述概率累计分布函数数组中的目标元素,在上述目标元素对应的分箱中通过均匀分布生成一组随机样本数据,其中,上述目标元素的前一个元素小于上述浮点数且上述目标元素不小于上述浮点数。
[0082]
其中,上述模拟数据生成次数和每一次生成一组随机样本数据时具体生成的随机样本的个数可以根据实际需求预先设定,也可以由用户实时输入或调整,在此不作具体限定。例如,需要生成一组十万个数据的数,每一次生成的随机样本数据的个数为1时,则重复十万次并获得对应的模拟数据,生成的模拟数据贴近给定的待模拟数据的统计特征。
[0083]
具体的,本实施例中,上述预设的概率范围是0到1的范围,从0-1中使用平均分布随机生成一个浮点数,代表待生成的随机数在分布中的位置。从第0号元素开始遍历数组,找到数组中的第v号元素,使得刚刚大于,第v号元素对应第v号分箱,找到该分箱,并根据该分箱的范围以及中间数值,通过均匀分布在该分箱对应的范围内生成随机样本数据。根据预设的模拟数据生成次数重复执行上述生成随机样本数据的步骤,获得一
组贴近给定的统计特征的模拟数据。
[0084]
需要说明的是,虽然每一个分箱的内部的数据是根据均匀分布生成的,但各个分箱对应的概率值是贴近给定的统计特征的,因此最终获得的模拟数据的也贴近待模拟数据的统计特征。如此,可以根据待模拟数据的统计特征,模拟任意数据分布并生成模拟数据。
[0085]
由上可见,本发明实施例提供的模拟数据的生成方法中,获取待模拟数据的统计特征,上述统计特征包括最大值、最小值和数据特征参数;根据预设的区间数目对数据取值范围进行划分并获得多个分箱,由各上述分箱的中间数值构建中间数值数组,根据上述中间数值数组生成对应的待优化概率数组,其中,上述分箱的数目不小于上述区间数目,上述数据取值范围是上述最小值和上述最大值构成的范围,上述待优化概率数组中的各个元素分别与对应分箱的概率值相对应;根据上述统计特征、上述中间数值数组以及上述待优化概率数组构建代价函数,当上述代价函数的值最小时获得最优的目标概率数组,其中,上述代价函数符合目标统计条件,上述目标统计条件由上述数据特征参数确定;根据上述目标概率数组和上述分箱生成模拟数据。
[0086]
与现有技术中根据真实的历史数据来进行数据模拟以生成模拟数据的方案相比,本发明中无需采集真实的历史数据,而只需要获取历史数据(即待模拟数据)对应的统计特征,根据统计特征即可以实现数据模拟,并获得待模拟数据对应的模拟数据,无需采集原始的真实历史数据,有利于保护真实历史数据,且统计特征的获取和处理更加简单快速,有利于减少数据采集和处理的时间,快速进行数据模拟,并提高模拟数据的生成效率。
[0087]
示例性设备如图5中所示,对应于上述模拟数据的生成方法,本发明实施例还提供一种模拟数据的生成装置,上述模拟数据的生成装置包括:统计特征获取模块510,用于获取待模拟数据的统计特征,上述统计特征包括最大值、最小值和数据特征参数。
[0088]
其中,上述待模拟数据是需要进行模拟的数据(如历史数据或真实数据),本实施例中,根据上述模拟数据的生成装置,对上述待模拟数据的分布情况进行模拟,生成的模拟数据与待模拟数据的分布情况相同(或相似),从而可以根据获得的大量模拟数据实现后续的数据分析过程。
[0089]
上述统计特征是待模拟数据的数学统计特征,可以包括待模拟数据的最大值和最小值,还可以包括平均数、标准差、分位数等数据特征参数,以使得获得的模拟数据的分布特征更接近上述待模拟数据。
[0090]
统计特征处理模块520,用于根据预设的区间数目对数据取值范围进行划分并获得多个分箱,由各上述分箱的中间数值构建中间数值数组,根据上述中间数值数组生成对应的待优化概率数组,其中,上述分箱的数目不小于上述区间数目,上述数据取值范围是上述最小值和上述最大值构成的范围,上述待优化概率数组中的各个元素分别与对应分箱的概率值相对应。
[0091]
其中,上述预设的区间数目是预先设置的对一个区间进行划分时需要划分的区间个数,可以根据实际需求预先设置和调整,在此不做具体限定。上述分箱是通过区间划分获得的小区间,需要说明的是,划分获得的分箱的数目是上述区间数目的整数倍。上述待优化概率数组中的各个元素根据实际需求进行初始化,或者直接设置为预设值。具体的,如果获
得的统计特征中的数据特征参数不包括分位数,则直接将上述数据取值范围进行区间划分,获得区间数目个分箱,每一个分箱的区间长度相同。如果获得的统计特征中的数据特征参数包括分位数,则可以预先根据分位数对上述数据取值范围进行,然后分别对划分获得的每一个区间再等分为区间数目个分箱。如此,划分获得更多的小区间,使得后续优化时可调整的范围更大,提高模拟数据的生成效果。
[0092]
上述中间数值数组是各上述分箱的中间数值构建的数组,可以用于计算分箱对应的统计数据(例如可以用于计算所有分箱对应的平均数和标准差等),上述中间数值数组中的元素与上述分箱一一对应。
[0093]
概率优化模块530,用于根据上述统计特征、上述中间数值数组以及上述待优化概率数组构建代价函数,当上述代价函数的值最小时获得最优的目标概率数组,其中,上述代价函数符合目标统计条件,上述目标统计条件由上述数据特征参数确定。
[0094]
需要说明的是,真实数据(待模拟数据)中可能会存在异常值,尤其是最大值和最小值可能出现异常,从而导致对应的数据取值范围过大,影响程序计算过程的效率和准确性。例如,当最大值和最小值离平均数非常远的时候,限定的范围很大,从而导致中间数值数组中的部分元素很大,即参与计算的数值较大,影响程序的计算,计算代价函数时容易溢出(即计算代码中的数据类型容易溢出),代价函数所得值异常,影响数学优化结果,极端情况下无法进行优化。因此,本实施例中可以在构建对应的代价函数之前对中间数值数组中的各个元素进行一个标准化操作,降低其数值,避免程序出错。
[0095]
进一步的,本实施例中,构建的代价函数包括概率和约束子函数、平均数约束子函数以及方差约束子函数,上述概率和约束子函数用于表示待优化概率和与目标概率值之间的差值,上述概率和约束子函数用于表示待优化概率和与目标概率值之间的差值,上述平均数约束子函数用于表示待优化平均数与上述标准化平均数之间的差值,上述方差约束子函数用于表示待优化方差与标准化方差之间的差值,一个上述待优化概率和是上述待优化概率数组中与一个分位数对应的所有元素所对应的概率值之和,一个目标概率值是该分位数对应的概率值,上述待优化平均数是根据上述待优化概率数组以及上述中间数值标准化数组计算获得的平均数,上述待优化方差是根据上述待优化概率数组以及上述中间数值标准化数组计算获得的方差,上述标准化方差是上述标准化标准差的平方。
[0096]
通过预设的数学优化算法,以上述代价函数的值最小为优化目标,对上述待优化概率数组进行优化,并获得目标概率数组。
[0097]
数据生成模块540,用于根据上述目标概率数组和上述分箱生成模拟数据。
[0098]
具体的,本实施例中,根据上述目标概率数组计算获取上述分箱对应的概率累计分布函数数组,上述概率累计分布函数数组中的第个元素是上述目标概率数组中前个元素对应的概率值的和;根据预设的分箱内样本分布类型、上述概率累计分布函数数组以及上述分箱生成上述待模拟数据对应的模拟数据。
[0099]
本实施例中,上述预设的分箱内样本分布类型为均匀分布,上述根据预设的分箱内样本分布类型、上述概率累计分布函数数组以及上述分箱生成上述待模拟数据对应的模拟数据,包括:获取模拟数据生成次数,根据上述模拟数据生成次数执行模拟样本数据生成步骤,并将获得的所有样本数据作为上述模拟数据,其中,每一次执行的上述模拟样本数据生成步骤包括:从预设的概率范围中使用平均分布随机生成一个浮点数,获取上述概率累
计分布函数数组中的目标元素,在上述目标元素对应的分箱中通过均匀分布生成一组随机样本数据,其中,上述目标元素的前一个元素小于上述浮点数且上述目标元素不小于上述浮点数。
[0100]
具体的,本实施例中,上述模拟数据的生成装置及其各模块的具体功能可以参照上述模拟数据的生成方法中的对应描述,在此不再赘述。
[0101]
需要说明的是,上述模拟数据的生成装置的各个模块的划分方式并不唯一,在此也不作为具体限定。
[0102]
基于上述实施例,本发明还提供了一种智能终端,其原理框图可以如图6所示。上述智能终端包括通过系统总线连接的处理器、存储器、网络接口以及显示屏。其中,该智能终端的处理器用于提供计算和控制能力。该智能终端的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和模拟数据的生成程序。该内存储器为非易失性存储介质中的操作系统和模拟数据的生成程序的运行提供环境。该智能终端的网络接口用于与外部的终端通过网络连接通信。该模拟数据的生成程序被处理器执行时实现上述任意一种模拟数据的生成方法的步骤。该智能终端的显示屏可以是液晶显示屏或者电子墨水显示屏。
[0103]
本领域技术人员可以理解,图6中示出的原理框图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的智能终端的限定,具体的智能终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0104]
在一个实施例中,提供了一种智能终端,上述智能终端包括存储器、处理器以及存储在上述存储器上并可在上述处理器上运行的模拟数据的生成程序,上述模拟数据的生成程序被上述处理器执行时进行以下操作指令:获取待模拟数据的统计特征,上述统计特征包括最大值、最小值和数据特征参数;根据预设的区间数目对数据取值范围进行划分并获得多个分箱,由各上述分箱的中间数值构建中间数值数组,根据上述中间数值数组生成对应的待优化概率数组,其中,上述分箱的数目不小于上述区间数目,上述数据取值范围是上述最小值和上述最大值构成的范围,上述待优化概率数组中的各个元素分别与对应分箱的概率值相对应;根据上述统计特征、上述中间数值数组以及上述待优化概率数组构建代价函数,当上述代价函数的值最小时获得最优的目标概率数组,其中,上述代价函数符合目标统计条件,上述目标统计条件由上述数据特征参数确定;根据上述目标概率数组和上述分箱生成模拟数据。
[0105]
本发明实施例还提供一种计算机可读存储介质,上述计算机可读存储介质上存储有模拟数据的生成程序,上述模拟数据的生成程序被处理器执行时实现本发明实施例提供的任意一种模拟数据的生成方法的步骤。
[0106]
综上所述,本发明可以带来如下有益效果:首先,本发明中无需采集真实的历史数据,而只需要获取历史数据(即待模拟数据)对应的统计特征,根据统计特征即可以实现数据模拟,并获得待模拟数据对应的模拟数据,无需采集原始的真实历史数据,而统计特征的获取和处理更加简单快速,有利于减少数据采集和处理的时间,快速进行数据模拟,并提高模拟数据的生成效率。其次,本发明中只需要根据真实数据(即待模拟数据)的统计特征即可实现模拟数据的生成,无需获取具体的真实数据。因此本发明中的模拟数据的生成方法
access memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减。
[0114]
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不是相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1