CN109684187B - 生成测试传感器数据的方法和设备 - Google Patents

生成测试传感器数据的方法和设备 Download PDF

Info

Publication number
CN109684187B
CN109684187B CN201710971359.7A CN201710971359A CN109684187B CN 109684187 B CN109684187 B CN 109684187B CN 201710971359 A CN201710971359 A CN 201710971359A CN 109684187 B CN109684187 B CN 109684187B
Authority
CN
China
Prior art keywords
data
sensor data
compensation
test
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710971359.7A
Other languages
English (en)
Other versions
CN109684187A (zh
Inventor
张沈斌
孙俊
皮冰锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to CN201710971359.7A priority Critical patent/CN109684187B/zh
Publication of CN109684187A publication Critical patent/CN109684187A/zh
Application granted granted Critical
Publication of CN109684187B publication Critical patent/CN109684187B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Testing Or Calibration Of Command Recording Devices (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Abstract

本发明公开了一种生成测试传感器数据的方法和设备。该方法包括:获得初始传感器数据;将初始传感器数据比例放大得到中间传感器数据,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程,所述中间传感器数据的取值范围被划分为若干取值间隔,存在至少一个其中没有中间传感器数据的空缺取值间隔;利用深度生成模型,生成用于补齐空缺取值间隔内的数据的补偿数据;以及根据中间传感器数据和补偿数据,生成测试传感器数据。

Description

生成测试传感器数据的方法和设备
技术领域
本发明一般地涉及信息处理技术领域。具体而言,本发明涉及一种能够生成用于测试物联网应用的传感器数据的方法和设备。
背景技术
近年来,物联网(Internet of Things,IoT)应用发展迅猛,越来越多的科技产品开始使用物联网技术,例如智能汽车,智能机器人和智能家居等。IoT应用由传感器和APP程序组成。传感器负责获取传感器数据,而APP程序使用这些传感器数据以实现各种有用的逻辑处理功能。可见,IoT应用的运行依赖于传感器数据。由于适合测试的传感器数据难以获得,所以IoT应用的测试较为困难。
在传统的方法中,测试者仅仅使用真实的传感器来获取传感器数据。但是在大多数情况下,真实传感器获取的数值范围很小,这些数值无法覆盖传感器的完整取值范围。例如,某种真实的温度计可以测量出的范围为-100到100度。但是事实上,若使用该温度计去测量气温,它大概仅能获取-10到40度范围的数据。对于其他的数值范围,该温度计在实际场景下无法获取。因此,无法通过这些真实传感器获取的数据对IoT应用进行充分的测试。
此外,传感器数据的传输会受到网络的影响。但是,通过模拟网络异常来测试IoT应用也较为困难。
为了解决上述问题,本发明提出了一种生成适合用于测试IoT应用的传感器数据的方法和模拟网络异常来测试IoT应用的方法。
发明内容
在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
本发明的目的是提出一种能够生成适合用于测试IoT应用的传感器数据的方法和设备以及能够模拟网络异常来测试IoT应用的方法和设备。
为了实现上述目的,根据本发明的一个方面,提供了一种生成测试传感器数据的方法,该方法包括:获得初始传感器数据;将初始传感器数据比例放大得到中间传感器数据,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程,所述中间传感器数据的取值范围被划分为若干取值间隔,存在至少一个其中没有中间传感器数据的空缺取值间隔;利用深度生成模型,生成用于补齐空缺取值间隔内的数据的补偿数据;以及根据中间传感器数据和补偿数据,生成测试传感器数据。
根据本发明的另一个方面,提供了一种生成测试传感器数据的设备,该设备包括:获得装置,被配置为:获得初始传感器数据;放大装置,被配置为:将初始传感器数据比例放大得到中间传感器数据,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程,所述中间传感器数据的取值范围被划分为若干取值间隔,存在至少一个其中没有中间传感器数据的空缺取值间隔;深度生成模型,被配置为:生成用于补齐空缺取值间隔内的数据的补偿数据;以及生成装置,被配置为:根据中间传感器数据和补偿数据,生成测试传感器数据。
根据本发明的再一个方面,提供了一种对物联网应用进行测试的方法,该方法包括:从预定函数中选择特定函数;根据用户设定计算特定函数的参数;利用具有所计算参数的特定函数,生成测试传感器数据;从所生成的测试传感器数据中抽取测试数据;以及利用所抽取的测试数据对物联网应用进行测试。
根据本发明的又一个方面,提供了一种对物联网应用进行测试的设备,该设备包括:选择单元,被配置为:从预定函数中选择特定函数;计算单元,被配置为:根据用户设定计算特定函数的参数;生成单元,被配置为:利用具有所计算参数的特定函数,生成测试传感器数据;抽取单元,被配置为:从所生成的测试传感器数据中抽取测试数据;以及测试单元,被配置为:利用所抽取的测试数据对物联网应用进行测试。
另外,根据本发明的另一方面,还提供了一种存储介质。所述存储介质包括机器可读的程序代码,当在信息处理设备上执行所述程序代码时,所述程序代码使得所述信息处理设备执行根据本发明的上述方法。
此外,根据本发明的再一方面,还提供了一种程序产品。所述程序产品包括机器可执行的指令,当在信息处理设备上执行所述指令时,所述指令使得所述信息处理设备执行根据本发明的上述方法。
附图说明
参照下面结合附图对本发明的实施例的说明,会更加容易地理解本发明的以上和其它目的、特点和优点。附图中的部件只是为了示出本发明的原理。在附图中,相同的或类似的技术特征或部件将采用相同或类似的附图标记来表示。附图中:
图1示出了根据本发明的实施例的生成测试传感器数据的方法的流程图;
图2示出了中间传感器数据的示例直方图;
图3示出了另一种生成测试传感器数据的方法;
图4示出了抽取测试数据的方法;
图5示出了利用测试传感器数据对物联网应用进行测试的方法;
图6示出了根据本发明的实施例的生成测试传感器数据的设备的结构方框图;
图7示出了根据本发明的实施例的对物联网应用进行测试的设备的结构方框图;以及
图8示出了可用于实施根据本发明的实施例的方法和设备的计算机的示意性框图。
具体实施方式
在下文中将结合附图对本发明的示范性实施例进行详细描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施方式的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与系统及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。此外,还应该了解,虽然开发工作有可能是非常复杂和费时的,但对得益于本公开内容的本领域技术人员来说,这种开发工作仅仅是例行的任务。
在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的装置结构和/或处理步骤,而省略了与本发明关系不大的其他细节。另外,还需要指出的是,在本发明的一个附图或一种实施方式中描述的元素和特征可以与一个或更多个其它附图或实施方式中示出的元素和特征相结合。
下面将参照图1描述根据本发明的实施例的生成测试传感器数据的方法的流程。
图1示出了根据本发明的实施例的生成测试传感器数据的方法的流程图。如图1所示,该方法包括如下步骤:获得初始传感器数据(步骤S1);将初始传感器数据比例放大得到中间传感器数据,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程,所述中间传感器数据的取值范围被划分为若干取值间隔,存在至少一个其中没有中间传感器数据的空缺取值间隔(步骤S2);利用深度生成模型,生成用于补齐空缺取值间隔内的数据的补偿数据(步骤S3);根据中间传感器数据和补偿数据,生成测试传感器数据(步骤S4)。
在步骤S1中,获得初始传感器数据。
初始传感器数据是生成测试传感器数据的基础,需要是已有的真实数据。可以从传感器历史数据中,获得初始传感器数据。显然,初始传感器数据的范围较小,不满足全面测试IoT应用的需要。本发明的目的就是将这样的初始传感器数据作为基础,生成能够全面测试IoT应用的测试传感器数据。
在步骤S2中,将初始传感器数据比例放大得到中间传感器数据。通过比例放大,能够扩大数据的取值范围,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程。
由于初始传感器数据的有限性,在比例放大后,必然存在中间传感器数据的稀疏。中间传感器数据的取值范围被划分为若干个预定的取值间隔,往往存在至少一个其中没有中间传感器数据的取值间隔,将这样的取值间隔称为空缺取值间隔。
图2示出了中间传感器数据的示例直方图。横轴表示取值间隔,纵轴表示数据的数目。虚线圈出的取值间隔没有数据,是空缺取值间隔。
比例放大的方式不做限制。作为一个示例,设初始传感器数据的最小值、中值、最大值分别为samplemin、mid、samplemax,放大率为rate、传感器量程为expandmax,初始传感器数据中的每一个数据为valueorigin,该数据比例放大后的结果为expandvalue
mid=(samplemma+samplemin)/2
rate=(expandmax-mid)/(sampiemax-mid)
expanavalue=(valueorigin-mid)*rate+mid
在步骤S3中,利用深度生成模型,生成用于补齐空缺取值间隔内的数据的补偿数据。
期望补偿数据与中间传感器数据的相似度高,以使得最终的测试传感器数据更接近真实。
因此,采用深度生成模型(Deep Generative Model,DGM)来实现补偿数据的生成。本领域已知的DGM模型由编码器,隐含层和解码器组成。编码器和解码器各是一个神经网络,隐含层有两个,每个隐含层有20个神经元。
将所述深度生成模型的代价函数定义为与输入DGM模型的数据构成的输入向量和从DGM模型输出的数据构成的输出向量之间的相似度有关。这样,DGM模型的输入和输出之间的相关度高。
另外,还可以将深度生成模型的代价函数进一步定义为输出尽可能接近高斯分布。
中间传感器数据、补偿数据都是多维向量,每一个维度对应一个传感器。中间传感器数据的每一维都有可能包括空缺取值间隔。
例如,中间传感器数据向量为(s1,s2,s3),三维分别对应于三个传感器的数据。假定维度s1的取值间隔中存在一个或更多个空缺取值间隔。首先使用DGM模型生成新的多维向量数据,使其能够覆盖s1维度的空缺取值间隔。然后再用同样的方法,生成更多的多维向量数据,覆盖其他维度的空缺取值间隔。最后,从所有生成的多维向量数据中抽取补偿数据。
步骤S3的具体子步骤包括:将空缺取值间隔(图2中虚线勾画出)两侧的第一预定数量(图2中为每侧2个)的取值间隔内的归一化的中间传感器数据输入到深度生成模型中,以得到第一补偿数据;如果第一补偿数据覆盖空缺取值间隔,则从第一补偿数据中抽取第二补偿数据,作为所生成的补偿数据;否则,将空缺取值间隔两侧的第二预定数量(例如每侧3个)的取值间隔内的归一化的中间传感器数据输入到深度生成模型中,以重新得到第一补偿数据,其中,第二预定数量大于第一预定数量。如果重新得到的第一补偿数据覆盖空缺取值间隔,则从第一补偿数据中抽取第二补偿数据,作为所生成的补偿数据;否则,继续扩大第二预定数量的大小,重新得到第一补偿数据。依次循环,直至重新得到的第一补偿数据覆盖空缺取值间隔并生成第二补偿数据。
另外,如果第一补偿数据没有覆盖空缺取值间隔并且相对于空缺取值间隔偏小,则可以在第二预定数量的取值间隔内增加空缺取值间隔右侧即比空缺取值间隔大的取值间隔的数据作为输入。例如,图2中左侧两个和右侧两个取值间隔的数据不足时,可以取左侧两个和右侧三个取值间隔的数据重新输入到DGM模型。反之亦然。
其中,所述抽取第二补偿数据包括:根据第一补偿数据中各个传感器的数据的数目,确定在第二补偿数据中各个传感器的数据的数目;按照所确定的数目,从第一补偿数据中,抽取出第二补偿数据。
上文提到,针对每个传感器(每个维度)中的空缺取值间隔,生成补偿数据。但是,针对多个维度中的多个空缺取值间隔,需要多次利用DGM模型生成多个多维数据,这些多维数据中的每一个针对一个维度的一个空缺取值间隔,因此,有可能针对某个维度的某个空缺取值间隔生成的多维数据除了覆盖该空缺取值间隔,还覆盖别的空缺取值间隔。那么,对于别的空缺取值间隔就会重复补充。例如,对于传感器1维度的空缺取值间隔,生成的数据是(s1,s2,s3),既补充了传感器1维度s1的空缺取值间隔,也覆盖了传感器2维度s2的空缺取值间隔。对于传感器2维度s2的空缺取值间隔就会存在重复补偿的问题。这样,最终生成的测试传感器数据就不符合初始传感器数据的分布。因此,对第一补偿数据进行抽取,得到第二补偿数据,用第二补偿数据进行补偿。
假定传感器1补偿数据大小(即针对传感器1的空缺取值间隔由DGM模型生成的所有数据的数量)为N1,传感器2补偿数据大小为N2,传感器3补偿数据大小为N3。传感器1补偿数据中覆盖传感器1的空缺取值间隔的数据大小为N1,覆盖传感器2、3的空缺取值间隔的数据大小分别为b1、c1。传感器2补偿数据中覆盖传感器1、2、3的空缺取值间隔的数据大小分别为a2、N2、c2。传感器3补偿数据中覆盖传感器1、2、3的空缺取值间隔的数据大小分别为a3、b3、N3。(N1+a2+a3)>N1,所以需要提取数据。设从N1、N2、N3中提取size1、size2、size3大小的数据。最终size1、size2、size3组成的数据中,有N1、N2、N3分别覆盖传感器1、2、3的空缺取值间隔。a1、a2、a3、b1、b2、b3、c1、c2、c3的值为预定,根据历史数据统计得到。
解方程组:
Figure BDA0001437589630000081
Figure BDA0001437589630000082
Figure BDA0001437589630000083
可得到size1、size2、size3。
在步骤S4中,根据中间传感器数据和补偿数据,生成测试传感器数据。
如上所述,补偿数据覆盖了空缺取值间隔,因此,中间传感器数据加上补偿数据,就得到了分布与初始传感器数据相符、没有空缺取值间隔、覆盖传感器量程的测试传感器数据。
DGM模型生成的多维传感器数据与原始样本数据的分布非常相似。DGM模型扩展了原始数据的取值范围,并且生成数据以填充空白的空缺取值间隔,所以使用DGM生成的测试传感器数据对物联网应用进行测试时,可以覆盖物联网应用的源代码的大部分分支,更容易发现物联网应用的bug。
下面介绍另一种生成测试传感器数据的方法。
如图3所示,在步骤S31中,从预定函数中选择特定函数。在步骤S32中,根据用户设定计算特定函数的参数;在步骤S33中,利用具有所计算参数的特定函数,生成测试传感器数据。
这种生成测试传感器数据的方法针对的情况是没有历史数据的情况。预先确定若干种经典的趋势函数(如线性函数,多项式函数和正弦函数等)让用户选择。用户选择的特定函数用来生成测试传感器数据。需要由用户设定需求,如最大值、最小值。然后根据用户设定来计算符合用户设定的特定函数的参数。这样利用具有所计算参数的特定函数能够生成符合用户需求的测试传感器数据。
此外,可以在所生成的测试传感器数据上加入高斯噪声。高斯噪声的均值为0,标准差为测试传感器数据的标准差。
在生成测试传感器数据之后,可利用该数据对物联网应用进行测试。由于数据量较大,可以从所生成的测试传感器数据中抽取测试数据,再利用所抽取的测试数据对物联网应用进行测试。
如图4所示,抽取测试数据包括:在步骤S41中,对测试传感器数据中同一时刻的多个传感器的数据进行聚类;在步骤S42中,针对聚类得到的每个簇,按照簇概率,从簇中抽取测试数据。
步骤S41中的聚类方法可以采用K均值方法,将测试传感器数据中同一时刻的多个传感器的数据聚类为K个类别,K可由用户指定。聚类之后,对每个簇进行采样,这样可以满足测试传感器数据的分布还能减少数据量。采样可根据簇概率。簇概率例如是每个簇的传感器数据的数量占同一时刻的多个传感器的数据的总数的比例。
设用户需要抽取的测试数据总数为extractDataCount,抽取簇i(i=1,…,K)中的数据数量为count(clusteri),抽取概率为probability(clusteri),簇i的数据数量为count(sample_clusteri),同一时刻的多个传感器的数据的总数为totalCount_sample。
count(clusteri)=extractDataCount*probability(clusteri)
Figure BDA0001437589630000091
在利用测试传感器数据对物联网应用进行测试时,可以采用如下方法。如图5所示,在步骤S51中,获得导致网络崩溃的最小时间间隔;在步骤S52中,向测试数据附加时间间隔,所附加的时间间隔高于最小时间间隔;其中,时间间隔能够被调整以模拟网络拥塞和/或丢包,并利用附加了时间间隔的测试数据,对物联网应用进行测试。
测试传感器数据包括多个传感器的多个时刻的数据,在测试时,多个传感器的同一时刻的数据被同时发送,即多个传感器的测试数据被并行发送给物联网应用以进行测试。
每个传感器的测试数据构成传感器数据序列,序列中相邻两个数据之间的时间间隔在正常情况下是固定的。序列的示例例如是:(data1,interval),(data2,interval)......(datan,interval)。其中,data1、data2、datan表示数据,interval表示固定的时间间隔。
在步骤S51中,获得导致网络崩溃的最小时间间隔。
具体地,用户需配置物联网应用的测试环境,如传感器数据的发送协议、发送数据个数、数据的时间间隔等。以固定时间间隔的测试数据序列对物联网应用进行测试。
检查每次传输数据的过程中是否出现数据丢失的情况。如果没有发生数据丢失,则缩短固定时间间隔,再次重复测试。如果发生了数据丢失,则获取此时的时间间隔作为数据之间的最小间隔,其代表了物联网应用的性能瓶颈,认为其是导致网络崩溃的最小时间间隔。
在步骤S52中,向测试数据附加时间间隔,所附加的时间间隔高于最小时间间隔;其中,时间间隔能够被调整以模拟网络拥塞和/或丢包,并利用附加了时间间隔的测试数据,对物联网应用进行测试。
此处的时间间隔是随机生成的,基于预定的分布,如高斯分布、线性分布等。即,为传感器数据序列的时间间隔生成随机化的时间间隔序列,序列的示例例如是:
(data1,interval1),(data2,interval2)......(datan,intervaln)。
其中,data1、data2、datan表示数据,interval1、interval2、intervaln表示随机化的符合预定分布的时间间隔。
时间间隔小于最小时间间隔或者先进先出的拥挤队列中存在数据时,网络拥塞发生,会出现丢包。测试时所附加的时间间隔高于最小时间间隔并且被随机化以进行测试。
综上所述,通过配置物联网应用的运行环境,能够对物联网应用进行性能测试。并且为了模拟网络波动和网络拥塞,生成时间间隔序列,使用所生成的时间间隔序列来对物联网应用进行测试可以考察物联网应用在各种网络环境下的鲁棒性。
下面,将参照图6描述根据本发明的实施例的生成测试传感器数据的设备。
图6示出了根据本发明的实施例的生成测试传感器数据的设备的结构方框图。如图6所示,根据本发明的生成测试传感器数据的设备600包括:获得装置61,被配置为:获得初始传感器数据;放大装置62,被配置为:将初始传感器数据比例放大得到中间传感器数据,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程,所述中间传感器数据的取值范围被划分为若干取值间隔,存在至少一个其中没有中间传感器数据的空缺取值间隔;深度生成模型63,被配置为:生成用于补齐空缺取值间隔内的数据的补偿数据;以及生成装置64,被配置为:根据中间传感器数据和补偿数据,生成测试传感器数据。
在一个实施例中,所述获得装置61被进一步配置为:从传感器历史数据中,获得初始传感器数据。
在一个实施例中,所述深度生成模型63的代价函数与输入模型的数据构成的输入向量和从模型输出的数据构成的输出向量之间的相似度有关。
在一个实施例中,所述深度生成模型63被进一步配置为:将空缺取值间隔两侧的第一预定数量的取值间隔内的归一化的中间传感器数据输入到深度生成模型63中,以得到第一补偿数据;如果第一补偿数据覆盖空缺取值间隔,则从第一补偿数据中抽取第二补偿数据,作为所生成的补偿数据;否则,将空缺取值间隔两侧的第二预定数量的取值间隔内的归一化的中间传感器数据输入到深度生成模型63中,以重新得到第一补偿数据,其中,第二预定数量大于第一预定数量。
在一个实施例中,所述深度生成模型63被进一步配置为:根据第一补偿数据中各个传感器的数据的数目,确定在第二补偿数据中各个传感器的数据的数目;按照所确定的数目,从第一补偿数据中,抽取出第二补偿数据。
在一个实施例中,生成测试传感器数据的设备600还包括:抽取装置,被配置为:从所生成的测试传感器数据中抽取测试数据;测试装置,被配置为:利用所抽取的测试数据对物联网应用进行测试。
由于在根据本发明的设备600中所包括的处理与上面描述的方法中所包括的各个步骤中的处理类似,因此为了简洁起见,在此省略这些处理的详细描述。
下面,将参照图7描述根据本发明的实施例的对物联网应用进行测试的设备。
图7示出了根据本发明的实施例的对物联网应用进行测试的设备的结构方框图。如图7所示,根据本发明的对物联网应用进行测试的设备700包括:选择单元71,被配置为:从预定函数中选择特定函数;计算单元72,被配置为:根据用户设定计算特定函数的参数;生成单元73,被配置为:利用具有所计算参数的特定函数,生成测试传感器数据;抽取单元74,被配置为:从所生成的测试传感器数据中抽取测试数据;以及测试单元75,被配置为:利用所抽取的测试数据对物联网应用进行测试。
在一个实施例中,所述抽取单元74被进一步配置为:对测试传感器数据中同一时刻的多个传感器的数据进行聚类;针对聚类得到的每个簇,按照簇概率,从簇中抽取测试数据。
在一个实施例中,设备700还包括:获得单元,被配置为:获得导致网络崩溃的最小时间间隔;附加单元,被配置为:向测试数据附加时间间隔,所附加的时间间隔高于最小时间间隔;其中,时间间隔能够被调整以模拟网络拥塞和/或丢包,并利用附加了时间间隔的测试数据,对物联网应用进行测试。
由于在根据本发明的设备700中所包括的处理与上面描述的方法中所包括的各个步骤中的处理类似,因此为了简洁起见,在此省略这些处理的详细描述。
根据本发明,还提供了一种记录介质,其上存储有程序,所述程序在被信息处理设备执行时,使得所述信息处理设备执行如下操作:获得初始传感器数据;将初始传感器数据比例放大得到中间传感器数据,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程,所述中间传感器数据的取值范围被划分为若干取值间隔,存在至少一个其中没有中间传感器数据的空缺取值间隔;利用深度生成模型,生成用于补齐空缺取值间隔内的数据的补偿数据;以及根据中间传感器数据和补偿数据,生成测试传感器数据。
此外,这里尚需指出的是,上述设备中各个组成装置、单元可以通过软件、固件、硬件或其组合的方式进行配置。配置可使用的具体手段或方式为本领域技术人员所熟知,在此不再赘述。在通过软件或固件实现的情况下,从存储介质或网络向具有专用硬件结构的计算机(例如图8所示的通用计算机800)安装构成该软件的程序,该计算机在安装有各种程序时,能够执行各种功能等。
图8示出了可用于实施根据本发明的实施例的方法和设备的计算机的示意性框图。
在图8中,中央处理单元(CPU)801根据只读存储器(ROM)802中存储的程序或从存储部分808加载到随机存取存储器(RAM)803的程序执行各种处理。在RAM 803中,还根据需要存储当CPU 801执行各种处理等等时所需的数据。CPU 801、ROM 802和RAM 803经由总线804彼此连接。输入/输出接口805也连接到总线804。
下述部件连接到输入/输出接口805:输入部分806(包括键盘、鼠标等等)、输出部分807(包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等,和扬声器等)、存储部分808(包括硬盘等)、通信部分809(包括网络接口卡比如LAN卡、调制解调器等)。通信部分809经由网络比如因特网执行通信处理。根据需要,驱动器810也可连接到输入/输出接口805。可拆卸介质811比如磁盘、光盘、磁光盘、半导体存储器等等可以根据需要被安装在驱动器810上,使得从中读出的计算机程序根据需要被安装到存储部分808中。
在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质811安装构成软件的程序。
本领域的技术人员应当理解,这种存储介质不局限于图8所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质811。可拆卸介质811的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)(注册商标))和半导体存储器。或者,存储介质可以是ROM 802、存储部分808中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。
本发明还提出一种存储有机器可读取的指令代码的程序产品。所述指令代码由机器读取并执行时,可执行上述根据本发明的实施例的方法。
相应地,用于承载上述存储有机器可读取的指令代码的程序产品的存储介质也包括在本发明的公开中。所述存储介质包括但不限于软盘、光盘、磁光盘、存储卡、存储棒等等。
在上面对本发明具体实施例的描述中,针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
此外,本发明的方法不限于按照说明书中描述的时间顺序来执行,也可以按照其他的时间顺序地、并行地或独立地执行。因此,本说明书中描述的方法的执行顺序不对本发明的技术范围构成限制。
尽管上面已经通过对本发明的具体实施例的描述对本发明进行了披露,但是,应该理解,上述的所有实施例和示例均是示例性的,而非限制性的。本领域的技术人员可在所附权利要求的精神和范围内设计对本发明的各种修改、改进或者等同物。这些修改、改进或者等同物也应当被认为包括在本发明的保护范围内。
附记
1.一种生成测试传感器数据的方法,包括:
获得初始传感器数据;
将初始传感器数据比例放大得到中间传感器数据,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程,所述中间传感器数据的取值范围被划分为若干取值间隔,存在至少一个其中没有中间传感器数据的空缺取值间隔;
利用深度生成模型,生成用于补齐空缺取值间隔内的数据的补偿数据;以及
根据中间传感器数据和补偿数据,生成测试传感器数据。
2.如附记1所述的方法,其中,所述获得初始传感器数据包括:
从传感器历史数据中,获得初始传感器数据。
3.如附记1所述的方法,其中,所述深度生成模型的代价函数与输入模型的数据构成的输入向量和从模型输出的数据构成的输出向量之间的相似度有关。
4.如附记1所述的方法,其中,所述生成补偿数据包括:
将空缺取值间隔两侧的第一预定数量的取值间隔内的归一化的中间传感器数据输入到深度生成模型中,以得到第一补偿数据;
如果第一补偿数据覆盖空缺取值间隔,则从第一补偿数据中抽取第二补偿数据,作为所生成的补偿数据;
否则,将空缺取值间隔两侧的第二预定数量的取值间隔内的归一化的中间传感器数据输入到深度生成模型中,以重新得到第一补偿数据,其中,第二预定数量大于第一预定数量。
5.如附记4所述的方法,其中,所述抽取第二补偿数据包括:
根据第一补偿数据中各个传感器的数据的数目,确定在第二补偿数据中各个传感器的数据的数目;
按照所确定的数目,从第一补偿数据中,抽取出第二补偿数据。
6.如附记1所述的方法,还包括:
从所生成的测试传感器数据中抽取测试数据;
利用所抽取的测试数据对物联网应用进行测试。
7.一种对物联网应用进行测试的方法,包括:
从预定函数中选择特定函数;
根据用户设定计算特定函数的参数;
利用具有所计算参数的特定函数,生成测试传感器数据;
从所生成的测试传感器数据中抽取测试数据;以及
利用所抽取的测试数据对物联网应用进行测试。
8.如附记6或7所述的方法,其中,所述抽取测试数据包括:
对测试传感器数据中同一时刻的多个传感器的数据进行聚类;
针对聚类得到的每个簇,按照簇概率,从簇中抽取测试数据。
9.如附记6或7所述的方法,还包括:
获得导致网络崩溃的最小时间间隔;
向测试数据附加时间间隔,所附加的时间间隔高于最小时间间隔;其中,时间间隔能够被调整以模拟网络拥塞和/或丢包,并利用附加了时间间隔的测试数据,对物联网应用进行测试。
10.一种生成测试传感器数据的设备,包括:
获得装置,被配置为:获得初始传感器数据;
放大装置,被配置为:将初始传感器数据比例放大得到中间传感器数据,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程,所述中间传感器数据的取值范围被划分为若干取值间隔,存在至少一个其中没有中间传感器数据的空缺取值间隔;
深度生成模型,被配置为:生成用于补齐空缺取值间隔内的数据的补偿数据;以及
生成装置,被配置为:根据中间传感器数据和补偿数据,生成测试传感器数据。
11.如附记10所述的设备,其中,所述获得装置被进一步配置为:从传感器历史数据中,获得初始传感器数据。
12.如附记10所述的设备,其中,所述深度生成模型的代价函数与输入模型的数据构成的输入向量和从模型输出的数据构成的输出向量之间的相似度有关。
13.如附记10所述的设备,其中,所述深度生成模型被进一步配置为:
将空缺取值间隔两侧的第一预定数量的取值间隔内的归一化的中间传感器数据输入到深度生成模型中,以得到第一补偿数据;
如果第一补偿数据覆盖空缺取值间隔,则从第一补偿数据中抽取第二补偿数据,作为所生成的补偿数据;
否则,将空缺取值间隔两侧的第二预定数量的取值间隔内的归一化的中间传感器数据输入到深度生成模型中,以重新得到第一补偿数据,其中,第二预定数量大于第一预定数量。
14.如附记13所述的设备,其中,所述深度生成模型被进一步配置为:
根据第一补偿数据中各个传感器的数据的数目,确定在第二补偿数据中各个传感器的数据的数目;
按照所确定的数目,从第一补偿数据中,抽取出第二补偿数据。
15.如附记10所述的设备,还包括:
抽取装置,被配置为:从所生成的测试传感器数据中抽取测试数据;
测试装置,被配置为:利用所抽取的测试数据对物联网应用进行测试。

Claims (8)

1.一种生成测试传感器数据的方法,包括:
获得初始传感器数据;
将初始传感器数据比例放大得到中间传感器数据,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程,所述中间传感器数据的取值范围被划分为若干取值间隔,存在至少一个其中没有中间传感器数据的空缺取值间隔;
利用深度生成模型,生成用于补齐空缺取值间隔内的数据的补偿数据;以及
根据中间传感器数据和补偿数据,生成测试传感器数据,
其中,生成所述补偿数据包括:
将空缺取值间隔两侧的第一预定数量的取值间隔内的归一化的中间传感器数据输入到深度生成模型中,以得到第一补偿数据;
如果第一补偿数据覆盖空缺取值间隔,则从第一补偿数据中抽取第二补偿数据,作为所生成的补偿数据;
否则,将空缺取值间隔两侧的第二预定数量的取值间隔内的归一化的中间传感器数据输入到深度生成模型中,以重新得到第一补偿数据,其中,第二预定数量大于第一预定数量。
2.如权利要求1所述的方法,其中,所述获得初始传感器数据包括:
从传感器历史数据中,获得初始传感器数据。
3.如权利要求1所述的方法,其中,所述深度生成模型的代价函数与输入模型的数据构成的输入向量和从模型输出的数据构成的输出向量之间的相似度有关。
4.如权利要求1所述的方法,其中,所述抽取第二补偿数据包括:
根据第一补偿数据中各个传感器的数据的数目,确定在第二补偿数据中各个传感器的数据的数目;
按照所确定的数目,从第一补偿数据中,抽取出第二补偿数据。
5.如权利要求1所述的方法,还包括:
从所生成的测试传感器数据中抽取测试数据;
利用所抽取的测试数据对物联网应用进行测试。
6.如权利要求5所述的方法,其中,所述抽取测试数据包括:
对所述测试传感器数据中同一时刻的多个传感器的数据进行聚类;
针对聚类得到的每个簇,按照簇概率,从簇中抽取测试数据。
7.如权利要求5所述的方法,还包括:
获得导致网络崩溃的最小时间间隔;
向测试数据附加时间间隔,所附加的时间间隔高于最小时间间隔;
其中,所述时间间隔能够被调整以模拟网络拥塞和/或丢包,并利用附加了时间间隔的测试数据,对所述物联网应用进行测试。
8.一种生成测试传感器数据的设备,包括:
获得装置,被配置为:获得初始传感器数据;
放大装置,被配置为:将初始传感器数据比例放大得到中间传感器数据,所述中间传感器数据的取值范围大于初始传感器数据的取值范围且小于或等于传感器的量程,所述中间传感器数据的取值范围被划分为若干取值间隔,存在至少一个其中没有中间传感器数据的空缺取值间隔;
深度生成模型,被配置为:生成用于补齐空缺取值间隔内的数据的补偿数据,其中,生成所述补偿数据包括:
将空缺取值间隔两侧的第一预定数量的取值间隔内的归一化的中间传感器数据输入到深度生成模型中,以得到第一补偿数据;
如果第一补偿数据覆盖空缺取值间隔,则从第一补偿数据中抽取第二补偿数据,作为所生成的补偿数据;
否则,将空缺取值间隔两侧的第二预定数量的取值间隔内的归一化的中间传感器数据输入到深度生成模型中,以重新得到第一补偿数据,其中,第二预定数量大于第一预定数量;以及
生成装置,被配置为:根据中间传感器数据和补偿数据,生成测试传感器数据。
CN201710971359.7A 2017-10-18 2017-10-18 生成测试传感器数据的方法和设备 Active CN109684187B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710971359.7A CN109684187B (zh) 2017-10-18 2017-10-18 生成测试传感器数据的方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710971359.7A CN109684187B (zh) 2017-10-18 2017-10-18 生成测试传感器数据的方法和设备

Publications (2)

Publication Number Publication Date
CN109684187A CN109684187A (zh) 2019-04-26
CN109684187B true CN109684187B (zh) 2022-02-18

Family

ID=66183314

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710971359.7A Active CN109684187B (zh) 2017-10-18 2017-10-18 生成测试传感器数据的方法和设备

Country Status (1)

Country Link
CN (1) CN109684187B (zh)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101917736B (zh) * 2010-08-17 2013-01-30 中国科学院计算技术研究所 传感器网络试验床系统及其测试方法
CN103188719B (zh) * 2013-02-28 2016-02-24 广州市弘宇科技有限公司 中高速传感器网络测试系统
CN104053164B (zh) * 2013-03-14 2017-08-18 深圳先进技术研究院 物联网网关测试系统和方法
CN103198015A (zh) * 2013-03-21 2013-07-10 中国人民解放军国防科学技术大学 一种基于使用概率的嵌入式软件可靠性测试数据生成方法
CN104252515B (zh) * 2013-12-04 2017-06-16 深圳市华傲数据技术有限公司 一种数据生成方法和装置
CN104104488A (zh) * 2014-07-15 2014-10-15 中国电子科技集团公司第四十一研究所 一种无线传感器网络协议一致性测试系统及方法
US9804947B2 (en) * 2015-11-20 2017-10-31 Sap Se Method and system for time-based data generation
US20170168885A1 (en) * 2015-12-09 2017-06-15 Hcl Technologies Limited System and Method for Testing Internet of Things Network
CN106095825A (zh) * 2016-05-31 2016-11-09 深圳市永兴元科技有限公司 数据生成方法和装置
CN106411637A (zh) * 2016-09-13 2017-02-15 四川长虹电器股份有限公司 物联网设备场景测试方法

Also Published As

Publication number Publication date
CN109684187A (zh) 2019-04-26

Similar Documents

Publication Publication Date Title
WO2018099473A1 (zh) 场景分析方法和系统、电子设备
CN108154222B (zh) 深度神经网络训练方法和系统、电子设备
JP6884104B2 (ja) 等高線マッピングから導き出される移植可能な等高線メトリックを使用する学習型等高線識別システム
US9830558B1 (en) Fast training of support vector data description using sampling
US8549478B2 (en) Graphical user interface input element identification
JP4627674B2 (ja) データ処理方法及びプログラム
JP6954003B2 (ja) データベースのための畳み込みニューラルネットワークモデルの決定装置及び決定方法
EP3963516B1 (en) Teaching gan (generative adversarial networks) to generate per-pixel annotation
CN113822440A (zh) 用于确定机器学习样本的特征重要性的方法及系统
CN108959474B (zh) 实体关系提取方法
JP6187977B2 (ja) 解析装置、解析方法及びプログラム
CN111144548A (zh) 抽油机井工况的识别方法及装置
JP6787981B2 (ja) 機械学習タスクを容易にするための最適なマザーウェーブレットを得るためのシステムおよび方法
CN108154153B (zh) 场景分析方法和系统、电子设备
US11164658B2 (en) Identifying salient features for instances of data
US11762730B2 (en) Selection of outlier-detection programs specific to dataset meta-features
KR102153161B1 (ko) 확률 그래프 기반의 서열 데이터 연관성 학습 방법 및 시스템
CN109684187B (zh) 生成测试传感器数据的方法和设备
CA3157288A1 (en) Systems and methods for identifying influential training data points
JPWO2019092868A1 (ja) 情報処理装置、情報処理方法及びプログラム
US11580196B2 (en) Storage system and storage control method
CN114819163A (zh) 量子生成对抗网络的训练方法、装置、介质及电子装置
US11177018B2 (en) Stable genes in comparative transcriptomics
KR102585613B1 (ko) 머신러닝에서 상관 관계 변화에 따른 공정한 모델 훈련 방법 및 시스템
JP7420148B2 (ja) 学習装置、学習方法及びプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant