CN111581092A - 仿真测试数据的生成方法、计算机设备及存储介质 - Google Patents
仿真测试数据的生成方法、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111581092A CN111581092A CN202010377829.9A CN202010377829A CN111581092A CN 111581092 A CN111581092 A CN 111581092A CN 202010377829 A CN202010377829 A CN 202010377829A CN 111581092 A CN111581092 A CN 111581092A
- Authority
- CN
- China
- Prior art keywords
- dimension data
- data
- data set
- target
- classification
- 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.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 109
- 238000004088 simulation Methods 0.000 title claims abstract description 102
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000003860 storage Methods 0.000 title claims abstract description 16
- 239000011159 matrix material Substances 0.000 claims abstract description 67
- 238000009826 distribution Methods 0.000 claims description 60
- 239000013598 vector Substances 0.000 claims description 38
- 230000011218 segmentation Effects 0.000 claims description 19
- 238000012216 screening Methods 0.000 claims description 18
- 238000012545 processing Methods 0.000 claims description 11
- 238000001914 filtration Methods 0.000 claims description 4
- 238000004519 manufacturing process Methods 0.000 description 15
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 7
- 238000000926 separation method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 238000013075 data extraction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000000586 desensitisation Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G06F11/3664—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3668—Testing of software
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Evolutionary Computation (AREA)
- Probability & Statistics with Applications (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Monitoring And Testing Of Transmission In General (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明实施例公开了一种仿真测试数据的生成方法、计算机设备及存储介质。其中,方法包括:在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组;根据各特征分类子组确定正交分类矩阵,并从正交分类矩阵中获取仿真测试数据。本发明实施例的方案生成的仿真测试数据具备多样性、丰富性以及全面性。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种仿真测试数据的生成方法、计算机设备及存储介质。
背景技术
在软件测试领域,基于生产数据在准生产环境(仿真环境)中进行仿真测试是一种高效的测试手段,它可以快速发现测试环境中因数据单一或者场景简单未能发现的系统漏洞(bug),同时基于生产数据进行测试验证也更具备场景的真实性和有效性,发掘隐藏缺陷,因此,基于生产数据进行仿真测试对产品的质量保障具有重要的意义。
在实际的应用场景中,仿真测试除了需要搭建模拟产线环境的服务器、网络、磁盘、防火墙等部署仿真资源以外,还需生成仿真测试数据;其中,生成仿真测试数据是仿真测试中最核心、最困难的步骤。
现阶段,主要通过自动化的测试脚本按照一定的规则直接生成仿真测试数据;该方法的缺点在于:生成的仿真测试数据的质量完全依赖于脚本规则,与实际生产环境中的数据多样性存在较大差异。或者,从生产数据库中随机的或基于业务过滤规则等方式抽取仿真测试数据;该方法的缺点在于:无法保证抽取的仿真测试数据的多样性、存在不确定风险、片面性、鲁棒性差、影响测试的准确性和有效性等问题。
发明内容
本发明实施例提供一种仿真测试数据的生成方法、计算机设备及存储介质,以实现生成具备多样性、丰富性以及全面性的仿真测试数据。
第一方面,本发明实施例提供了一种仿真测试数据的生成方法,该方法包括:在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组;根据各所述特征分类子组确定正交分类矩阵,并从所述正交分类矩阵中获取仿真测试数据。
第二方面,本发明实施例还提供了一种计算机设备,包括处理器和存储器,所述存储器用于存储指令,当所述指令执行时使得所述处理器执行以下操作:在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组;根据各所述特征分类子组确定正交分类矩阵,并从所述正交分类矩阵中获取仿真测试数据。
第三方面,本本发明实施例还提供了一种计算机可读存储介质,存储介质用于存储指令,指令用于执行:在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组;根据各所述特征分类子组确定正交分类矩阵,并从所述正交分类矩阵中获取仿真测试数据。
本发明实施例通过在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组;根据各特征分类子组确定正交分类矩阵,并从正交分类矩阵中获取仿真测试数据,实现了生成具备多样性、丰富性以及全面性的仿真测试数据。
附图说明
图1是本发明实施例一中的一种仿真测试数据的生成方法的流程图;
图2是本发明实施例二中的一种仿真测试数据的生成方法的流程图;
图3是本发明实施例三中的一种仿真测试数据的生成方法的流程图;
图4是本发明实施例四中的一种仿真测试数据的生成方法的流程图;
图5是本发明实施例四中的一种维度选择器的算法流程图;
图6是本发明实施例四中的一种特征分桶器的算法流程图;
图7是本发明实施例四中的一种分桶矩阵生成器的算法流程图;
图8是本发明实施例四中的一种分桶矩阵取数器的算法流程图;
图9是本发明实施例五中的一种仿真测试数据的生成装置的结构示意图;
图10是本发明实施例六中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。
本文使用的术语“生产数据”为生产环境中软件系统的数据库数据,本文抽象为“原始数据集”。
本文使用的术语“仿真测试数据”为从生产数据中抽取得到的数据,不破坏数据的完整性(脱敏处理除外),用于仿真测试的数据准备。
本文使用的术语“维度数据组”为数据库中表结构的列(Column),一个Column中包括的所有数据即一个维度数据组。
本文使用的术语“特征分类子组”为对每个目标维度数据组进行特征分类(分桶)得到的分类(分桶)结果。
本文使用的术语“基尼系数”为一种衡量信息不确定性的方法,用于表征数据的纯度,介于0~1之间,数值越小,则表示数据越“单一”;数值越大,则表示数据越“混杂”,用以判定维度数据的“混沌度”。
本文使用的术语“KL散度”为一种衡量两个概率分布的匹配程度的指标,两个分布差异越大,KL散度越大。
本文使用的术语“TF-IDF”为一种信息检索与数据挖掘的常用加权技术,用以评估单个词对于语料库中某个文档的重要程度。
本文使用的术语“特征分桶”即特征分类,为通过机器学习算法对特征数据进行分类,一个分类即一个桶,一个维度则存在N个特征分桶。
本文使用的术语“分桶矩阵”为对特征分桶进行正交化,生成高维分桶空间,并将原始数据按照分桶填充进去,得到的高维分桶矩阵,分桶矩阵包含了完整的原始数据集信息。
为了便于理解,将本发明实施例的主要发明构思进行简述。
现有技术中,主要通过自动化的测试脚本按照一定的规则直接生成仿真测试数据;或者,从生产数据库中随机的或基于业务过滤规则等方式抽取仿真测试数据。
现有技术的方法,虽然可以获取到仿真测试数据,但是生成的仿真测试数据的质量完全依赖于脚本规则,与实际生产环境中的数据多样性存在较大差异,同时,也无法保证抽取的仿真测试数据的多样性、存在不确定风险、片面性、鲁棒性差、影响测试的准确性和有效性等问题。
发明人针对上述问题,考虑是否可以通过一种方法生成仿真测试数据,保证生成的仿真测试数据具备多样性、丰富性以及全面性等特点。
基于上述思考,发明人创造性的提出,通过在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组;根据各特征分类子组确定正交分类矩阵,并从正交分类矩阵中获取仿真测试数据,实现了生成具备多样性、丰富性以及全面性的仿真测试数据。
实施例一
图1为本发明实施例一提供的一种仿真测试数据的生成方法的流程图,本实施例可适用于通过生成数据而生成仿真测试数据的情况,该方法可以由仿真测试数据的生成装置执行,该装置可以通过软件和/或硬件的方式实现,并集成在计算机设备中。具体的,参考图1,该方法包括如下步骤:
步骤110、在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同。
其中,原始数据集可以为存储在数据库中的生产数据,需要说明的是,这些生产数据可以存储在数据库的核心数据表中。在本发明实施例中,数据表的每一列都是一个维度数据组。可以理解的是,每个数据表都可以由多个列组成,因此,原始数据集中可以包括多个维度数据组。
需要说明的是,原始数据集中,每个维度数据组的数据类型可以为连续值(数字型)、离散值(数字型)、字符串(文本型)、枚举型、时间戳或者随机值等类型。其中,同一维度数据组中的数据类型相同,即数据表中每一列存储的数据的数据类型相同。
其中,连续值和离线值均为数字型数据;枚举型则是有限集数据,如:状态码、业务类型或者布尔值等有限类别数据;字符串即文本数据,如:名称、描述、标题等长短文本数据;时间戳即时间类型的字段,如:操作时间、更新时间、发生时间等字段;随机值即无规律重复率极低的数据,如:UUID(Universally Unique Identifier,通用唯一识别码)、密码、编码等数据。
可选的,在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,可以包括:根据各维度数据组的数据类型,以及与数据类型匹配的筛选策略,在多个维度数据组中,确定出至少一个目标维度数据组。
具体的,可以遍历所有维度数据组,确定每个维度数据组的数据类型,并根据每个维度数据组的数据类型,以及与维度数据组的数据类型匹配的筛选策略,对多个维度数据组进行筛选,并保留符合筛选策略的多个维度数据组。
示例性的,若维度数据组的数据类型为字符型,可以根据字符型数据的筛选策略对该维度数据组进行筛选;若维度数据组的数据类型为数字型,可以根据数字型数据的筛选策略对该维度数据组进行筛选。
步骤120、对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组。
具体的,在确定出至少一个目标维度数据组之后,可以进一步的对各目标维度数据组进行特征分类,也可以叫做特征分桶,即对每个目标维度数据组包含的各个数据进行分类,从而得到与每个目标维度数据组分别对应的至少一个特征分类子组。
示例性的,对第一目标维度数据组进行特征分类,可以得到与第一目标维度数据组对应的2个、3个或者6个等特征分类子组,其中,第一目标维度数据组可以为至少一个目标维度数据组中的任意一个维度数据组。
可选的,对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组,可以包括:根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组。
示例性的,若目标维度数据组的数据类型为字符型,可以根据字符型数据的分类策略对该目标维度数据组进行特征分类,得到与其对应的至少一个分类子组;若目标维度数据组的数据类型为数字型,可以根据数字型数据的分类策略对该目标维度数据组进行特征分类,得到与其对应的至少一个特征分类子组。
步骤130、根据各特征分类子组确定正交分类矩阵,并从正交分类矩阵中获取仿真测试数据。
具体的,在得到与各目标维度数据组分别对应的至少一个特征分类子组支行,可以进一步的根据各特征分类子组确定正交分类矩阵,并从该正交分类矩阵中得到仿真测试数据。
可选的,根据各特征分类子组确定正交分类矩阵,可以包括:根据与每个目标维度数据组分别对应的各特征分类子组,构建与目标维度数据组分别对应的特征分组矩阵;将全部特征分组矩阵进行正交化处理,得到正交分类矩阵。
具体的,将各目标维度数据组的所有特征分类子组进行正交化处理,正交化的过程描述如下:
a.将分类矩阵w1和分类矩阵w2的特征进行正交操作,例如:矩阵w1包含特征分类子组{a1,a2,a3},矩阵w2包含特征分类子组{b1,b2},则正交后得到:w=ω1*ω2={a1b1,a1b2,a2b1,a2b2,a3b1,a3b2}。
c.基于正交分桶ω,依次对单笔原始数据进行判定,确定其所属的特征分类子组,并将其添加到该特征分类子组中,最终构建出一个超高维分类矩阵:
可选的,从正交分类矩阵中获取仿真测试数据,可以包括:遍历正交分类矩阵的网格,并计算与每个网格对应的网格数据量占比;如果与目标网格对应的网格数据量占比小于或者等于配置阈值,则在目标网格中随机抽取设定比例的数据,作为仿真测试数据;如果与目标网格对应的网格数据量占比大于配置阈值,则通过递归策略抽取目标网格中的数据,作为仿真测试数据。
其中,如上述w=ω1*ω2={a1b1,a1b2,a2b1,a2b2,a3b1,a3b2}公式中确定的a1b1,a1b2,a2b1,a2b2,a3b1以及a3b2皆可作为正交分类矩阵的一个网格,本发明实施例中对此不加以限制。
需要说明的是,本发明实施例中涉及到的配置阈值可以为任意数值,例如0.5、0.6或者0.05等数值,本发明实施例中对其不加以限制。同时,设定比例可以与每个网格对应的网格数据量占比相同,也可以不同,本发明实施例中对其不加以限制。
示例性的第一目标维度数据组的数据为分数,第二目标维度数据组的数据为年龄;若第一目标维度数据组的第一特征分类子组代表85-90分,第二目标维度数据组的数据的第一特征分类子组代表15-16岁,以及此次统计共包括200个人的分数以及年龄,且年龄在15-16岁且分数在85-90分的人数为2人,则与第一特征分类子组85-90分和第二分类子组15-16岁对应的网格数据量占比为2/200=0.01。若配置阈值为0.05,可以看出与该网格对应的网格数据量占比0.01小于配置阈值0.05,则可以在该网格中抽取设定比例,例如1%的数据,即从该网格中随机抽取一个数据,并将该数据添加至仿真测试数据中。
需要说明的是,递归策略属于一种优化策略,一般而言,由于已经采用了正交化操作,可以极大的避免单网格数据量占比过大的问题,但为了适应在某些特定场景下,数据极度倾斜导致单网格数据量过大的问题,例如:单日特定类别的商品交易量剧增导致的数据倾斜的问题。针对这类数据,为保证尽可能满足多样性采集的要求,可以将网格的数据当做“原始数据集”,递归调用本案的方法,递归进行数据抽取操作,最终抽取到网格中的最优仿真测试数据。
本实施例的技术方案,通过在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组;根据各特征分类子组确定正交分类矩阵,并从正交分类矩阵中获取仿真测试数据,可以生成具备多样性、丰富性以及全面性的仿真测试数据。
实施例二
图2是本发明实施例二中的一种仿真测试数据的生成方法的流程图,本实施例在上述实施例的基础上对本发明实施例进行细化,具体的,根据各维度数据组的数据类型,以及与数据类型匹配的筛选策略,在多个维度数据组中,确定出至少一个目标维度数据组,可以包括:如果当前处理的第一维度数据组的数据类型为字符型,则计算第一维度数据组中各个字符的概率分布;根据概率分布计算第一维度数据组的基尼系数;如果基尼系数处于预设置信区间内,则确定第一维度数据组为目标维度数据组。具体的,该方法具体包括如下步骤:
步骤210、根据各维度数据组的数据类型,以及与数据类型匹配的筛选策略,在多个维度数据组中,确定出至少一个目标维度数据组。
可选的,根据各维度数据组的数据类型,以及与数据类型匹配的筛选策略,在多个维度数据组中,确定出至少一个目标维度数据组,可以包括:如果当前处理的第一维度数据组的数据类型为字符型,则计算第一维度数据组中各个字符的概率分布;根据概率分布计算第一维度数据组的基尼系数;如果基尼系数处于预设置信区间内,则确定第一维度数据组为目标维度数据组。
其中,第一维度数据组可以为原始数据集中包括的多个维度数据组中的任意一个维度数据组,本发明实施例中对此不加以限制。
具体的,若确定第一维度数据组的数据类型为字符型,则计算该维度数据组中各个字符的概率分布pk,计算公式为:其中,ω为单个字符出现的次数,j为维度数据组中包括的字符个数,i为0-j任意一个数。示例性的,若维度数据组中包括100个字符,则j=99,i为0-99任意一个数,例如,30或者40等,本发明实施例中对其不加以限制。
进一步的,基于上述的概率分布Ρ,计算第一维度数据组的基尼系数Gini(P)。根据信息论的定义,基尼系数可以表征数据集的“混沌程度”,即“不纯度”,取值范围为[0,1]之间,Gini越小,则纯度越高、数据单一;反之,则纯度越低、数据杂乱。通过Gini系数可以判断当前维度的数据是否适合进行后续的分桶计算,即分类计算,判断的策略如下:
a.Gini(P)值小于第一设定阈值,则说明数据非常单一,随机选择即可满足多样性要求,无需分桶;b.Gini(P)值大于第二设定阈值,则说明数据非常混乱,各不相同,无法分桶,随机选择即可;c.Gini(P)值大于第一设定阈值且小于第二设定阈值,则说明数据分布存在一定的多样性,需通过分桶来区分
其中,第一设定阈值和第二设定阈值可以为任意数值,满足第一设定阈值小于第二设定阈值,例如,若第一设定阈值为0.4,则第二设定阈值可以为0.6或者0.8等数值,本发明实施例中对此不加以限制。需要说明的是,第一设定阈值与第二设定阈值组成的区间即可以为预设置信区间。
具体的,本发明实施例中可以通过如下公式计算Gini(P):
其中,Pk为样本点属于第k类的概率,即上述字符出现概率。
可选的,根据各维度数据组的数据类型,以及与数据类型匹配的筛选策略,在多个维度数据组中,筛选出至少一个目标维度数据组,可以包括:如果当前处理的第二维度数据组的数据类型为数字型或者枚举值,则直接将第二维度数据组确定为目标维度数据组;和/或如果当前处理的第三维度数据组的数据类型为随机值,则直接确定第三维度数据组不为目标维度数据组。
其中,第二维度数据组和第三维度数据组可以为原始数据集中包括的多个维度数据组中的任意一个维度数据组,本发明实施例中对此不加以限制。
步骤220、对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组。
步骤230、根据各特征分类子组确定正交分类矩阵,并从正交分类矩阵中获取仿真测试数据。
本实施例的方案,通过根据各维度数据组的数据类型以及与各数据类型匹配的筛选策略,在原始数据集中包括的多个维度数据组中,确定出了至少一个目标维度数据组,为后续生成样性、丰富性以及全面性的仿真测试数据提供依据。
实施例三
图3是本发明实施例三中的一种仿真测试数据的生成方法的流程图,本实施例在上述各实施例的基础上对本发明实施例进行细化,具体的,根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组,可以包括:如果确定当前处理的第一目标维度数据组的数据类型为字符型,则对第一目标维度数据组中包含的文本字符进行分词操作,得到多个分词;计算各个分词的词频-逆文件频率值,获取大于第一设定阈值的目标词频-逆文件频率值对应的分词添加至关键词词集中;计算关键词词集中各个分词的词向量,并根据词向量对关键词词集进行聚类,并将聚类得到的聚类结果作为特征分类子组。具体的,参考图3,该方法具体包括如下步骤:
步骤310、在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同。
步骤320、根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组。
可选的,根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组,可以包括:如果确定当前处理的第一目标维度数据组的数据类型为字符型,则对第一目标维度数据组中包含的文本字符进行分词操作,得到多个分词;计算各个分词的词频-逆文件频率值,获取大于第一设定阈值的目标词频-逆文件频率值对应的分词添加至关键词词集中;计算关键词词集中各个分词的词向量,并根据词向量对关键词词集进行聚类,并将聚类得到的聚类结果作为特征分类子组。
具体的,如果确定当前处理的第一目标维度数据组的数据类型为字符型,则可以通过自然语言处理技术(Natural Language Processing,NLP)对第一目标维度数据组中的文本字符进行分词操作。需要说明的是,如果第一目标维度数据组中的文本字符为中文字符,则可以使用Jieba、SnowNLP等分词工具库对其进行分词操作;如果第一目标维度数据组中的文本字符为英文字符,则可以使用NLTK、SpaCy等分词工具库对其进行分词操作。
进一步的,构建词袋模型,将第一目标维度数据组中各单条数据进行X向量化。在本发明实施例的一个具体例子中,可以通过词频-逆文件频率(term frequency–inversedocument frequency,TF-IDF)模型构建词袋向量模型,具体的,计算各个分词的词频-逆文件频率值,确定关键词词集的过程如下:
(2)IDF:逆向文件频率,表征词条在目标维度数据组中的权重,包含分词t的目标维度数据组越少,IDF越大,则说明分词越重要,区分度越高。其计算公式为:其中:n表示目标维度数据组中分词的总数,k表示目标维度数据组中包含本关键词的数目。
(3)TF-IDF:计算词频-逆文件频率,得到单个分词在目标维度数据组中的重要性得分。计算公式为:TF-IDF(w)=TF*IDF;
(4)循环遍历计算第一维度数据组中所有的分词的TF-IDF值,并倒序(从大到小)排序,获取TOP5的词条,作为本维度数据组的关键词列表,并将关键词添加到关键词词集ω:其中,ω={keyword1,keyword2,keyword3,...,keywordj}。
可选的,计算关键词词集中各个分词的词向量,并根据词向量对关键词词集进行聚类,包括:将关键词词集中的目标分词进行独热编码,得到述目标分词的词向量;分别计算目标分词的词向量与关键词词集中第一分词的词向量的余弦相似度;如果余弦相似度大于设定阈值,则目标分词与第一分词为同一类别的分词。
具体的,将上述确定的关键词词集进行独热编码(one-hot-encoding),其中独热编码的“分类变量”即为上述关键词词集ω,如此得到目标维度数据组关键词特征向量X,其中X表示单个分词对应的关键词向量:
进一步的,根据关键词向量对关键词词集进行聚类,并将聚类得到的聚类结果作为特征分类子组。
在本发明实施例的一个具体例子中,可以通过Single-pass算法对关键词词集进行聚类,聚类过程如下:
(1)以第一个关键词向量χ0为种子,建立一个主题;
(2)计算χ与已有的特征分类子组的余弦相似度θ;
(3)找出与χ具有最大相似度的已有的关键词向量;
(4)如果θ>=λ,则划归到当前已有的特征分类子组中;如果θ<λ,则创建新的特征分类子组,同时将文本添加到新创建的特征分类子组中;其中,λ即为上述设计到的设定阈值,其可以为任意数值,例如0.9或者0.95等数值,本发明实施例中对其不加以限制。
(5)单个关键词聚类结束,执行下一个关键词聚类;
(6)最终,得到所有文本字符的特征分类子组,即特征分类或者特征分桶。
可选的,若确定当前处理的第一目标维度数据组的数据类型为枚举型,由于枚举型数据的类别是有限集合,且为固定值,则可以直接按照枚举类别对第一目标维度数据组进行特征分类,里如:状态码字段:成功、失败、处理中,则直接分成3个类别即可。若确定当前处理的第一目标维度数据组的数据类型为时间戳型,由于时间戳型数据可以转化为小时数,同样也可以抽象为类别有限集合,因此,其处理方法和枚举型一致。
步骤330、根据各特征分类子组确定正交分类矩阵,并从正交分类矩阵中获取仿真测试数据。
本实施例的方案,如果确定当前处理的第一目标维度数据组的数据类型为字符型,则对第一目标维度数据组中包含的文本字符进行分词操作,得到多个分词;计算各个分词的词频-逆文件频率值,获取大于第一设定阈值的目标词频-逆文件频率值对应的分词添加至关键词词集中;计算关键词词集中各个分词的词向量,并根据词向量对关键词词集进行聚类,并将聚类得到的聚类结果作为特征分类子组,实现了对数据类型为文本字符的目标维度数据组进行特征分类,为后续生成样性、丰富性以及全面性的仿真测试数据提供依据。
在上述技术方案的基础上,根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组,还可以包括:如果确定当前处理的第二目标维度数据组的数据类型为数字型,则检测第二目标维度数据组的数据分布;根据数据分布选择等距分箱或者等频分箱对第二目标维度数据组包含的数据进行分类,并将分类结果作为特征分类子组。
具体的,可以通过KL散度检测第二目标维度数据组的数据分布情况,一般的数据分布有:正态分布、伯努利分布、平均分布、指数分布等,本发明实施例中通过KL散度检测当前维度数据组与上述4种数据分布的相似度,选择最相似的分布,然后基于数据分布,选择特定的分类算法,进行维度数据组的分类操作。具体的,KL散度是一种衡量两个概率分布的匹配程度的指标,两个分布差异越大,KL散度越大,两个分布完全一致,则DKL(p||q)=0。通过KL散度计算当前维度数据组的分布与上述4种分布的相似度,选择最小的DKL,即得到当前数据的分布状况Μ,KL散度计算公式为:其中,p(x)是目标分布,q(x)是当前待检测维度数据组的分布。
根据数据分布Μ选择特定的分箱算法对数据进行分箱操作。为了满足数据多样性的要求,分箱策略如下:如果为态分布、伯努利分布或者平均分布,则使用等距分箱对第二目标维度数据组进行数据分类操作,并将分类结果作为特征分类子组;如果为指数分布,则使用等频分箱对第二目标维度数据组进行数据分类操作,并将分类结果作为特征分类子组。
这样设置的好处在于,实现了对数据类型为数字型的目标维度数据组进行特征分类,为后续生成样性、丰富性以及全面性的仿真测试数据提供依据。
实施例四
图4是本发明实施例四中的一种仿真测试数据的生成方法的流程图,本实施例在上述各实施例的基础上,对本发明实施例进行解释。具体的,参考图4,该方法具体包括:
步骤410、将数据库(DB)中一张表(Table)的数据抽象成一个“原始数据集”,将表中的一个列“Column”抽象成一个“维度”;需要说明的是,下文中涉及到的“维度”即为上述各实施例中涉及到的各维度数据组,下文中涉及到的“分桶”即为上述各实施例中涉及到的分类。
步骤420、依次遍历“原始数据集”的各个“维度”数据,并结合“维度配置”判定该维度是否需要参与后续的分桶处理,如果在“维度配置”列表中,则不参与处理,直接返回,遍历下一个维度;否则,获取该维度的数据,作为“单维数据集”,执行下一步。
步骤430、通过“维度选择器”计算“单维数据集”的基尼系数,根据预设的置信度区间,判定是否在预设的置信度区间内;若是,则选中;否则,丢弃。
步骤440、对选中的“单维数据集”进行特征变换,生成“特征数据”,然后对特征数据进行“数据分布”检测,基于检测的数据分布结果,差异化选择“分箱算法”,进行特征分桶操作,即得到单维度数据的“特征分桶”,并将特征分桶ω添加到特征分桶集w中。检查维度遍历是否结束,如果未结束,则循环下一维度;否则,执行下一步。
步骤450、将特征分桶集w中的特征分桶进行正交化,即得到了所有维度的正交分桶矩阵。
步骤460、根据相关的取数策略,从分桶矩阵w的单元格中进行抽数,最终得到“仿真测试数据集”。
为了更好地理解本发明实施例,图5是本发明实施例四中的一种维度选择器的算法流程图,参考图5,其具体包括如下步骤:
步骤510、根据Config参数配置对单维数据集的数据类型进行判定。
步骤520、若判定单维数据集的数据类型为连续值、离散值或者枚举值,则直接命中(选中)该维度数据集。
步骤530、若判定单维数据集的数据类型为字符型,即字符文本,则进一步的计算文本出现的概率,并根据文本出现的概率计算基尼系数,从而对该单维数据集的混沌度进行判定。若计算得到的基尼系数在预设的置信区间内,则命中该维度数据集;否则,对其进行舍弃,不对其进行后续处理。
步骤540、若判定单维数据集的数据类型为随机值,则对其进行舍弃,不对其进行后续处理。
为了更好地理解本发明实施例,图6是本发明实施例四中的一种特征分桶器的算法流程图,参考图6,其具体包括如下步骤:
步骤610、根据Config参数配置对上述维度选择器确定的至少一个单维度数据集的数据类型进行判定。
步骤620、若判定单维数据集的数据类型为枚举型,则直接根据枚举特征对该单维数据集进行特征分桶。
步骤630、若判定单维数据集的数据类型为数字型,则根据KL散度确定该单维度数据集服从的数据分布,其中,数据分布可以为正态分布、伯努利分布、平均分布或者指数分布。进一步的,根据单维度数据集服从的数据分布进行分箱选择,若单维度数据集服从正态分布、伯努利分布或者平均分布则通过等距分箱对该单维度数据集进行数据分桶;若单维度数据集服从指数分布,则通过等频分箱对该单维度数据集进行数据分桶。
步骤640、若判定单维数据集的数据类型为字符型,则通过NLP对该单维度数据集内的数据进行分词,并计算TF-IDF,确定关键词词集以及与关键词词集对应的词向量;最后,对文本进行聚类,从而实现对该单维度数据集的特征分桶。
为了更好地理解本发明实施例,图7是本发明实施例四中的一种分桶矩阵生成器的算法流程图,参考图7,其具体包括如下步骤:
步骤710、通过特征分桶器对每个单维度数据集进行特征分桶之后,将所有的“特征分桶”k(i)依次添加到“特征分桶集”K={k0,k1,k2,...,k(j)}中,其中,i和j可以为任意一个正整数。
步骤720、将所有维度数据集的“特征分桶”进行正交化操作。
步骤730、得到分桶矩阵。
为了更好地理解本发明实施例,图8是本发明实施例四中的一种分桶矩阵取数器的算法流程图,参考图8,其具体包括如下步骤:
步骤810、遍历分桶矩阵网格。
步骤820、计算网格占比。
步骤830、判断网格占比是否大于阈值。
步骤831、若是,通过递归策略在单网格中进行仿真测试数据抽取操作;
步骤832、若否,通过占比策略在单网格中进行仿真测试数据抽取操作。
步骤840、是否遍历所有网格。若是,获取到仿真测试数据集;若否,继续遍历网格。
在上述各例子中,将生产数据抽象为原始数据集,然后根据系统配置,直接将一些无效的维度排除在外,接着依次对各个待分桶维度数据计算“基尼系数”,并根据设定的“置信度”来判定该维度数据的“混沌度”,一旦满足分桶要求,则根据不同的数据类型,进行特征变换、数据分布检测、特征分箱、聚类等操作,完成特征数据分桶,并将特征分桶添加到特征分桶集中,接着对特征分桶集正交化,构建一个高维特征分桶,最后,通过相关的取数策略,实现仿真测试数据的抽取。
实施例五
图9是本发明实施例五中的一种仿真测试数据的生成装置的结构示意图,该装置可以执行上述各实施例中涉及到的仿真测试数据的生成方法,该装置可以通过软件和/或硬件的方式实现,具体的,该装置包括:目标维度数据组确定模块910、特征分类模块920和仿真测试数据获取模块930。
其中,目标维度数据组确定模块910,用于在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;
特征分类模块920,用于对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组;
仿真测试数据获取模块930,用于根据各特征分类子组确定正交分类矩阵,并从正交分类矩阵中获取仿真测试数据。
本实施例的方案,通过目标维度数据组确定模块在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;通过特征分类模块对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组;通过仿真测试数据获取模块根据各特征分类子组确定正交分类矩阵,并从正交分类矩阵中获取仿真测试数据,生成的仿真测试数据具备多样性、丰富性以及全面性。
可选的,目标维度数据组确定模块910,还可以具体用于根据各维度数据组的数据类型,以及与数据类型匹配的筛选策略,在多个维度数据组中,确定出至少一个目标维度数据组。
可选的,目标维度数据组确定模块910,包括:第一维度数据组确定子模块,用于如果当前处理的第一维度数据组的数据类型为字符型,则计算第一维度数据组中各个字符的概率分布;根据概率分布计算第一维度数据组的基尼系数;如果基尼系数处于预设置信区间内,则确定第一维度数据组为目标维度数据组。
可选的,目标维度数据组确定模块910,还可以包括:第二维度数据组确定子模块和第三维度数据组确定子模块;其中,第二维度数据组确定子模块,用于如果当前处理的第二维度数据组的数据类型为数字型或者枚举值,则直接将第二维度数据组确定为目标维度数据组;第三维度数据组确定子模块,用于如果当前处理的第三维度数据组的数据类型为随机值,则直接确定第三维度数据组不为目标维度数据组。
可选的,特征分类模块920,还可以具体用于根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组。
可选的,特征分类模块920,包括:第一目标维度数据组分类子模块,用于如果确定当前处理的第一目标维度数据组的数据类型为字符型,则对第一目标维度数据组中包含的文本字符进行分词操作,得到多个分词;计算各个分词的词频-逆文件频率值,获取大于第一设定阈值的目标词频-逆文件频率值对应的分词添加至关键词词集中;计算关键词词集中各个分词的词向量,并根据词向量对关键词词集进行聚类,并将聚类得到的聚类结果作为特征分类子组。
可选的,第一目标维度数据组分类子模块,还可以具体用于将关键词词集中的目标分词进行独热编码,得到述目标分词的词向量;分别计算目标分词的词向量与关键词词集中第一分词的词向量的余弦相似度;如果余弦相似度大于设定阈值,则目标分词与第一分词为同一类别的分词。
可选的,特征分类模块920,还可以包括:第二目标维度数据组分类子模块,用于如果确定当前处理的第二目标维度数据组的数据类型为数字型,则检测第二目标维度数据组的数据分布;根据数据分布选择等距分箱或者等频分箱对第二目标维度数据组包含的数据进行分类,并将分类结果作为特征分类子组。
可选的,仿真测试数据获取模块930,包括:正交分类矩阵确定子模块和仿真测试数据获取子模块;其中,正交分类矩阵确定子模块,用于根据与每个目标维度数据组分别对应的各特征分类子组,构建与目标维度数据组分别对应的特征分组矩阵;将全部特征分组矩阵进行正交化处理,得到正交分类矩阵。
仿真测试数据获取子模块,用于遍历正交分类矩阵的网格,并计算与每个网格对应的网格数据量占比;如果与目标网格对应的网格数据量占比小于或者等于配置阈值,则在目标网格中随机抽取设定比例的数据,作为仿真测试数据;如果与目标网格对应的网格数据量占比大于配置阈值,则通过递归策略抽取目标网格中的数据,作为仿真测试数据。
本发明实施例所提供的仿真测试数据的生成装置可执行本发明任意实施例所提供的仿真测试数据的生成方法,具备执行方法相应的功能模块和有益效果。
实施例六
图10为本发明实施例六提供的一种计算机设备的结构示意图,如图10所示,该计算机设备包括处理器100、存储器101、输入装置102和输出装置103;计算机设备中处理器100的数量可以是一个或多个,图10中以一个处理器100为例;计算机设备中的处理器100、存储器101、输入装置102和输出装置103可以通过总线或其他方式连接,图10中以通过总线连接为例。
存储器101作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的仿真测试数据的生成方法对应的程序指令/模块(例如,仿真测试数据的生成装置中的目标维度数据组确定模块910、特征分类模块920和仿真测试数据获取模块930)。处理器100通过运行存储在存储器101中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的仿真测试数据的生成方法。
存储器101可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器101可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器101可进一步包括相对于处理器100远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置102可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置103可包括显示屏等显示设备。
实施例七
本发明实施例D还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种仿真测试数据的生成方法,该方法包括:
在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;对各目标维度数据组进行特征分类,得到与各目标维度数据组分别对应的至少一个特征分类子组;根据各特征分类子组确定正交分类矩阵,并从正交分类矩阵中获取仿真测试数据。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的仿真测试数据的生成方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述仿真测试数据的生成装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (21)
1.一种仿真测试数据的生成方法,其特征在于,包括:
在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;
对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组;
根据各所述特征分类子组确定正交分类矩阵,并从所述正交分类矩阵中获取仿真测试数据。
2.根据权利要求1所述的方法,其特征在于,在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,包括:
根据各所述维度数据组的数据类型,以及与数据类型匹配的筛选策略,在所述多个维度数据组中,确定出至少一个目标维度数据组。
3.根据权利要求2所述的方法,其特征在于,根据各所述维度数据组的数据类型,以及与数据类型匹配的筛选策略,在所述多个维度数据组中,确定出至少一个目标维度数据组,包括:
如果当前处理的第一维度数据组的数据类型为字符型,则计算所述第一维度数据组中各个字符的概率分布;
根据所述概率分布计算所述第一维度数据组的基尼系数;
如果所述基尼系数处于预设置信区间内,则确定所述第一维度数据组为目标维度数据组。
4.根据权利要求2所述的方法,其特征在于,根据各所述维度数据组的数据类型,以及与数据类型匹配的筛选策略,在所述多个维度数据组中,筛选出至少一个目标维度数据组,包括:
如果当前处理的第二维度数据组的数据类型为数字型或者枚举值,则直接将所述第二维度数据组确定为目标维度数据组;和/或
如果当前处理的第三维度数据组的数据类型为随机值,则直接确定所述第三维度数据组不为目标维度数据组。
5.根据权利要求1所述的方法,其特征在于,对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组,包括:
根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组。
6.根据权利要求5所述的方法,其特征在于,根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组,包括:
如果确定当前处理的第一目标维度数据组的数据类型为字符型,则对所述第一目标维度数据组中包含的文本字符进行分词操作,得到多个分词;
计算各个分词的词频-逆文件频率值,获取大于第一设定阈值的目标词频-逆文件频率值对应的分词添加至关键词词集中;
计算所述关键词词集中各个分词的词向量,并根据所述词向量对所述关键词词集进行聚类,并将聚类得到的聚类结果作为所述特征分类子组。
7.根据权利要求6所述的方法,其特征在于,计算所述关键词词集中各个分词的词向量,并根据所述词向量对所述关键词词集进行聚类,包括:
将所述关键词词集中的目标分词进行独热编码,得到述目标分词的词向量;
分别计算所述目标分词的词向量与所述关键词词集中第一分词的词向量的余弦相似度;
如果所述余弦相似度大于设定阈值,则所述目标分词与所述第一分词为同一类别的分词。
8.根据权利要求5所述的方法,其特征在于,根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组,包括:
如果确定当前处理的第二目标维度数据组的数据类型为数字型,则检测所述第二目标维度数据组的数据分布;
根据所述数据分布选择等距分箱或者等频分箱对所述第二目标维度数据组包含的数据进行分类,并将分类结果作为所述特征分类子组。
9.根据权利要求1所述的方法,其特征在于,根据各所述特征分类子组确定正交分类矩阵,包括:
根据与每个目标维度数据组分别对应的各所述特征分类子组,构建与所述目标维度数据组分别对应的特征分组矩阵;
将全部所述特征分组矩阵进行正交化处理,得到所述正交分类矩阵。
10.根据权利要求1所述的方法,其特征在于,所述从所述正交分类矩阵中获取仿真测试数据,包括:
遍历所述正交分类矩阵的网格,并计算与每个网格对应的网格数据量占比;
如果与目标网格对应的网格数据量占比小于或者等于配置阈值,则在所述目标网格中随机抽取设定比例的数据,作为仿真测试数据;
如果与目标网格对应的网格数据量占比大于配置阈值,则通过递归策略抽取所述目标网格中的数据,作为仿真测试数据。
11.一种计算机设备,包括处理器和存储器,所述存储器用于存储指令,其特征在于,当所述指令执行时使得所述处理器执行以下操作:
在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组,同一维度数据组中的数据类型相同;
对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组;
根据各所述特征分类子组确定正交分类矩阵,并从所述正交分类矩阵中获取仿真测试数据。
12.根据权利要求11所述的计算机设备,其特征在于,所述处理器是设置为通过以下方式在原始数据集中包括的多个维度数据组中,确定出至少一个目标维度数据组:
根据各所述维度数据组的数据类型,以及与数据类型匹配的筛选策略,在所述多个维度数据组中,确定出至少一个目标维度数据组。
13.根据权利要求12所述的计算机设备,其特征在于,所述处理器是设置为通过以下方式根据各所述维度数据组的数据类型,以及与数据类型匹配的筛选策略,在所述多个维度数据组中,确定出至少一个目标维度数据组:
如果当前处理的第一维度数据组的数据类型为字符型,则计算所述第一维度数据组中各个字符的概率分布;
根据所述概率分布计算所述第一维度数据组的基尼系数;
如果所述基尼系数处于预设置信区间内,则确定所述第一维度数据组为目标维度数据组。
14.根据权利要求12所述的计算机设备,其特征在于,所述处理器是设置为通过以下方式根据各所述维度数据组的数据类型,以及与数据类型匹配的筛选策略,在所述多个维度数据组中,筛选出至少一个目标维度数据组:
如果当前处理的第二维度数据组的数据类型为数字型或者枚举值,则直接将所述第二维度数据组确定为目标维度数据组;和/或
如果当前处理的第三维度数据组的数据类型为随机值,则直接确定所述第三维度数据组不为目标维度数据组。
15.根据权利要求11所述的计算机设备,其特征在于,所述处理器是设置为通过以下方式对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组:
根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组。
16.根据权利要求15所述的计算机设备,其特征在于,所述处理器是设置为通过以下方式根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组:
如果确定当前处理的第一目标维度数据组的数据类型为字符型,则对所述第一目标维度数据组中包含的文本字符进行分词操作,得到多个分词;
计算各个分词的词频-逆文件频率值,获取大于第一设定阈值的目标词频-逆文件频率值对应的分词添加至关键词词集中;
计算所述关键词词集中各个分词的词向量,并根据所述词向量对所述关键词词集进行聚类,并将聚类得到的聚类结果作为所述特征分类子组。
17.根据权利要求16所述的计算机设备,其特征在于,所述处理器是设置为通过以下方式计算所述关键词词集中各个分词的词向量,并根据所述词向量对所述关键词词集进行聚类:
将所述关键词词集中的目标分词进行独热编码,得到述目标分词的词向量;
分别计算所述目标分词的词向量与所述关键词词集中第一分词的词向量的余弦相似度;
如果所述余弦相似度大于设定阈值,则所述目标分词与所述第一分词为同一类别的分词。
18.根据权利要求15所述的计算机设备,其特征在于,所述处理器是设置为通过以下方式根据各目标维度数据组的数据类型,以及与数据类型匹配的分类策略,对各目标维度数据组进行特征分类,得到与各所述目标维度数据组分别对应的至少一个特征分类子组:
如果确定当前处理的第二目标维度数据组的数据类型为数字型,则检测所述第二目标维度数据组的数据分布;
根据所述数据分布选择等距分箱或者等频分箱对所述第二目标维度数据组包含的数据进行分类,并将分类结果作为所述特征分类子组。
19.根据权利要求11所述的计算机设备,其特征在于,所述处理器是设置为通过以下方式根据各所述特征分类子组确定正交分类矩阵:
根据与每个目标维度数据组分别对应的各所述特征分类子组,构建与所述目标维度数据组分别对应的特征分组矩阵;
将全部所述特征分组矩阵进行正交化处理,得到所述正交分类矩阵。
20.根据权利要求21所述的计算机设备,其特征在于,所述处理器是设置为通过以下方式从所述正交分类矩阵中获取仿真测试数据,包括:
遍历所述正交分类矩阵的网格,并计算与每个网格对应的网格数量占比;
如果与目标网格对应的网格数量占比小于或者等于配置阈值,则在所述目标网格中随机抽取设定比例的数据,作为仿真测试数据;
如果与目标网格对应的网格数量占比大于配置阈值,则通过递归策略抽取所述目标网格中的数据,作为仿真测试数据。
21.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-10中任一项所述的仿真测试数据的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010377829.9A CN111581092B (zh) | 2020-05-07 | 2020-05-07 | 仿真测试数据的生成方法、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010377829.9A CN111581092B (zh) | 2020-05-07 | 2020-05-07 | 仿真测试数据的生成方法、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111581092A true CN111581092A (zh) | 2020-08-25 |
CN111581092B CN111581092B (zh) | 2023-05-30 |
Family
ID=72126291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010377829.9A Active CN111581092B (zh) | 2020-05-07 | 2020-05-07 | 仿真测试数据的生成方法、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111581092B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112131105A (zh) * | 2020-09-16 | 2020-12-25 | 电信科学技术第十研究所有限公司 | 一种测试数据的构造方法及装置 |
CN112131106A (zh) * | 2020-09-16 | 2020-12-25 | 电信科学技术第十研究所有限公司 | 基于小概率数据的测试数据构造方法及装置 |
CN113607992A (zh) * | 2021-09-08 | 2021-11-05 | 广东电网有限责任公司 | 一种直流配电保护装置的检测波生成方法及相关装置 |
CN114371868A (zh) * | 2021-12-10 | 2022-04-19 | 同盾科技有限公司 | 特征计算可视化的方法、装置、电子设备和存储介质 |
CN114860575A (zh) * | 2022-03-31 | 2022-08-05 | 中国电信股份有限公司 | 测试数据生成方法及装置、存储介质及电子设备 |
CN116577685A (zh) * | 2023-07-13 | 2023-08-11 | 宁德时代新能源科技股份有限公司 | 健康检测方法、数据处理方法、相关装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150067648A1 (en) * | 2013-08-27 | 2015-03-05 | Hcl Technologies Limited | Preparing an optimized test suite for testing an application under test in single or multiple environments |
CN106779087A (zh) * | 2016-11-30 | 2017-05-31 | 福建亿榕信息技术有限公司 | 一种通用机器学习数据分析平台 |
CN107102941A (zh) * | 2017-03-30 | 2017-08-29 | 腾讯科技(深圳)有限公司 | 一种测试用例的生成方法及装置 |
CN110287324A (zh) * | 2019-06-27 | 2019-09-27 | 成都冰鉴信息科技有限公司 | 一种针对粗粒度文本分类的数据动态标注方法及装置 |
WO2019223103A1 (zh) * | 2018-05-22 | 2019-11-28 | 平安科技(深圳)有限公司 | 文本相似度的获取方法、装置、终端设备及介质 |
-
2020
- 2020-05-07 CN CN202010377829.9A patent/CN111581092B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150067648A1 (en) * | 2013-08-27 | 2015-03-05 | Hcl Technologies Limited | Preparing an optimized test suite for testing an application under test in single or multiple environments |
CN106779087A (zh) * | 2016-11-30 | 2017-05-31 | 福建亿榕信息技术有限公司 | 一种通用机器学习数据分析平台 |
CN107102941A (zh) * | 2017-03-30 | 2017-08-29 | 腾讯科技(深圳)有限公司 | 一种测试用例的生成方法及装置 |
WO2019223103A1 (zh) * | 2018-05-22 | 2019-11-28 | 平安科技(深圳)有限公司 | 文本相似度的获取方法、装置、终端设备及介质 |
CN110287324A (zh) * | 2019-06-27 | 2019-09-27 | 成都冰鉴信息科技有限公司 | 一种针对粗粒度文本分类的数据动态标注方法及装置 |
Non-Patent Citations (3)
Title |
---|
刘荣辉;郑建国;: "Deep Web下基于中文分词的聚类算法" * |
张敏;冯登国;陈驰;: "基于安全策略模型的安全功能测试用例生成方法" * |
王子元;徐宝文;聂长海;: "组合测试用例生成技术" * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112131105A (zh) * | 2020-09-16 | 2020-12-25 | 电信科学技术第十研究所有限公司 | 一种测试数据的构造方法及装置 |
CN112131106A (zh) * | 2020-09-16 | 2020-12-25 | 电信科学技术第十研究所有限公司 | 基于小概率数据的测试数据构造方法及装置 |
CN112131106B (zh) * | 2020-09-16 | 2023-02-21 | 电信科学技术第十研究所有限公司 | 基于小概率数据的测试数据构造方法及装置 |
CN113607992A (zh) * | 2021-09-08 | 2021-11-05 | 广东电网有限责任公司 | 一种直流配电保护装置的检测波生成方法及相关装置 |
CN113607992B (zh) * | 2021-09-08 | 2023-07-21 | 广东电网有限责任公司 | 一种直流配电保护装置的检测波生成方法及相关装置 |
CN114371868A (zh) * | 2021-12-10 | 2022-04-19 | 同盾科技有限公司 | 特征计算可视化的方法、装置、电子设备和存储介质 |
CN114860575A (zh) * | 2022-03-31 | 2022-08-05 | 中国电信股份有限公司 | 测试数据生成方法及装置、存储介质及电子设备 |
CN114860575B (zh) * | 2022-03-31 | 2023-10-03 | 中国电信股份有限公司 | 测试数据生成方法及装置、存储介质及电子设备 |
CN116577685A (zh) * | 2023-07-13 | 2023-08-11 | 宁德时代新能源科技股份有限公司 | 健康检测方法、数据处理方法、相关装置、设备及介质 |
CN116577685B (zh) * | 2023-07-13 | 2023-12-01 | 宁德时代新能源科技股份有限公司 | 健康检测方法、数据处理方法、相关装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111581092B (zh) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111581092B (zh) | 仿真测试数据的生成方法、计算机设备及存储介质 | |
CN107391512B (zh) | 知识图谱预测的方法和装置 | |
CN111581949B (zh) | 学者人名的消歧方法、装置、存储介质及终端 | |
Huang et al. | Topic detection from large scale of microblog stream with high utility pattern clustering | |
Xiaolong et al. | RFC: a feature selection algorithm for software defect prediction | |
CN111539612B (zh) | 一种风险分类模型的训练方法和系统 | |
CN105989001A (zh) | 图像搜索方法及装置、图像搜索系统 | |
CN114818643A (zh) | 一种保留特定业务信息的日志模板提取方法 | |
CN112685324A (zh) | 一种生成测试方案的方法及系统 | |
CN112667979B (zh) | 密码生成方法及装置、密码识别方法及装置、电子设备 | |
CN113409016A (zh) | 应用于大数据云办公的信息处理方法、服务器及介质 | |
WO2022186932A1 (en) | Decision tree native to graph database | |
CN114510980A (zh) | 模型特征获取方法及装置、电子设备、存储介质 | |
CN111930883A (zh) | 一种文本聚类方法、装置、电子设备和计算机存储介质 | |
CN112711678A (zh) | 数据解析方法、装置、设备及存储介质 | |
CN113836005A (zh) | 一种虚拟用户的生成方法、装置、电子设备和存储介质 | |
CN112953914A (zh) | 一种dga域名检测分类方法及装置 | |
CN111915018A (zh) | 基于gbdt模型的规则提取方法和系统 | |
CN117828382B (zh) | 基于url的网络接口聚类方法及装置 | |
CN110968690A (zh) | 词语的聚类划分方法和装置、设备以及存储介质 | |
CN116228484B (zh) | 基于量子聚类算法的课程组合方法及装置 | |
Wang et al. | A comparative study on the stability of software metric selection techniques | |
CN112328787B (zh) | 文本分类模型训练方法、装置、终端设备及存储介质 | |
CN116932754A (zh) | 地址匹配方法、装置、计算机设备和存储介质 | |
CN116226713A (zh) | 模型获得方法、分类方法、装置及电子设备和存储介质 |
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 |