CN111079930B - 数据集质量参数的确定方法、装置及电子设备 - Google Patents

数据集质量参数的确定方法、装置及电子设备 Download PDF

Info

Publication number
CN111079930B
CN111079930B CN201911337879.8A CN201911337879A CN111079930B CN 111079930 B CN111079930 B CN 111079930B CN 201911337879 A CN201911337879 A CN 201911337879A CN 111079930 B CN111079930 B CN 111079930B
Authority
CN
China
Prior art keywords
data set
models
network
data
determining
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
CN201911337879.8A
Other languages
English (en)
Other versions
CN111079930A (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.)
Shenzhen Sensetime Technology Co Ltd
Original Assignee
Shenzhen Sensetime Technology Co 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 Shenzhen Sensetime Technology Co Ltd filed Critical Shenzhen Sensetime Technology Co Ltd
Priority to CN201911337879.8A priority Critical patent/CN111079930B/zh
Publication of CN111079930A publication Critical patent/CN111079930A/zh
Application granted granted Critical
Publication of CN111079930B publication Critical patent/CN111079930B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

本申请提供了一种数据集质量参数的确定方法,所述方法包括:获取第一待训练网络的网络类型;根据所述第一待训练网络的网络类型,获取多个模型,所述多个模型的网络类型与所述第一待训练网络的网络类型相同;获取第一数据集,并根据所述第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率;根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数。

Description

数据集质量参数的确定方法、装置及电子设备
技术领域
本发明涉及人工智能领域,尤其涉及数据集质量参数的确定方法、装置及电子设备。
背景技术
神经网络被广泛应用于模式识别、图像处理、函数逼近和优化计算等领域,由于其优于传统方法的性能表现,受到学术界和工业界越来越广泛的关注。
神经网络的训练过程所使用的数据集通常为人工标注,不仅消耗大量的时间和精力,而且由于个人认知偏差、工作疲劳等原因,人工标注得到的数据集质量往往参差不齐,而工作人员往往无法确定数据集的质量到底如何,导致使用人工标注得到的数据集对神经网络进行训练得到的模型,如果模型性能较差,将无法确定该模型性能较差的原因是数据集质量的问题,还是神经网络结构的问题,为工作人员带来不便。
发明内容
本发明提供了数据集质量参数的确定方法、装置及电子设备。
第一方面,提供了一种数据处理方法,所述方法包括:
获取第一待训练网络的网络类型;
根据所述第一待训练网络的网络类型,获取多个模型,所述多个模型的网络类型与所述第一待训练网络的网络类型相同;
获取第一数据集,并根据所述第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率;
根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数。
具体实现中,在所述获取多个模型之前,所述方法还包括:获取至少一个第二数据集,其中,所述至少一个第二数据集与所述第一数据集的类别相同;通过所述至少一个第二数据集以及多个第二待训练网络,得到所述多个模型,其中,所述多个模型中的一个模型,与所述多个第二待训练网络中的一个网络对应。
可以理解的,本申请通过计算第一数据集对第一待训练网络的网络类型的神经元覆盖率,确定第一数据集相对于所述网络类型的质量参数,为工作人员提供了良好的选择标准,使得工作人员在对第一待训练网络训练的过程中,可以根据第一数据集相对于所述网络类型的质量参数,确定是否使用第一数据集,或者是否对第一数据集进行修改调整,提高神经网络的训练效率。
在一实施例中,所述根据所述第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率包括:将所述第一数据集输入所述多个模型,获得所述多个模型中每个模型的每个神经元的输出值;根据所述多个模型中每个模型的每个神经元的输出值,确定所述每个模型被激活的神经元,其中,所述被激活的神经元包括所述输出值大于第一阈值的神经元;根据所述每个模型被激活的神经元数量与神经元总数之间的比值,确定所述多个模型中每个模型的神经元覆盖率。
可以理解的,每个神经元都是给定一个输入,输出对应结果的独立计算单元,每一层的神经元都会提取特定的特征信息,然后作为下一层的输入再次提取更深的特征信息。使用第一数据集对该网络类型的多个模型进行测试时,如果某个神经元输出值很高,则代表该神经元对于当前的第一数据集能够提取到特定的特征信息,代表该第一数据集对该神经元的影响大,输入的样本有利于该网络类型的神经网络的训练。因此,由于神经元覆盖率是输出大于第一阈值的神经元数量与神经元总数之比,神经元覆盖率的高低可以良好的反应出输入该神经网络的第一数据集是否利于该神经网络的训练。
在一实施例中,在所述第一待训练网络的网络类型是卷积神经网络CNN的情况下,所述被激活的神经元包括:所述CNN中全连接层输出值大于第二阈值的神经元,以及,所述CNN中卷积层被激活的输出矩阵对应的卷积核矩阵中的每个元素,其中,所述被激活的输出矩阵中每个元素之和的平均值大于第三阈值,所述卷积层的每一个输出矩阵对应一个卷积核矩阵;所述神经元总数包括:全连接层的神经元总数,以及,卷积层全部卷积核矩阵中的元素总数。
可以理解的,与其他神经网络相比,卷积神经网络还包括卷积层,因此卷积神经网络的神经元覆盖率可以分别针对全连接层和卷积层进行计算,对于全连接层来说,神经元覆盖率是输出大于阈值的神经元数量与神经元总数之比,神经元覆盖率的高低可以良好的反应出输入该神经网络的第一数据集是否利于该神经网络的训练;对于卷积层来说,卷积层的神经元覆盖率可以是卷积层的输出矩阵中每个元素之和的平均值大于阈值时对应的卷积核矩阵中的元素数量,与卷积层全部卷积核矩阵中的元素总数之间的比值,神经元覆盖率的高低也可以良好的反应出输入神经网络的第一数据集是否利于该神经网络的训练。
在一实施例中,所述根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,所述方法还包括:响应于查询请求,获取至少一个所述第一数据集对于一个或者多个网络类型的质量参数;向发起所述查询请求的终端发送所述至少一个所述第一数据集相对于一个或者多个网络类型的质量参数,以选择至少部分所述至少一个所述第一数据集。
可以理解的,在工作人员需要多某一网络类型的神经网络进行训练过程中,可以发起查询请求,从而获得第一数据及针对全部网络类型的神经网络的质量参数,为工作人员选择训练集进行神经网络训练,提供良好的指导。
在一实施例中,所述根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,所述方法还包括:在所述质量参数低于第四阈值的情况下,确定所述第一数据集中的每个数据的网络路径,其中,所述每个数据的网络路径是所述第一数据集中的每个数据输入所述多个模型中的同一个模型后,所述被激活的神经元组成的网络路径;确定所述第一数据集中至少两个数据的网络路径之间的相似度;确定所述相似度高于第五阈值的多个数据;删除所述多个数据中的部分数据。
可以理解的,使用相同或相似的重复数据对神经网络进行训练,神经网络可以提取的特征信息将非常有限,因此可以通过将重复数据中的部分数据删除的方式对第一数据集的大小进行缩减,从而提高第一待训练网络的训练速度。
在一实施例中,所述根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,所述方法还包括:在所述质量参数低于所述第四阈值的情况下,将目标数据添加至所述第一数据集,获得更新后的第一数据集;根据所述更新后的第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率;根据所述多个模型中每个模型的神经元覆盖率,确定所述更新后的第一数据集相对于所述网络类型的质量参数。
可以理解的,上述实施例中,当质量参数不低于第四阈值的情况下,可以直接允许工作人员使用该第一数据集对第一待训练网络进行训练,当质量参数低于第四阈值的情况下,可以主动将目标数据添加至第一数据集,重新对更新后的第一数据集确定质量参数,如果该质量参数仍低于第四阈值,可以重复上述步骤,直至质量参数不低于所述第四阈值,从而达到对第一数据集进行调整更新的目的,使得工作人员可以使用更新后的第一数据集对第一待训练网络进行训练,获得性能更加优良的网络模型。
第二方面,提供了一种数据集质量参数的确定装置,所述装置包括获取单元以及确定单元,其中,
所述获取单元用于获取第一待训练网络的网络类型;
所述获取单元用于根据所述第一待训练网络的网络类型,获取多个模型,所述多个模型的网络类型与所述第一待训练网络的网络类型相同;
所述确定单元用于获取第一数据集,并根据所述第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率;
所述确定单元用于根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数。
在一实施例中,所述装置还包括训练单元,所述获取单元还用于在所述获取多个模型之前,获取至少一个第二数据集,其中,所述至少一个第二数据集与所述第一数据集的类别相同;所述训练单元用于通过所述至少一个第二数据集以及多个第二待训练网络,得到所述多个模型,其中,所述多个模型中的一个模型,与所述多个第二待训练网络中的一个网络对应。
在一实施例中,所述确定单元用于将所述第一数据集输入所述多个模型,获得所述多个模型中每个模型的每个神经元的输出值;所述确定单元用于根据所述多个模型中每个模型的每个神经元的输出值,确定所述每个模型被激活的神经元,其中,所述被激活的神经元包括所述输出值大于第一阈值的神经元;所述确定单元用于根据所述每个模型被激活的神经元数量与神经元总数之间的比值,确定所述多个模型中每个模型的神经元覆盖率。
在一实施例中,在所述第一待训练网络的网络类型是卷积神经网络CNN的情况下,所述被激活的神经元包括:所述CNN中全连接层输出值大于第二阈值的神经元,以及,所述CNN中卷积层被激活的输出矩阵对应的卷积核矩阵中的每个元素,其中,所述被激活的输出矩阵中每个元素之和的平均值大于第三阈值,所述卷积层的每一个输出矩阵对应一个卷积核矩阵;所述神经元总数包括:全连接层的神经元总数,以及,卷积层全部卷积核矩阵中的元素总数。
在一实施例中,所述装置还包括响应单元,所述响应单元用于在所述确定单元根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,响应于查询请求,获取至少一个所述第一数据集对于一个或者多个网络类型的质量参数;所述响应单元用于向发起所述查询请求的终端发送所述至少一个所述第一数据集对于一个或者多个网络类型的质量参数,以选择至少部分所述至少一个所述第一数据集。
在一实施例中,所述装置还包括删除单元,所述确定单元还用于在根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,在所述质量参数低于第四阈值的情况下,确定所述第一数据集中的每个数据的网络路径,其中,所述每个数据的网络路径是所述第一数据集中的每个数据输入所述多个模型中的同一个模型后,所述被激活的神经元组成的网络路径;所述确定单元还用于确定所述第一数据集中至少两个数据的网络路径之间的相似度;所述确定单元还用于确定所述相似度高于第五阈值的多个数据;所述删除单元用于删除所述多个数据中的部分数据。
在一实施例中,所述装置还包括添加单元,所述添加单元用于在所述确定单元根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,在所述质量参数低于所述第四阈值的情况下,将目标数据添加至所述第一数据集,获得更新后的第一数据集;所述确定单元用于根据所述更新后的第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率;所述确定单元用于根据所述多个模型中每个模型的神经元覆盖率,确定所述更新后的第一数据集相对于所述网络类型的质量参数。
在一实施例中,所述网络类型包括如下至少一项:多层感知机MLP、卷积神经网络CNN、循环神经网络RNN、图神经网络GNN以及深度信念网络DBN。
第三方面,提供了一种电子设备,包括:处理器和用于存储计算机可读指令的存储器;其中,所述处理器用于调用所述存储器存储的计算机可读指令,以执行上述第一方面所述的方法或其任意可能的实现方式。
第四方面,提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面所述的方法或其任意可能的实现方式。
第五方面,提供了一种计算机程序产品,当所述计算机程序被计算设备读取并执行时,使得所述计算设备执行上述第一方面所述的方法或其任意可能的实现方式。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是一种神经元的结构示意图;
图2是一种神经网络的结构示意图;
图3是本申请提供的一种数据集质量参数的确定方法的流程示意图;
图4是本申请提供的一应用场景下神经元覆盖率的计算流程示意图;
图5是一种卷积神经网络的结构示意图;
图6A是本申请提供的一应用场景下的卷积层示意图;
图6B是本申请提供的另一应用场景下的卷积层示意图;
图7是本申请提供的一种数据集质量参数的确定装置的结构示意图;
图8是本申请提供的一种电子设备的结构示意图。
具体实施方式
本公开的实施例中使用的术语仅用于对本发明的具体实施例进行解释,而非旨对本发明作出具体限定。
首先对本公开的实施例涉及的“神经元”的相关概念进行详细的描述。
神经元是以生物神经***的神经细胞为基础的生物模型。在人们对生物神经***进行研究,以探讨人工智能的机制时,把神经元数学化,从而产生了神经元数学模型。神经元包括输入、输出与计算功能。如图1所示,该神经元包括3个输入,1个输出以及2个计算功能。如果用a来表示输入,用w来表示权值,用z来表示输出,那么输出z可以用公式(1)表示:
z=g(a1×w1+a2×w2+a3×w3) (1)
其中,每个权值w可以通过对神经网络进行训练,对每个权值进行调整获得。可以理解的,由公式(1)可知,每个神经元的输出z可以是经过加权求和(即a1×w1+a2×w2+a3×w3),再经过非线性变换(激活函数g)得到的。激活函数g在不同的神经网络类型中的公式也不相同,具体可以是signoid函数、tanh函数以及relu函数等等,举例来说,在M-P(McCulloch-Pitts)模型中,函数g可以是sgn函数,即取符号函数。在a1×w1+a2×w2+a3×w3大于0的情况下,输出z=1,在a1×w1+a2×w2+a3×w3小于0的情况下,输出z=0。应理解,上述举例仅用于说明,并不能构成具体限定。
当大量形式相同的神经元连结在一起就组成了神经网络(Neural Networks,NN)。如图2所示,图2是一种神经网络的结构示意图。该结构的神经网络包含输入层和输出层。输入层有3个输入单元,输出层有2个输出单元,那么输出单元z1的计算公式为:
z1=g(a1×w1+a2×w2+a3×w3) (2)
输出单元z2的计算公式为:
z2=g(a1×w4+a2×w5+a3×w6) (3)
同理可知,如果神经网络包含更多的层次,那么每一层的神经元的输出z,可以作为下一层神经元的输出a计算下一层输出的值,从而获得三层或者更多层神经网络的输出单元的计算公式,这里不再展开赘述。应理解,图1和图2仅用于举例说明,本申请适用的神经网络可以是任意层数、任意结构类型的神经网络,本申请不作具体限定。
因此,基于上述输出单元的计算公式,神经网络的训练过程可以是:获取用于训练神经网络的数据集,该数据集X包括输入样本X1,X2,…,Xm和样本对应的标签B1,B2…,Bm;根据数据集中每一个样本输入所述神经网络获得的输出值z1,z2,…,zm与样本对应的标签B1,B2…,Bm之间差距,对权值w进行调整,直至输出值z1,z2,…,zm与标签B1,B2…,Bm之间的差距最小,从而获得训练好的神经网络模型。而将待预测的数据输入训练好的神经网络模型之后,根据权值w获得的输出值,即为神经网络模型的预测值。
可以理解的,根据上述神经网络的样本集的样本标签如果标注错误,那么训练好的神经网络模型的性能(比如预测准确度)将会大大降低。但是,神经网络的训练过程所使用的数据集通常为人工标注,不仅消耗大量的时间和精力,而且由于个人认知偏差、工作疲劳等原因,人工标注得到的数据集质量往往参差不齐,而工作人员往往无法确定数据集的质量到底如何,导致使用人工标注得到的数据集对神经网络进行训练得到的模型,工作人员无法确定该模型性能好或坏的原因是数据集质量的问题,还是神经网络结构的问题,为工作人员的研究带来不便。
为了解决上述无法确定人工标注的数据集的质量的问题,本申请提供了一种数据集质量参数的确定方法。通过计算第一数据集对第一待训练网络的网络类型的神经元覆盖率,确定第一数据集相对于所述网络类型的质量参数,为工作人员提供了良好的选择标准,使得工作人员在对第一待训练网络训练的过程中,可以根据第一数据集相对于所述网络类型的质量参数,确定是否使用第一数据集,或者是否对第一数据集进行修改调整。如图3所示,本申请提供的数据集质量参数的确定方法包括以下步骤:
S101:获取第一待训练网络的网络类型。
在本申请实施例中,所述网络类型包括如下至少一项:多层感知机(Multi-LayerPerceptron,MLP)、卷积神经网络(Convolutional Neural Networks,CNN)、循环神经网络(Recurrent Neural Network,RNN)、图神经网络(Graph Neural Network,GNN)以及深度信念网络(Deep Belief Nets,DBN)。还可以包括其他包含图1所示结构的神经元,可以计算出神经网络覆盖率的网络类型,本申请不作具体限定。
S102:根据所述第一待训练网络的网络类型,获取多个模型,所述多个模型的网络类型与所述第一待训练网络的网络类型相同。
可以理解的,如果只根据第一数据集对一个模型进行测试得到的神经元覆盖率确定第一数据集的质量参数,结果存在一定的偶然性,精确度低,因此本申请选择根据第一数据集对多个模型进行测试得到的神经元覆盖率确定第一数据集的质量参数,所述多个模型是参数不同、网络类型相同的多个神经网络模型,并且多个模型的网络类型与与第一待训练网络相同,从而在一定程度上减少误差,提高质量参数的精确度。
在本申请实施例中,所述多个参数不同、网络类型相同的模型可以是通过至少一个第二数据集,对多个第二待训练网络进行训练后得到的,其中,第二数据集与第一数据集的类别相同,第二待训练网络与第一待训练网络的网络类型相同。具体地,在所述获取多个模型之前,所述方法还包括:获取至少一个第二数据集,其中,所述至少一个第二数据集与所述第一数据集的类别相同;通过所述至少一个第二数据集以及多个第二待训练网络,得到所述多个模型,其中,所述多个模型中的一个模型,与所述多个第二待训练网络中的一个网络对应。
具体实现中,如果多个模型的数量为p,那么可以使用p1种不同的第二数据集,通过p2种不同的超参数设置,对p个第二待训练网络进行训练得到p个模型,其中,p=p1×p2。举例来说,在p1=1,p2=p的情况下,p个模型可以是1个第二数据集通过p种不同的超参数设置,对p个第二待训练网络进行训练得到的;在p1=p,p2=1的情况下,p个模型可以是p种不同的第二数据集,通过同一种超参数设置,对p个第二待训练网络进行训练得到的。上述举例仅用于说明,并不能构成具体限定。
应理解,使用第二数据集对第二待训练网络进行训练的具体过程可以是先统一使用高质量的开源大数据集(比如ImageNet)对多个第二待训练网络进行预训练,获得多个预训练的小模型后,再使用所述多个第二数据集对所述多个预训练的小模型进行再次训练后获得所述多个模型,也可以是直接使用第二数据集对第二待训练网络进行训练后,本申请不对如何使用第二数据集对第二待训练网络进行训练的具体方法进行限定。
需要说明的,所述至少一个第二数据集与所述第一数据集的类别相同可以是指:至少一个第二数据集是将第一数据集的应用场景进行细分后得到的。举例来说,如果第一数据集是标注好的人脸图像的数据集,那么至少一个第二数据集可以包括不同年龄的人脸图像的数据集(比如10-20岁的人脸图像的数据集和20-30岁的人脸图像的数据集)等等。应理解,上述举例仅用于说明,并不能构成具体限定。
需要说明的,不同的超参数设置可以包括不同优化方法选择、不同的训练逻辑、不同的学习率、不同的迭代次数、不同的正则化参数等等,本申请也不对此进行具体限定。
S103:获取第一数据集,并根据所述第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率。其中,第一数据集可以是人工标注的包括多个有标签样本的数据集,也可以是机器标注的包括多个有标签样本的数据集,也可以是无标签样本的数据集,本申请不作具体限定。第二数据集可以是人工或者机器标注的包括多个有标签样本的数据集。
S104:根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数。
具体实现中,可以通过计算每个模型的神经元覆盖率的平均值、算数平均值加权平均值等等方法确定所述第一数据集相对于所述网络类型的质量参数,本申请不作具体限定。可以理解的,神经元覆盖率越高,质量参数越高,所述第一数据集越适合用于训练第一待训练网络。如果3个数据集X1、X2和X3对应第一待训练网络的网络类型的质量参数分别为s1=0.8,s2=0.2,s3=0.5,那么工作人员在对第一待训练网络进行训练的过程中,可以选择数据集X1对目标神经进行训练。应理解,上述举例仅用于说明,并不能构成具体限定。
下面对如何计算神经元覆盖率进行详细说明。
在本申请实施例中,所述根据所述第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率包括:将所述第一数据集输入所述多个模型,获得所述多个模型中每个模型的每个神经元的输出值;根据所述多个模型中每个模型的每个神经元的输出值,确定所述每个模型被激活的神经元,其中,所述被激活的神经元包括所述输出值大于第一阈值的神经元;根据所述每个模型被激活的神经元数量与神经元总数之间的比值,确定所述多个模型中每个模型的神经元覆盖率。举例来说,如果第一阈值为0,那么输出值大于0的神经元即可称为被激活的神经元,输出值大于0的神经元数量与神经元总数之间的比值,即为神经元覆盖率。应理解,上述第一阈值的举例仅用于说明,第一阈值的确定可以是多次试验后的得到的经验值,并不能构成具体限定。
假设神经网络所有的神经元集合为N={n1,n2,…ni},第一数据集X={x1,x2,…,xj},假设第一数据集X中的数据输入神经元得到的输出值为out(n,x),第一阈值为threshold,那么神经元覆盖率的公式(4)可以表示为:
举例来说,如图4所示,假设一张红色跑车的图片输入了一个二分类网络,第一层包括4个神经元,分别用于根据输入图片提取蓝色特征、黑色特征、橡胶材质特征和钢铁材质特征,第二层包括2个神经元,分别用于根据第一层输出的四种特征提取鼻子的特征,和轮子的特征,第三层包括2个神经元,分别用于根据第二层输出的2种特征提取车的特征和脸的特征。假设当前的输入图片是一张黑色跑车的图片,且第一阈值设定为0,由图4可知,当前输出值大于0的神经元可以是阴影部分的神经元,即激活的神经元数量为5个,神经元总数为8个,因此图4所示的神经网络的神经元覆盖率Y=5/8=0.625。应理解,图4仅用于举例说明,并不能构成具体限定。
可以理解的,参考前述内容可知,神经网络的每一层包括多个神经元,每个神经元都是给定一个输入,输出对应结果的独立计算单元,每一层的神经元都会提取特定的特征信息,然后作为下一层的输入再次提取更深的特征信息,如果神经网络是人脸识别网络,那么有的神经元可以用于提取鼻子的信息,有的可以用于提取眼镜的信息。如果某个神经元输出值很低,则代表该神经元对于当前的输入数据能够提取的特征信息很少,这个输入数据可能与神经元可以提取的特征信息的关联度很低,输入的样本不利于该神经网络的训练。反之,如果某个神经元输出值很高,则代表该神经元对于当前的输入数据能够提取的特征信息很多,这个输入数据与神经元可以提取的特征信息的关联度很强,代表该数据集对该神经元的影响大,输入的样本有利于该神经网络的训练。由于神经元覆盖率是输出大于第一阈值的神经元数量(即被激活的神经元数量)与神经元总数之比,因此,第一数据集输入多个模型(与第一待训练网络的网络类型相同)而确定的神经元覆盖率的高低,可以良好的反应出第一数据集是否利于该网络类型的神经网络的训练。
需要说明的,由于卷积神经网络(Convolutional Neural Layer,CNN)是特殊结构的神经网络,如图5所示,CNN一般包括卷积层、池化层、全连接层以及输出层。其中,只有全连接层和卷积层包括神经元,具体实现中,计算CNN神经元覆盖率的具体步骤可以如下:
S1031:确定所述卷积层和全连接层的被激活的神经元数量,其中,所述被激活的神经元包括:所述CNN中全连接层输出值大于第二阈值的神经元,以及,所述CNN中卷积层被激活的输出矩阵对应的卷积核矩阵中的每个元素,其中,所述被激活的输出矩阵中每个元素之和的平均值大于第三阈值,所述卷积层的每一个输出矩阵对应一个卷积核矩阵。其中,第二阈值和第三阈值的大小还可以是多次重复试验后得到的经验值,并且,第二阈值可以与前述内容中的第一阈值相同或不同,本申请不作具体限定。
可以理解的,由于全连接层的结构也是由多个如图1所示的神经元组成的,因此每个模型的全连接层中被激活的神经元数量的计算方法与前述内容相同,具体可以参考图4实施例,这里不再展开赘述。但是,卷积层的结构不再是由多个图1所示的神经元组成的,而是由多个卷积核对输入图像矩阵进行特征提取,因此每个模型的卷积层中被激活的神经元数量的计算方法与前述内容不同,下面对如何计算卷积层中被激活的神经元数量进行详细说明。
在CNN的多个卷积层中,每个卷积层可以包括一个或者多个卷积核,卷积核在图像处理中的作用相同于一个从输入图像矩阵中提取特定信息的滤波器,卷积核本质上可以是一个权重矩阵,该权重矩阵通常被预先定义,在对图像进行卷积操作的过程中,卷积核通常在输入图像上沿着水平方向一个像素接着一个像素(或两个像素接着两个像素……这取决于步长(stride)的取值)的进行处理,从而完成从图像中提取特定特征的工作。该卷积核的大小应该与图像的大小相关,需要注意的是,权重矩阵的纵深维度(Depth Dimension)和输入图像的纵深维度是相同的,在进行卷积运算的过程中,卷积核会延伸到输入图像的整个深度。因此,和一个单一的卷积核进行卷积会产生一个单一纵深维度的卷积化输出,但是大多数情况下不使用单一卷积核,而是应用维度相同的多个卷积核。每个卷积核的输出被堆叠起来形成卷积图像的纵深维度。不同的卷积核可以用来提取图像中不同的特征,例如一个卷积核用来提取图像边缘信息,另一个卷积核用来提取图像的特定颜色,又一个卷积核用来对图像中不需要的噪点进行模糊化……该多个卷积核维度相同,经过该多个维度相同的卷积核提取后的特征图维度也相同,再将提取到的多个维度相同的特征图合并形成卷积运算的输出。这些卷积核中的权重值在实际应用中需要经过大量的训练得到,通过训练得到的权重值形成的各个卷积核可以从输入图像中提取信息得到特征图像,从而帮助CNN进行正确的预测。
因此,对于CNN的卷积层来说,卷积层的输出矩阵中每个元素之和的平均值越大,代表该输出矩阵对应卷积核提取的特征越多,第一数据集对该CNN的影响越大。因此可以将每个元素之和的平均值大于第二阈值的输出矩阵对应的卷积核中的元素数量作为卷积层中被激活的神经元数量,由于神经元覆盖率是被激活的神经元数量与神经元总数之比,因此,神经元覆盖率的高低可以良好的反应出第一数据集是否利于CNN的训练。
举例来说,如图6A所示,该卷积层的输入图像矩阵610为一个4×4的矩阵,卷积核620为一个3×3的权重矩阵,滑动步长为1,因此输入矩阵610与卷积核620进行卷积计算后,该卷积层的输出矩阵630是一个2×2的矩阵。其中,输出矩阵630中的每一个元素之和的平均值为(-6-3+6+9)/4=6/4=1.5,假设第二阈值为0,那么图6A所示的输出矩阵中每个元素之和的平均值大于第二阈值,输出矩阵630即为被激活的输出矩阵,那么图6A所示的卷积层中被激活的神经元数量输出矩阵630对应的卷积核620的元素数量,即被激活的神经元数量为9。应理解,上述举例仅用于说明,本申请不作具体限定。
S1032:确定所述卷积层和全连接层的神经元总数,其中,所述神经元总数包括:全连接层的神经元总数,以及,卷积层全部卷积核矩阵中的元素总数。
可以理解的,由于全连接层的结构也是由多个如图1所示的神经元组成的,因此每个模型的全连接层神经元总数计算方法与前述内容相同,具体可以参考图4实施例,这里不再展开赘述。但是,卷积层的结构不再是由多个图1所示的神经元组成,而是由多个卷积核对输入图像矩阵进行特征提取,因此每个模型的卷积层中神经元的总数为:卷积层全部卷积核矩阵中的元素总数。如图6A所示,该卷积层中神经元的总数即为卷积核620中的元素总数,所以图6A所示的卷积层中神经元的总数为9个。
需要说明的,步骤S1031可以先于步骤S1032执行,也可以后于步骤S1032执行,还可以与步骤S1032同时执行,本申请不作具体限定。
S1033:根据所述每个模型被激活的神经元数量与神经元总数之间的比值,确定所述多个模型中每个模型的神经元覆盖率。
下面以图6B为例,对上述步骤S1031-步骤S1033进行详细解释。假设某CNN的1个卷积层的输入矩阵为矩阵610,该卷积层的卷积核共有3个,分别是卷积核621、卷积核622以及卷积核623,滑动步长为1,因此对应的输出矩阵分别为输出矩阵631、输出矩阵632以及输出矩阵633,假设第二阈值为0,那么在该卷积层的3个输出矩阵中,只有输出矩阵631和输出矩阵633的每个元素之和的平均值大于第二阈值0,因此该卷积层中被激活的神经元数量为9+9=18个,神经元总数为3个卷积核矩阵的元素总数,即9+9+9=27个。应理解,图6B仅用于举例说明,并不能构成具体限定。
可以理解的,如果某CNN只包括一个图6B所示的卷积层,以及图4所示的全连接层,参考前述内容可知图4所示的神经网络中,被激活的神经元数量为5个,神经元总数为8个,图6B所述的卷积层中被激活的神经元数量为18个,神经元总数为27个,那么该CNN的神经元覆盖率为(5+18)/(8+27)=23/35=0.66。应理解,图6B仅用于举例说明,并不能构成具体限定。
可以理解的,通过上述步骤S101-步骤S104,可以获得第一数据集对应于该网络类型的质量参数,同理,如果再使用多个其他网络类型的模型(使用不同细分场景的数据集对同一网络类型的神经网络进行训练后得到的网络类型相同、参数不同的多个模型)重复步骤S101-步骤S104,即可获得第一数据集针对其他网络类型神经网络的质量参数。而在工作人员需要对某一网络类型的神经网络进行训练的情况下,可以发起查询请求,从而获得第一数据及针对全部网络类型的神经网络的质量参数。因此,在所述根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,所述方法还包括:响应于查询请求,获取至少一个所述第一数据集对于一个或者多个网络类型的质量参数;向发起所述查询请求的终端发送所述至少一个所述第一数据集相对于一个或者多个网络类型的质量参数,以选择至少部分所述至少一个所述第一数据集。可以理解的,使用本申请提供的方法,对第一数据集进行评估的评估结果是第一数据集对于不同网络类型的神经网络的质量参数,评估结果是一个综合结果,能够良好的反映出第一数据集的质量,可以在工作人员选择训练集进行神经网络训练过程中,提供良好的指导。
举例来说,第一数据集X1、X2和X3可以分别对多个网络类型相同、参数不同的RNN模型、CNN模型以及MLP模型进行测试,计算每个模型的神经元覆盖率,获得第一数据集X1、X2和X3针对不同网络类型神经网络的质量参数,可以如表1所示:
表1第一数据集X1、X2和X3的质量参数
第一数据集 CNN RNN MLP
X1 0.9 0.2 0.5
X2 0.4 0.9 0.1
X3 0.1 0.3 0.8
由表1可知,第一数据集X1最适合用于训练CNN,最不适合用于训练RNN,第一数据集X2最适合用于训练RNN,最不适合用于训练MLP,第一数据集X3最适合用于训练MLP,最不适合用于训练CNN。工作人员可以根据需要训练的神经网络的网络类型,根据每个数据集相对于该网络类型的质量参数,选择最适合的第一数据集进行训练。应理解,上述举例仅用于说明,并不能构成具体限定。
在本申请实施例中,本申请提供的数据集质量参数的确定方法,可以用于在工作人员人工标注数据集之后,确定该数据集针对不同网络类型的神经网络的质量参数(例如表1所示),还可以用于在工作人员需要使用第一数据集对第一待训练网络进行训练之前,使用本申请提供的数据集质量参数的确定方法确定该第一数据集相对于该第一待训练网络的网络类型的质量参数,当质量参数不低于第四阈值的情况下,可以直接允许工作人员使用该第一数据集对第一待训练网络进行训练,当质量参数低于第四阈值的情况下,可以主动将目标数据添加至第一数据集,重新对更新后的第一数据集确定质量参数,如果该质量参数仍低于第四阈值,可以重复上述步骤,直至质量参数不低于所述第四阈值,从而达到对第一数据集进行调整更新的目的,使得工作人员可以使用更新后的第一数据集对第一待训练网络进行训练,获得性能更加优良的网络模型。
具体地,所述根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,所述方法还包括:在所述质量参数低于所述第四阈值的情况下,将目标数据添加至所述第一数据集,获得更新后的第一数据集;根据所述更新后的第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率;根据所述多个模型中每个模型的神经元覆盖率,确定所述更新后的第一数据集相对于所述网络类型的质量参数。其中,第四阈值的大小还可以是多次重复试验后得到的经验值,本申请不作具体限定。
在本申请实施例中,所述目标数据可以是对部分重复数据进行随机扰动后生成的数据,其中,所述随机扰动包括加噪声点和改变光照信息等等。这里的重复数据指的是数据内容相同或者相似、被激活的神经元组成的网络路径相同或相似的数据,可以理解的,使用相同或相似的重复数据对神经网络进行训练,神经网络可以提取的特征信息将非常有限,因此可以将数据集中的部分重复数据进行随机扰动,生成新的数据,降低第一数据集中的重复数据的比例,从而提高第一数据集的质量参数。这里的重复数据可以是通过以下步骤获得的:确定所述第一数据集中的每个数据的网络路径,其中,所述每个数据的网络路径是所述第一数据集中的每个数据输入所述多个模型中的同一个模型后,所述被激活的神经元组成的网络路径;确定所述第一数据集中至少两个数据的网络路径之间的相似度;确定所述相似度高于第五阈值的多个数据;将所述多个数据中数据内容相似的多个数据作为重复数据,这里的数据内容相似可以是背景相似、label相似等等,本申请不作具体限定。
举例来说,如果第一数据集X={x1,x2,x3,x4},多个模型中的一个模型M1包括6个神经元,分别是n1,n2,n3,n4,n5,n6。假设数据x1输入模型M1后确定的被激活的神经元为n1,n2,n3,n4,数据x2输入模型M1后确定的被激活的神经元为n1,n2,n3,n4,数据x3输入模型M1后确定的被激活的神经元为n1,n2,n3,n4,数据x4输入模型M1后确定的被激活的神经元为n1,n3,n4,n6。因此数据x1,x2,x3的被激活的神经元分别形成的3条路径之间的相似度很高。如果数据x1,x2,x3的数据内容也十分相似,比如图片的背景都是蓝天,那么数据x1,x2,x3即为第一数据集的重复数据,可以对数据x1,x2,x3中的部分数据进行随机扰动,比如保留数据x1,改变数据x2的光照信息,生成新的数据x2’并添加至所述第一数据集X中,在数据x3上增加噪声点,生成新的数据x3’并添加至所述第一数据集X中,从而获得更新后的第一数据集。重新对更新后的第一数据集确定质量参数,如果该质量参数仍低于第四阈值,可以重复上述步骤,直至质量参数不低于所述第四阈值,从而达到对第一数据集进行调整更新的目的,使得工作人员可以使用更新后的第一数据集对第一待训练网络进行训练,获得性能更加优良的网络模型。应理解,上述举例仅用于说明,并不能构成具体限定。
在本申请实施例中,目标数据还可以是通过生成对抗网络(GenerativeAdversarial Networks,GAN)获得的输出数据,其中,所述输出数据输入所述多个模型中的每个模型后确定的神经元覆盖率,高于所述第一数据集输入所述多个模型中的每个模型后获得的神经元覆盖率。
具体实现中,GAN可以包括判别网络以及生成网络,其中,生成网络用于根据输入数据生成图片,判别网络用于判别输入的图片是否是真实图片。GAN在训练过程中,生成网络的目标是尽量生成出真实的图片使得判别网络的输出结果为真实,判别网络的目标是尽量判别出准确的结果,即判别出生成网络生成的图片的数据结果为虚假,两个网络形成一个动态“博弈”的过程,最终训练好的GAN可以生成“以假乱真”的图片,该图片生成的数据能够增大第一数据集的神经元覆盖率。GAN的具体训练方法可以如下:首先训练一个判别网络,将图片输入所述判别网络后,该网络将输出该图片是否虚假;然后固定判别网络的网络参数,训练一个生成网络,判别网络的输出结果输入该生成网络后,生成网络可以根据判别网络的输出结果生成伪造图片,并将伪造图片重新输入判别网络,如果判别网络仍判定为虚假,那么生成网络将重新生成伪造图片,重复上述步骤直至判别网络判定伪造图片为真实图片,此时GAN将根据该伪造图片生成输出数据,训练过程中可以通过设计损失函数来实现上述判别网络以及生成网络,使得生成的数据能够增大原数据集的神经元覆盖率。训练成功后,可以通过将生成网络生成的输出数据加入第一数据集中以增强其质量参数。需要说明的,生成网络生成的输出数据是不带标签的,如果第一数据集是有标签数据集,那么需要对输出数据进行标注后,再将其添加至第一数据集中,从而获得更新后的第一数据集。最后重新对更新后的第一数据集确定质量参数,如果该质量参数仍低于第四阈值,可以重复上述步骤,直至质量参数不低于所述第四阈值,从而达到对第一数据集进行调整更新的目的,使得工作人员可以使用更新后的第一数据集对第一待训练网络进行训练,获得性能更加优良的网络模型。应理解,上述举例仅用于说明,并不能构成具体限定。
在本申请实施例中,目标数据还可以是随机生成的数据,比如随机生成的图片,再通过标注后获得的目标数据。可以理解的,如果第四阈值设置的较高,那么可能会出现对第一数据集增加很多次目标数据之后,更新后的第一数据集的质量参数才不低于所述第四阈值,而这时的第一数据集的数据量可能会非常大,导致第一待训练网络的训练过慢。因此,本申请还提供了根据质量参数对数据集大小进行缩减的方法。具体地,所述根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,所述方法还包括:在所述质量参数低于第四阈值的情况下,确定所述第一数据集中的每个数据的网络路径,其中,所述每个数据的网络路径是所述第一数据集中的每个数据输入所述多个模型中的同一个模型后,所述被激活的神经元组成的网络路径;确定所述第一数据集中至少两个数据的网络路径之间的相似度;确定所述相似度高于第五阈值的多个数据;删除所述多个数据中的部分数据。简单来说,将前述内容中的重复数据中的部分数据删除,从而达到缩减数据集大小,提高第一待训练网络的训练速度的目的。可以理解的,使用相同或相似的重复数据对神经网络进行训练,神经网络可以提取的特征信息将非常有限,因此可以通过将重复数据中的部分数据删除的方式对第一数据集的大小进行缩减。具体实现中,可以根据工作人员的需要,设置重复数据的删除比例,比如设置随机删除80%的重复数据,如果第一数据集X1包括100个重复数据,那么可以随机删除这100个重复数据中的80个数据,保留剩余的20个数据在第一数据集X1中,具体的删除比例可以根据训练第一待训练网络的计算设备的能力确定。应理解,上述举例仅用于说明,本申请不作具体限定。
综上可知,本申请通过计算第一数据集对第一待训练网络的网络类型的神经元覆盖率,确定第一数据集相对于所述网络类型的质量参数,为工作人员提供了良好的选择标准,使得工作人员在对第一待训练网络训练的过程中,可以根据第一数据集相对于所述网络类型的质量参数,确定是否使用第一数据集,或者是否对第一数据集进行修改调整。从而提高神经网络的训练效率。
下面对本申请涉及的部分装置进行解释说明。如图7所示,本申请提供了一种数据集质量参数的确定装置700,包括获取单元710、确定单元720、训练单元730、响应单元740、删除单元750以及添加单元760,其中,
所述获取单元710用于获取第一待训练网络的网络类型;
所述获取单元710用于根据所述第一待训练网络的网络类型,获取多个模型,所述多个模型的网络类型与所述第一待训练网络的网络类型相同;
所述确定单元720用于获取第一数据集,并根据所述第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率;
所述确定单元720用于根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数。
在本申请实施例中,所述装置还包括训练单元730,所述获取单元还用于在所述获取多个模型之前,获取至少一个第二数据集,其中,所述至少一个第二数据集与所述第一数据集的类别相同;所述训练单元用于通过所述至少一个第二数据集以及多个第二待训练网络,得到所述多个模型,其中,所述多个模型中的一个模型,与所述多个第二待训练网络中的一个网络对应。
在本申请实施例中,所述确定单元720用于将所述第一数据集输入所述多个模型,获得所述多个模型中每个模型的每个神经元的输出值;所述确定单元用于根据所述多个模型中每个模型的每个神经元的输出值,确定所述每个模型被激活的神经元,其中,所述被激活的神经元包括所述输出值大于第一阈值的神经元;所述确定单元用于根据所述每个模型被激活的神经元数量与神经元总数之间的比值,确定所述多个模型中每个模型的神经元覆盖率。
在本申请实施例中,在所述第一待训练网络的网络类型是卷积神经网络CNN的情况下,所述被激活的神经元包括:所述CNN中全连接层输出值大于第二阈值的神经元,以及,所述CNN中卷积层被激活的输出矩阵对应的卷积核矩阵中的每个元素,其中,所述被激活的输出矩阵中每个元素之和的平均值大于第三阈值,所述卷积层的每一个输出矩阵对应一个卷积核矩阵;所述神经元总数包括:全连接层的神经元总数,以及,卷积层全部卷积核矩阵中的元素总数。
在本申请实施例中,所述装置还包括响应单元740,所述响应单元740用于在所述确定单元根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,响应于查询请求,获取至少一个所述第一数据集对于一个或者多个网络类型的质量参数;所述响应单元740用于向发起所述查询请求的终端发送所述至少一个所述第一数据集对于一个或者多个网络类型的质量参数,以选择至少部分所述至少一个所述第一数据集。
在本申请实施例中,所述装置还包括删除单元750,所述确定单元720还用于在根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,在所述质量参数低于第四阈值的情况下,确定所述第一数据集中的每个数据的网络路径,其中,所述每个数据的网络路径是所述第一数据集中的每个数据输入所述多个模型中的同一个模型后,所述被激活的神经元组成的网络路径;所述确定单元720还用于确定所述第一数据集中至少两个数据的网络路径之间的相似度;所述确定单元720还用于确定所述相似度高于第五阈值的多个数据;所述删除单元750用于删除所述多个数据中的部分数据。
在本申请实施例中,所述装置还包括添加单元760,所述添加单元760用于在所述确定单元根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,在所述质量参数低于所述第四阈值的情况下,将目标数据添加至所述第一数据集,获得更新后的第一数据集;所述确定单元720用于根据所述更新后的第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率;所述确定单元720用于根据所述多个模型中每个模型的神经元覆盖率,确定所述更新后的第一数据集相对于所述网络类型的质量参数。
在本申请实施例中,所述网络类型包括如下至少一项:多层感知机MLP、卷积神经网络CNN、循环神经网络RNN、图神经网络GNN以及深度信念网络DBN。
综上可知,本申请通过计算第一数据集对第一待训练网络的网络类型的神经元覆盖率,确定第一数据集相对于所述网络类型的质量参数,为工作人员提供了良好的选择标准,使得工作人员在对第一待训练网络训练的过程中,可以根据第一数据集相对于所述网络类型的质量参数,确定是否使用第一数据集,或者是否对第一数据集进行修改调整,从而提高神经网络的训练效率。
参见图8,图8是本申请中提供的一种服务器的结构示意图。该服务器可以是图7实施例中的数据集质量参数的确定装置。需要说明的,本实施方式的数据集质量参数的确定装置可以在如图8所示的云服务集群中实现,也可以在单个服务器中实现,本申请不作具体限定,所述云服务集群包括至少一个计算节点810以及至少一个存储节点820。
计算节点810包括一个或多个处理器811、通信接口812和存储器813。其中,处理器811、通信接口812和存储器813之间可以通过总线814连接。
处理器811包括一个或者多个通用处理器,其中,通用处理器可以是能够处理电子指令的任何类型的设备,包括中央处理器(Central Processing Unit,CPU)、微处理器、微控制器、主处理器、控制器以及ASIC(Application Specific Integrated Circuit,专用集成电路)等等。它能够是仅用于计算节点810的专用处理器或者能够与其它计算节点810共享。处理器811执行各种类型的数字存储指令,例如存储在存储器813中的软件或者固件程序,它能使计算节点810提供较宽的多种服务。
具体地,所述处理器811可以至少包括确定模块和训练模块,确定模块可以包括图7中确定单元所描述的功能,例如计算多个模型的神经元覆盖率,根据多个模型的神经元覆盖率确认所述第一数据集的质量参数,还可以是用于执行图3至图6B实施例描述的其他步骤,这里不再进行赘述;训练模块可以包括图7中训练单元所描述的功能,例如通过所述至少一个第二数据集以及多个第二待训练网络,得到所述多个模型,还可以是用于执行图3至图6B实施例描述的其他步骤,这里不再进行赘述。并且,关于这里未提及的各个功能模块或单元具体可参见前述图3-图6B所述实施例中的相关阐述,这里不再赘述。
通信接口812可以为有线接口(例如以太网接口),用于与其他计算节点或用户进行通信。当通信接口812为有线接口时,通信接口812可以采用TCP/IP之上的协议族,例如,RAAS协议、远程函数调用(Remote Function Call,RFC)协议、简单对象访问协议(SimpleObject Access Protocol,SOAP)协议、简单网络管理协议(Simple Network ManagementProtocol,SNMP)协议、公共对象请求代理体系结构(Common Object Request BrokerArchitecture,CORBA)协议以及分布式协议等等。
存储器813可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器也可以包括非易失性存储器(Non-VolatileMemory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD)存储器还可以包括上述种类的存储器的组合。
存储节点820包括一个或多个存储控制器822和存储阵列821。其中,存储控制器822和存储阵列821之间可以通过总线824连接。
存储控制器822包括一个或者多个通用处理器,其中,通用处理器可以是能够处理电子指令的任何类型的设备,包括CPU、微处理器、微控制器、主处理器、控制器以及ASIC等等。它能够是仅用于单个存储节点820的专用处理器或者能够与计算节点810或者其它存储节点820共享。可以理解,在本实施例中,每个存储节点包括一个存储控制器,在其他的实施例中,也可以多个存储节点共享一个存储控制器,此处不作具体限定。
存储阵列821可以包括一个或者多个存储器。存储器可以是非易失性存储器,例如ROM、快闪存储器、HDD或SSD存储器还可以包括上述种类的存储器的组合。例如,存储阵列可以是由多个HDD或者多个SDD组成,或者,存储阵列可以是由HDD以及SDD组成。其中,多个存储器在存储控制器822的协助下按不同的方式组合起来形成存储器组,从而提供比单个存储器更高的存储性能和提供数据备份技术。可选地,存储阵列821可以包括一个或者多个数据中心。多个数据中心可以设置在同一个地点,或者,分别在不同的地点,此处不作具体限定。存储阵列821可以存储有程序代码以及程序数据。其中,程序代码包括训练模块代码以及确定模块代码,质量参数计算的代码以及神经元覆盖率计算的代码等等。程序数据包括神经元覆盖率、第一数据集、多个第二数据集等等。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在处理器上运行时,图3-图6B所示的方法流程得以实现。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在处理器上运行时,图3-图6B所示的方法流程得以实现。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital Subscriber Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(Digital Video Disc,DVD))、或者半导体介质。半导体介质可以是SSD。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (19)

1.一种数据集质量参数的确定方法,所述方法包括:
获取第一待训练网络的网络类型;
根据所述第一待训练网络的网络类型,获取多个模型,所述多个模型的网络类型与所述第一待训练网络的网络类型相同,所述多个模型是多个第二待训练网络进行训练后得到的;
获取第一数据集,并根据所述第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率,所述神经元覆盖率是根据每个模型被激活的神经元数量与神经元总数之间的比值确定的,所述第一数据集是标注好的人脸图像的数据集;
根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数,其中,所述神经元覆盖率越高,所述质量参数越高。
2.根据权利要求1所述的方法,其特征在于,在所述获取多个模型之前,所述方法还包括:
获取至少一个第二数据集,其中,所述至少一个第二数据集与所述第一数据集的类别相同;
通过所述至少一个第二数据集以及所述多个第二待训练网络,得到所述多个模型,其中,所述多个模型中的一个模型,与所述多个第二待训练网络中的一个网络对应。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率包括:
将所述第一数据集输入所述多个模型,获得所述多个模型中每个模型的每个神经元的输出值;
根据所述多个模型中每个模型的每个神经元的输出值,确定所述每个模型被激活的神经元,其中,所述被激活的神经元包括所述输出值大于第一阈值的神经元;
根据所述每个模型被激活的神经元数量与神经元总数之间的比值,确定所述多个模型中每个模型的神经元覆盖率。
4.根据权利要求3所述的方法,其特征在于,在所述第一待训练网络的网络类型是卷积神经网络CNN的情况下,所述被激活的神经元包括:
所述CNN中全连接层输出值大于第二阈值的神经元,以及,所述CNN中卷积层被激活的输出矩阵对应的卷积核矩阵中的每个元素,其中,所述被激活的输出矩阵中每个元素之和的平均值大于第三阈值,所述卷积层的每一个输出矩阵对应一个卷积核矩阵;
所述神经元总数包括:全连接层的神经元总数,以及,卷积层全部卷积核矩阵中的元素总数。
5.根据权利要求4所述的方法,其特征在于,所述根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,所述方法还包括:
响应于查询请求,获取至少一个所述第一数据集对于一个或者多个网络类型的质量参数;
向发起所述查询请求的终端发送所述至少一个所述第一数据集相对于一个或者多个网络类型的质量参数,以选择至少部分所述至少一个所述第一数据集。
6.根据权利要求5所述的方法,其特征在于,所述根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,所述方法还包括:
在所述质量参数低于第四阈值的情况下,确定所述第一数据集中的每个数据的网络路径,其中,所述每个数据的网络路径是所述第一数据集中的每个数据输入所述多个模型中的同一个模型后,所述被激活的神经元组成的网络路径;
确定所述第一数据集中至少两个数据的网络路径之间的相似度;
确定所述相似度高于第五阈值的多个数据;
删除所述多个数据中的部分数据。
7.根据权利要求6所述的方法,其特征在于,所述根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,所述方法还包括:
在所述质量参数低于所述第四阈值的情况下,将目标数据添加至所述第一数据集,获得更新后的第一数据集;
根据所述更新后的第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率;
根据所述多个模型中每个模型的神经元覆盖率,确定所述更新后的第一数据集相对于所述网络类型的质量参数。
8.根据权利要求1-7任一项权利要求所述的方法,其特征在于,所述网络类型包括如下至少一项:多层感知机MLP、卷积神经网络CNN、循环神经网络RNN、图神经网络GNN以及深度信念网络DBN。
9.一种数据集质量参数的确定装置,所述装置包括获取单元以及确定单元,其中,
所述获取单元用于获取第一待训练网络的网络类型;
所述获取单元用于根据所述第一待训练网络的网络类型,获取多个模型,所述多个模型的网络类型与所述第一待训练网络的网络类型相同,所述多个模型是多个第二待训练网络进行训练后得到的;
所述确定单元用于获取第一数据集,并根据所述第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率,所述神经元覆盖率是根据每个模型被激活的神经元数量与神经元总数之间的比值确定的,所述第一数据集是标注好的人脸图像的数据集;
所述确定单元用于根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数,其中,所述神经元覆盖率越高,所述质量参数越高。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括训练单元,
所述获取单元还用于在所述获取多个模型之前,获取至少一个第二数据集,其中,所述至少一个第二数据集与所述第一数据集的类别相同;
所述训练单元用于通过所述至少一个第二数据集以及所述多个第二待训练网络,得到所述多个模型,其中,所述多个模型中的一个模型,与所述多个第二待训练网络中的一个网络对应。
11.根据权利要求10所述的装置,其特征在于,所述确定单元用于将所述第一数据集输入所述多个模型,获得所述多个模型中每个模型的每个神经元的输出值;
所述确定单元用于根据所述多个模型中每个模型的每个神经元的输出值,确定所述每个模型被激活的神经元,其中,所述被激活的神经元包括所述输出值大于第一阈值的神经元;
所述确定单元用于根据所述每个模型被激活的神经元数量与神经元总数之间的比值,确定所述多个模型中每个模型的神经元覆盖率。
12.根据权利要求11所述的装置,其特征在于,在所述第一待训练网络的网络类型是卷积神经网络CNN的情况下,所述被激活的神经元包括:
所述CNN中全连接层输出值大于第二阈值的神经元,以及,所述CNN中卷积层被激活的输出矩阵对应的卷积核矩阵中的每个元素,其中,所述被激活的输出矩阵中每个元素之和的平均值大于第三阈值,所述卷积层的每一个输出矩阵对应一个卷积核矩阵;
所述神经元总数包括:全连接层的神经元总数,以及,卷积层全部卷积核矩阵中的元素总数。
13.根据权利要求12所述的装置,其特征在于,所述装置还包括响应单元,
所述响应单元用于在所述确定单元根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,响应于查询请求,获取至少一个所述第一数据集对于一个或者多个网络类型的质量参数;
所述响应单元用于向发起所述查询请求的终端发送所述至少一个所述第一数据集对于一个或者多个网络类型的质量参数,以选择至少部分所述至少一个所述第一数据集。
14.根据权利要求13所述的装置,其特征在于,所述装置还包括删除单元,
所述确定单元还用于在根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,在所述质量参数低于第四阈值的情况下,确定所述第一数据集中的每个数据的网络路径,其中,所述每个数据的网络路径是所述第一数据集中的每个数据输入所述多个模型中的同一个模型后,所述被激活的神经元组成的网络路径;
所述确定单元还用于确定所述第一数据集中至少两个数据的网络路径之间的相似度;
所述确定单元还用于确定所述相似度高于第五阈值的多个数据;
所述删除单元用于删除所述多个数据中的部分数据。
15.根据权利要求14所述的装置,其特征在于,所述装置还包括添加单元,
所述添加单元用于在所述确定单元根据所述多个模型中每个模型的神经元覆盖率,确定所述第一数据集相对于所述网络类型的质量参数之后,在所述质量参数低于所述第四阈值的情况下,将目标数据添加至所述第一数据集,获得更新后的第一数据集;
所述确定单元用于根据所述更新后的第一数据集以及所述多个模型,确定所述多个模型中每个模型的神经元覆盖率;
所述确定单元用于根据所述多个模型中每个模型的神经元覆盖率,确定所述更新后的第一数据集相对于所述网络类型的质量参数。
16.根据权利要求9-15任一项权利要求所述的装置,其特征在于,所述网络类型包括如下至少一项:多层感知机MLP、卷积神经网络CNN、循环神经网络RNN、图神经网络GNN以及深度信念网络DBN。
17.一种电子设备,其特征在于,包括处理器和存储器,其中,所述存储器用于存储计算机程序指令,所述处理器被配置用于调用所述计算机程序指令,执行权利要求1至8任一权利要求所述的方法。
18.一种计算机可读存储介质,用于存储计算机可读取的指令,其特征在于,所述指令被执行时执行权利要求1至8任一权利要求所述的方法。
19.一种计算机程序产品,其特征在于,包括计算机程序,当所述计算机程序被计算设备读取并执行时,使得所述计算设备执行如权利要求1至8任一权利要求所述的方法。
CN201911337879.8A 2019-12-23 2019-12-23 数据集质量参数的确定方法、装置及电子设备 Active CN111079930B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911337879.8A CN111079930B (zh) 2019-12-23 2019-12-23 数据集质量参数的确定方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911337879.8A CN111079930B (zh) 2019-12-23 2019-12-23 数据集质量参数的确定方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN111079930A CN111079930A (zh) 2020-04-28
CN111079930B true CN111079930B (zh) 2023-12-19

Family

ID=70316794

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911337879.8A Active CN111079930B (zh) 2019-12-23 2019-12-23 数据集质量参数的确定方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN111079930B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113743576B (zh) * 2020-05-29 2024-05-07 精工爱普生株式会社 数据获取方法和装置、相似度计算方法和装置及存储介质
CN112163670A (zh) * 2020-10-14 2021-01-01 上海交通大学 对抗攻击的检测方法、***、设备、计算机可读存储介质
CN112651987B (zh) * 2020-12-30 2024-06-18 内蒙古自治区农牧业科学院 一种样方草地覆盖度计算方法及***

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106548234A (zh) * 2016-11-17 2017-03-29 北京图森互联科技有限责任公司 一种神经网络剪枝方法及装置
CN106991477A (zh) * 2016-01-20 2017-07-28 南京艾溪信息科技有限公司 一种人工神经网络压缩编码装置和方法
KR101897962B1 (ko) * 2017-11-27 2018-10-31 한국인터넷진흥원 신경망 모델을 위한 기계 학습 방법 및 그 장치
CN109584290A (zh) * 2018-12-03 2019-04-05 北京航空航天大学 一种基于卷积神经网络的立体图像匹配方法
CN110135558A (zh) * 2019-04-22 2019-08-16 南京邮电大学 基于可变强度组合测试的深度神经网络测试充分性方法
CN110363282A (zh) * 2019-06-06 2019-10-22 中国科学院信息工程研究所 一种基于图卷积网络的网络节点标签主动学习方法和***

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10474950B2 (en) * 2015-06-29 2019-11-12 Microsoft Technology Licensing, Llc Training and operation of computational models
US10831444B2 (en) * 2016-04-04 2020-11-10 Technion Research & Development Foundation Limited Quantized neural network training and inference

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106991477A (zh) * 2016-01-20 2017-07-28 南京艾溪信息科技有限公司 一种人工神经网络压缩编码装置和方法
CN106548234A (zh) * 2016-11-17 2017-03-29 北京图森互联科技有限责任公司 一种神经网络剪枝方法及装置
KR101897962B1 (ko) * 2017-11-27 2018-10-31 한국인터넷진흥원 신경망 모델을 위한 기계 학습 방법 및 그 장치
CN109584290A (zh) * 2018-12-03 2019-04-05 北京航空航天大学 一种基于卷积神经网络的立体图像匹配方法
CN110135558A (zh) * 2019-04-22 2019-08-16 南京邮电大学 基于可变强度组合测试的深度神经网络测试充分性方法
CN110363282A (zh) * 2019-06-06 2019-10-22 中国科学院信息工程研究所 一种基于图卷积网络的网络节点标签主动学习方法和***

Also Published As

Publication number Publication date
CN111079930A (zh) 2020-04-28

Similar Documents

Publication Publication Date Title
US11809955B2 (en) Processing images using deep neural networks
WO2021042828A1 (zh) 神经网络模型压缩的方法、装置、存储介质和芯片
WO2021155706A1 (zh) 利用不平衡正负样本对业务预测模型训练的方法及装置
CN111695415B (zh) 图像识别方法及相关设备
WO2019228317A1 (zh) 人脸识别方法、装置及计算机可读介质
CN108764195B (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
WO2020094060A1 (zh) 推荐方法及装置
CN111079930B (zh) 数据集质量参数的确定方法、装置及电子设备
CN108647736B (zh) 一种基于感知损失和匹配注意力机制的图像分类方法
JP6159489B2 (ja) 顔認証方法およびシステム
CN117456297A (zh) 图像生成方法、神经网络的压缩方法及相关装置、设备
CN111191791A (zh) 机器学习模型的应用方法、训练方法、装置、设备及介质
CN112639828A (zh) 数据处理的方法、训练神经网络模型的方法及设备
WO2019232854A1 (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
JP6107531B2 (ja) 特徴抽出プログラム及び情報処理装置
CN113239914B (zh) 课堂学生表情识别及课堂状态评估方法、装置
CN113628059A (zh) 一种基于多层图注意力网络的关联用户识别方法及装置
Leroux et al. Resource-constrained classification using a cascade of neural network layers
WO2019232855A1 (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
TWI803243B (zh) 圖像擴增方法、電腦設備及儲存介質
CN109101984B (zh) 一种基于卷积神经网络的图像识别方法及装置
WO2019232844A1 (zh) 手写模型训练方法、手写字识别方法、装置、设备及介质
CN116524581B (zh) 一种人眼图像光斑分类方法、***、设备及存储介质
CN115952438B (zh) 社交平台用户属性预测方法、***、移动设备及存储介质
CN112036446B (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