CN111738353B - 样本筛选方法、装置和计算机设备 - Google Patents
样本筛选方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN111738353B CN111738353B CN202010693963.XA CN202010693963A CN111738353B CN 111738353 B CN111738353 B CN 111738353B CN 202010693963 A CN202010693963 A CN 202010693963A CN 111738353 B CN111738353 B CN 111738353B
- Authority
- CN
- China
- Prior art keywords
- sample
- samples
- data
- screened
- specified
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Abstract
本申请涉及人工智能及区块链技术,揭示了样本筛选方法,包括:将所有待筛选样本输入Yolov3神经网络模型;获取Yolov3神经网络模型识别每个待筛选样本分别得到的计算机标注框数据,以及预先得到的每个待筛选样本分别对应的人工标注框数据;根据每个待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个待筛选样本分别对应的平均精准度;比较各待筛选样本分别对应的平均精准度与第一预设值的大小关系;将平均精准度小于等于第一预设值的待筛选样本划分为劣质样本,将平均精准度大于第一预设值的待筛选样本划分为正常样本。通过计算机标注框数据和人工标注框数据,计算样本的平均精准度,实现自动、快速挑拣样本。
Description
技术领域
本申请涉及人工智能及区块链技术领域,特别是涉及到样本筛选方法、装置和计算机设备。
背景技术
训练样本对模型训练起到至关重要的作用,但由于样本标注存在人为标注的主观因素,由于训练样本数量多,无法做到通过人工一一筛选掉,拖影、遮挡、字迹不清等部分劣质样本,影响模型训练效果。或者部分场景的样本稀缺,导致训练样本严重不足,使训练后的模型精准度不高。现有技术无法识别并淘汰劣质样本,无法实现自动、快速挑拣出正常样本。
发明内容
本申请的主要目的为提供样本筛选方法,旨在解决无法自动快速地挑拣出正常样本的技术问题。
本申请提出一种样本筛选方法,包括:
将所有待筛选样本输入Yolov3神经网络模型;
获取所述Yolov3神经网络模型识别每个所述待筛选样本分别得到的计算机标注框数据,以及预先得到的每个所述待筛选样本分别对应的人工标注框数据;
根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个所述待筛选样本分别对应的平均精准度;
比较各所述待筛选样本分别对应的平均精准度与第一预设值的大小关系;
将平均精准度大于第一预设值的待筛选第二样本划分为正常样本。
优选地,所述根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个所述待筛选样本分别对应的平均精准度的步骤,包括:
获取指定样本对应的第一数组的左上角的第一坐标数据和右下角的第二坐标数据,以及所述指定样本对应的第二数组的左上角的第三坐标数据和右下角的第四坐标数据,其中,所述指定样本为所有所述待筛选样本中的任意一个,所述坐标数据包括横坐标数据和纵坐标数据,所述第一数组为所述指定样本的计算机标注框数据,所述第二数组为所述指定样本的人工标注框数据;
根据所述第一坐标数据和所述第三坐标数据的比较数据,以及所述第二坐标数据和所述第四坐标数据的比较数据,得到所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的交集,以及所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的并集;
根据公式Iou=交集/并集,计算所述指定样本的平均精准度;
根据所述指定样本的平均精准度的计算过程,分别计算每个所述待筛选样本分别对应的平均精准度。
优选地,所述将平均精准度大于第一预设值的待筛选样本划分为正常样本的步骤之后,包括:
判断所述正常样本的数量是否小于预设样本数量;
若是,则从所述正常样本中筛选出满足预设条件的优质样本;
通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量。
优选地,从所述正常样本中筛选出满足预设条件的优质样本的步骤,包括:
获取所有所述待筛选样本分别对应的平均精准度组成的数据分布图;
从所述数据分布图中,计算所述正常样本占比所有所述待筛选样本的指定比率;
根据所述指定比率确定优质样本对应的最低平均精准度值;
根据所述最低平均精准度值确定优质样本。
优选地,通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量的步骤,包括:
判断待数据加强的第一优质样本的数据特征是否包括显示状态信息,其中,所述显示状态信息包括正立显示或禁止翻转,所述第一优质样本为所有所述优质样本中的任意一个;
若是,则选择小角度偏移或者水平镜像的方式进行数据加强;
若否,则选择数据增强耗时最少的指定增强方式进行数据加强,其中,所述指定增强方式包括水平翻转、垂直翻转、镜像或小角度偏移中的任一种。
优选地,从所述正常样本中筛选出满足预设条件的优质样本的步骤,包括:
获取样本筛选对应的任务目标;
根据所述任务目标确定筛选所述优质样本对应的第二预设值;
将平均精准度值大于所述第二预设值的正常样本,确定为优质样本。
优选地,所述将平均精准度大于第一预设值的待筛选样本划分为正常样本的步骤之后,包括:
判断所述正常样本的样本集合内的样本数量是否满足预设要求;
若否,则获取人工对劣质样本的复核样本集;
重新获取所述复核样本集内各样本的平均精准度;
将所述复核样本集内平均精准度与所述第一预设值相差量在指定阈值内的各样本,纳入所述正常样本。
本申请还提供了一种样本筛选装置,包括:
第一筛选模块,用于将所有待筛选样本输入Yolov3神经网络模型;
第一获取模块,用于获取所述Yolov3神经网络模型识别每个所述待筛选样本分别得到的计算机标注框数据,以及预先得到的每个所述待筛选样本分别对应的人工标注框数据;
计算模块,用于根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个所述待筛选样本分别对应的平均精准度;
比较模块,用于比较各所述待筛选样本分别对应的平均精准度与第一预设值的大小关系;
划分模块,用于将平均精准度大于第一预设值的待筛选第二样本划分为正常样本。
本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
本申请通过Yolov3神经网络模型识别每个样本中指定对象的计算机标注框数据和人工标注框数据,并根据计算机标注框数据和人工标注框数据计算平均精准度,然后根据平均精准度与阈值的关系,进行样本评价和筛选,实现自动、快速挑拣出正常样本。
附图说明
图1 本申请一实施例的样本筛选方法流程示意图;
图2本申请一实施例的样本筛选装置结构示意图;
图3 本申请一实施例的计算机设备内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请一实施例的样本筛选方法,包括:
S1:将所有待筛选样本输入Yolov3神经网络模型;
S2:获取所述Yolov3神经网络模型识别每个所述待筛选样本分别得到的计算机标注框数据,以及预先得到的每个所述待筛选样本分别对应的人工标注框数据;
S3:根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个所述待筛选样本分别对应的平均精准度;
S4:比较各所述待筛选样本分别对应的平均精准度与第一预设值的大小关系;
S5:将平均精准度大于第一预设值的待筛选第二样本划分为正常样本。
本实施例中,待筛选样本包括图片,Yolo(You Only Look Once: Unified, Real-Time Object Detection),是Joseph Redmon和Ali Farhadi等人于2015年提出的基于单个神经网络的目标检测系统,Yolov3是在原版Yolo的基础上的升级版,进一步提高了检测的精度和速度。上述计算机标注框数据和人工标注框数据,均至少分别包括矩形标注框两个相对的顶点对应的坐标数据,比如,计算机标注框数据对应的矩形标注框表示为矩形ABCD,则计算机标注框数据至少包括A点和C点的坐标数据,或者B点和D点的坐标数据;计算机标注框数据对应的矩形标注框表示为矩形A’B’C’D’,则计算机标注框数据至少包括A’点和C’点的坐标数据,或者B’点和D’点的坐标数据,且A点、B点、C点和D点与且A’点、B’点、C’点和D’点分别一一对应。Yolov3神经网络模型识别每个所述待筛选样本分别得到的计算机标注框数据,为识别样本中的目标对象所处的图像中的坐标位置区域,包括通过矩形标注框的左上角和右下角分别对应的坐标数据围成的矩形区域。比如左上角坐标数据为(x1,y1),右下角坐标数据为(x2,y2),其中x1<x2,y1>y2,则由四条直线y=x1,y=y1,y=x2以及y=y2组成的矩形区域为计算机标注框数据对应的区域,上述计算机标注框数据包括上述两个左上角和右下角的坐标数据分别对应的数组。上述人工标注框数据是指人工利用标注工具进行标注,然后生成的一个xml的文件。人工标注框数据的表示方式同计算机标注框数据,均为圈出目标对象所在的区域位置,但由于标注方法不同,导致标注同一图片中的同一目标对象时,两种标注方式确定的目标对象的边界线存在差异。上述的平均精准度表示这种差异的大小,平均精准度Iou=交集/并集,即计算同一目标对象的计算机标注框数据与人工标注框数据的交集和并集相差不大时,表示差异小,反之差异大。然后将差异数据较大的列为劣质样本进行排除,将平均精准度小于等于第一预设值的待筛选第一样本划分为劣质样本,以免影响模型训练的精准度。上述的第一预设值比如为min_Iou,其大小可根据任务场景的目标类型进行设定。上述的任务场景的目标类型包括提高模型的样本召回率和提高模型的泛化能力等,比如要求提高模型的样本召回率,则第一预设值可在较大的区域范围内,比如定为整体样本平均精准度Iou的数据分布的从大到小的50%至60%区域内的某一值;要求提高模型的泛化能力,则第一预设值可在较小的区域范围内,比如定为整体样本平均精准度Iou的数据分布的从大到小的20%至30%区域内的某一值。本申请通过Yolov3神经网络模型识别每个样本中指定对象的计算机标注框数据和人工标注框数据,并根据计算机标注框数据和人工标注框数据计算平均精准度,然后根据平均精准度与阈值的关系,进行样本评价和筛选,实现自动、快速挑拣出劣质样本。
进一步地,所述根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个所述待筛选样本分别对应的平均精准度的步骤S3,包括:
S31:获取指定样本对应的第一数组的左上角的第一坐标数据和右下角的第二坐标数据,以及所述指定样本对应的第二数组的左上角的第三坐标数据和右下角的第四坐标数据,其中,所述指定样本为所有所述待筛选样本中的任意一个,所述坐标数据包括横坐标数据和纵坐标数据,所述第一数组为所述指定样本的计算机标注框数据,所述第二数组为所述指定样本的人工标注框数据;
S32:根据所述第一坐标数据和所述第三坐标数据的比较数据,以及所述第二坐标数据和所述第四坐标数据的比较数据,得到所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的交集,以及所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的并集;
S33:根据公式Iou=交集/并集,计算所述指定样本的平均精准度;
S34:根据所述指定样本的平均精准度的计算过程,分别计算每个所述待筛选样本分别对应的平均精准度。
上述计算机标注框数据和人工标注框数据均为矩形标注框的坐标数据组成的数组,第一数组表示指定样本的计算机标注框数据,即计算机标注框的左上角和右下角两个相对角的坐标数据;第二数组表示指定样本的人工标注框数据,即人工标注框的左上角和右下角两个相对角的坐标数据。根据坐标数据锁定两个矩形标注框的交集区域和并集区域,以确定指定样本的品质,上述交集区域指同一目标对象的人工标注框和计算机标注框的重合区域,并集区域指包括同一目标对象的人工标注框和计算机标注框的最大标注区域。比如计算机标注框的左上角与人工标注框的左上角坐标数据一致,计算机标注框的右下角与人工标注框的右下角坐标数据一致,表明两个标注框的左上角重合,且两个标注框的右下角重合,则表明两个标注框重合,则Iou=交集/并集=1。再比如,指定样本中的指定目标对象的计算机标注框数据为左上角(1,2),右下角(3,1),指定目标对象的人工标注框数据为左上角(1,1.9),右下角(3.1,1),则交集区域为(1,1.9)和(3,1)为对角的矩形区域,并集区域为(1,2)和(3,1)为对角的矩形区域,加上(3,1.9)和(3.1,1)为对角的矩形区域的加和。上述的计算机标注框和人工标注框针对指定样本中的目标对象进行标注,若同一指定样本中包括两个或两个以上的目标对象时,通过引入Iou=交集/并集,计算同一指定样本中所有目标对象对应的交并比Iou,然后通过将所有目标对象的Iou加和求平均,得到指定样本的平均精准度。比如对于同一待筛选样本的两个矩形标注框中,同时存在的数组组成的区域为交集区域,两个矩形标注框内所有数据组成的区域为并集区域。在深度神经网络的训练过程中,样本的好坏决定了训练效果,由于样本标注存在主观成分,劣质样本加入训练集参与训练,导致模型训练复杂度大大增加,效果不佳,比如表现为欠拟合。本申请实施例通过Iou=交集/并集,计算所述指定样本的平均精准度,提供了自动、快速地筛选劣质样本的方法,无需人工对全量样本进行筛选,提高样本筛选的准确度以及效率。
进一步地,所述将平均精准度大于第一预设值的待筛选样本划分为正常样本的步骤S5之后,包括:
S6:判断所述正常样本的数量是否小于预设样本数量;
S7:若是,则从所述正常样本中筛选出满足预设条件的优质样本;
S8:通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量。
本实施例通过将样本的平均精准度Iou低于第一预设值的,确定为劣质样本,而将样本的平均精准度Iou高于第一预设值的,确定为正常样本。然后看筛选出的正常样本量是否满足训练模型需要的样本数量,满足则不用进行数据增强增加样本量,如果不满足则需要进行数据增强以增加样本量。但在数据增强过程中,为保证样本质量,选择正常样本中的优质样本进行数据增强,上述优质样本指所有正常样本中,样本的平均精准度Iou比较大的样本,比如按照平均精准度从小到大排序中排位在后的80%以上的样本。上述数据增强的方式包括但不限于样本横/纵向平移、样本翻转、样本镜面处理、样本倾斜角处理等。通过多种方式实现一个优质样本的多种数据增强方式分别对应的新样本数据,以解决样本数量不满足训练模型需要的问题。本申请实施例的数据增强技术通过Keras提供的API实现,Keras是一个用 Python 编写的高级神经网络 API,使用者可根据业务需求进行数据增强方式的选择和配置。
进一步地,所述从所述正常样本中筛选出满足预设条件的优质样本的步骤S7,包括:
S71:获取所有所述待筛选样本分别对应的平均精准度组成的数据分布图;
S72:从所述数据分布图中,计算所述正常样本占比所有所述待筛选样本的指定比率;
S73:根据所述指定比率确定优质样本对应的最低平均精准度值;
S74:根据所述最低平均精准度值确定优质样本。
本申请的数据分布图包括所有待筛选样本以及所有待筛选样本分别对应的平均精度值,可通过随机列表的形式呈现,或通过柱状图等显示变化趋势的分布图表示。本实施例通过正常样本占比所有所述待筛选样本的指定比率,设定优质样本的筛选下限值,将样本数据的平均精准度Iou高于上述筛选下限值,称为优质样本。比如上述筛选下限值表示为max_Iou,上述min_Iou和max_Iou均根据具体的任务场景的目标类型进行设定。比如场景一:使用者需训练识别食物类别的神经网络模型,用于构建计算食物卡路里的相机App,任务场景的目标类型为无需过于泛化,即着重于精准识别出食物的类别是哪种水果、哪种蔬菜等等,可将阈值提高,也就是对训练样本的要求更为严格,模型召回率低。场景二:使用者需训练统计小区流浪猫狗数量的神经网络模型,此场景着重需要识别出某区域是否有流浪猫狗,更加注重识别对象的召回率,提高模型的泛化能力,分拣样本时可将阈值调低,训练的要求更为宽松。比如对于场景一:min_Iou=40%比率处的平均精准度Iou,低于40%比率处的平均精准度Iou的样本均为劣质样本,进行舍弃;高于40%比率处的平均精准度Iou的样本均为正常样本;max_Iou=90%比率处的平均精准度Iou,则高于90%比率处的平均精准度Iou的样本为优质样本。对于场景二:min_Iou=20%比率处的平均精准度Iou,低于20%比率处的平均精准度Iou的样本均为劣质样本,进行舍弃,高于20%比率处的平均精准度Iou的样本均为正常样本;max_Iou=80%比率处的平均精准度Iou,高于80%比率处的平均精准度Iou的样本为优质样本。即场景一对样本的要求严格度大于场景二对样本的要求严格度,对于同样数量的全量样本,场景一中正常样本数量小于场景二中正常样本数量。
进一步地,通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量的步骤S8,包括:
S81:判断待数据加强的第一优质样本的数据特征是否包括显示状态信息,其中,所述显示状态信息包括正立显示或禁止翻转,所述第一优质样本为所有优质样本中的任意一个;
S82:若是,则选择小角度偏移或者水平镜像的方式进行数据加强;
S83:若否,则选择数据增强耗时最少的指定增强方式进行数据加强,其中,所述指定增强方式包括水平翻转、垂直翻转、镜像或小角度偏移中的任一种。
本实施例在调用Keras提供的API实现数据增强的过程前,先根据样本的数据特征判断样本的翻转增强等方式,是否影响样本的数据特征,是否最终影响模型的训练。上述标注方式符合笛卡尔坐标系,即以样本图片的左上角为原点,用标注框的左上角横纵坐标,右下角横纵坐标,描述出标注的目标对象所处区域位置。采用的数据增强方式是对图片样本进行位移平移或镜面处理等方式,因为原标注方式符合笛卡尔坐标系规则,通过位移平移或镜面处理的变化量,推算出新样本中原对象位移平移或镜像后的具体标注坐标。但并不是所有的数据增强方式均适合于任一样本,需要进行优化选择。如水平翻转会影响样本数据特征的,则不宜选择水平镜像增强,应选择小角度偏移或者垂直镜像,比如部分交通标识,包括左、右转标识等。如垂直翻转会影响样本数据特征,则不宜选择垂直镜像数据增强,应选择小角度偏移或者水平镜像,如直立的人体等。如无水平和垂直方向的数据特征,所有的数据增强方式均可选择,如箱体类物品,球体等。
进一步地,所述从所述正常样本中筛选出满足预设条件的优质样本的步骤S7,包括:
5701:获取样本筛选对应的任务目标;
S702:根据所述任务目标确定筛选所述优质样本对应的第二预设值;
S703:将平均精准度值大于所述第二预设值的正常样本,确定为优质样本。
本实施例通过配置不同任务目标分别对应的第二预设值,即max_Iou,来确定正常样本中的优质样本。通过前三次的分拣,大多数劣质样本已经被挑选,如想得到更高的精度,可将min_Iou进行轻微的提高,如提高至0.42等。在数据增强情况中,选择优质样本进行数据增强,需要计算训练样本的集中度,需增强的目标对象的人工标注框的数据量,与其他对象的人工标注框的数据量的相差情况,以根据相差情况微调max_Iou。如果相差较大,比如相差1个数量级以上,说明需增强的对象太少,可以将max_Iou设置为0.6,此时平均精准度Iou落入0.6到1区间内的数据量较多;如果相差较小,如差别在1个数量级之内的,可将max_Iou设置为0.8,可选出更为精确的优质样本进行增强,上述第二预设值可通过配置文件的配置表格实现自动配置。上述的第一预设值,也可根据上述方式实现自动配置和微调。如对深度神经网络模型的精度要求较高,样本召回率要求较低时:分拣劣质样本情况中,根据多次测试效果得到。比如可在第1次至第3次时,min_Iou设置为0.4,筛选规则较为严格,落入平均精准度Iou在0到0.4区间内的样本较多,意味着劣质样本数量较多。上述实施例均以一个样本中存在一个目标对象为例,上述样本为一张图片。对于一张图片中存在两个或两个以上的目标对象时,每个目标对象存在各自独立的一套max_Iou与min_Iou,并遵循对应的阈值进行分拣或者数据增强。对于不同的任务,相同的样本根据任务目标涉及的目标对象不同,被筛选的结果也不同,可能在一任务中被筛选为劣质样本,在另一任务中可能筛选为正常样本或优质样本。
进一步地,所述将平均精准度大于第一预设值的待筛选样本划分为正常样本的步骤S5之后,包括:
S501:判断所述正常样本的样本集合内的样本数量是否满足预设要求;
S502:若否,则获取人工对劣质样本的复核样本集;
S503:重新获取所述复核样本集内各样本的平均精准度;
S504:将所述复核样本集内平均精准度与所述第一预设值相差量在指定阈值内的各样本,纳入所述正常样本。
本实施例中,将确定为劣质样本的数量通过接通人工复核环节,实现二次筛选,以避免在某些领域数据非常缺乏,无法进行模型训练。通过人工复核增强现有正常样本的数量,以降低数据增强的压力。分拣后的样本数量一般比较少,由于这批样本是训练后的模型判定为劣质样本的,会存在误识别部分样本的情况,所以对这批样本进行人工复核,将误识别为劣质样本的样本筛选出来。有部分场景的样本存量很少,采集难度大,互联网上的图片不符合训练要求,样本不够丰富会导致模型过拟合,可以通过此方法对样本数据进行分拣与数据增强。上述重新获取所述复核样本集内各样本的平均精准度,为前一次筛选中被确定为劣质样本时该样本的平均精准度,和本次再筛选时该样本的平均精准度的平均值。
本申请的数据处理过程以及数据存储过程,均在区块链上完成,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
参照图2,本申请一实施例的样本筛选装置,包括:
第一筛选模块1,用于将所有待筛选样本输入Yolov3神经网络模型;
第一获取模块2,用于获取所述Yolov3神经网络模型识别每个所述待筛选样本分别得到的计算机标注框数据,以及预先得到的每个所述待筛选样本分别对应的人工标注框数据;
计算模块3,用于根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个所述待筛选样本分别对应的平均精准度;
比较模块4,用于比较各所述待筛选样本分别对应的平均精准度与第一预设值的大小关系;
划分模块5,用于将平均精准度大于第一预设值的待筛选第二样本划分为正常样本。
本实施例中,待筛选样本包括图片,Yolo(You Only Look Once: Unified, Real-Time Object Detection),是Joseph Redmon和Ali Farhadi等人于2015年提出的基于单个神经网络的目标检测系统,Yolov3是在原版Yolo的基础上的升级版,进一步提高了检测的精度和速度。上述计算机标注框数据和人工标注框数据,均至少分别包括矩形标注框两个相对的顶点对应的坐标数据,比如,计算机标注框数据对应的矩形标注框表示为矩形ABCD,则计算机标注框数据至少包括A点和C点的坐标数据,或者B点和D点的坐标数据;计算机标注框数据对应的矩形标注框表示为矩形A’B’C’D’,则计算机标注框数据至少包括A’点和C’点的坐标数据,或者B’点和D’点的坐标数据,且A点、B点、C点和D点与且A’点、B’点、C’点和D’点分别一一对应。Yolov3神经网络模型识别每个所述待筛选样本分别得到的计算机标注框数据,为识别样本中的目标对象所处的图像中的坐标位置区域,包括通过矩形标注框的左上角和右下角分别对应的坐标数据围成的矩形区域。比如左上角坐标数据为(x1,y1),右下角坐标数据为(x2,y2),其中x1<x2,y1>y2,则由四条直线y=x1,y=y1,y=x2以及y=y2组成的矩形区域为计算机标注框数据对应的区域,上述计算机标注框数据包括上述两个左上角和右下角的坐标数据分别对应的数组。上述人工标注框数据是指人工利用标注工具进行标注,然后生成的一个xml的文件。人工标注框数据的表示方式同计算机标注框数据,均为圈出目标对象所在的区域位置,但由于标注方法不同,导致标注同一图片中的同一目标对象时,两种标注方式确定的目标对象的边界线存在差异。上述的平均精准度表示这种差异的大小,平均精准度Iou=交集/并集,即计算同一目标对象的计算机标注框数据与人工标注框数据的交集和并集相差不大时,表示差异小,反之差异大。然后将差异数据较大的列为劣质样本进行排除,将平均精准度小于等于第一预设值的待筛选第一样本划分为劣质样本,以免影响模型训练的精准度。上述的第一预设值比如为min_Iou,其大小可根据任务场景的目标类型进行设定。上述的任务场景的目标类型包括提高模型的样本召回率和提高模型的泛化能力等,比如要求提高模型的样本召回率,则第一预设值可在较大的区域范围内,比如定为整体样本平均精准度Iou的数据分布的从大到小的50%至60%区域内的某一值;要求提高模型的泛化能力,则第一预设值可在较小的区域范围内,比如定为整体样本平均精准度Iou的数据分布的从大到小的20%至30%区域内的某一值。本申请通过Yolov3神经网络模型识别每个样本中指定对象的计算机标注框数据和人工标注框数据,并根据计算机标注框数据和人工标注框数据计算平均精准度,然后根据平均精准度与阈值的关系,进行样本评价和筛选,实现自动、快速挑拣出劣质样本。
进一步地,计算模块3,包括:
第一获取单元,用于获取指定样本对应的第一数组的左上角的第一坐标数据和右下角的第二坐标数据,以及所述指定样本对应的第二数组的左上角的第三坐标数据和右下角的第四坐标数据,其中,所述指定样本为所有所述待筛选样本中的任意一个,所述坐标数据包括横坐标数据和纵坐标数据,所述第一数组为所述指定样本的计算机标注框数据,所述第二数组为所述指定样本的人工标注框数据;
第一得到单元,用于根据所述第一坐标数据和所述第三坐标数据的比较数据,以及所述第二坐标数据和所述第四坐标数据的比较数据,得到所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的交集,以及所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的并集;
第一计算单元,用于根据公式Iou=交集/并集,计算所述指定样本的平均精准度;
第二计算单元,用于根据所述指定样本的平均精准度的计算过程,分别计算每个所述待筛选样本分别对应的平均精准度。
上述计算机标注框数据和人工标注框数据均为矩形标注框的坐标数据组成的数组,第一数组表示指定样本的计算机标注框数据,即计算机标注框的左上角和右下角两个相对角的坐标数据;第二数组表示指定样本的人工标注框数据,即人工标注框的左上角和右下角两个相对角的坐标数据。根据坐标数据锁定两个矩形标注框的交集区域和并集区域,以确定指定样本的品质,上述交集区域指同一目标对象的人工标注框和计算机标注框的重合区域,并集区域指包括同一目标对象的人工标注框和计算机标注框的最大标注区域。比如计算机标注框的左上角与人工标注框的左上角坐标数据一致,计算机标注框的右下角与人工标注框的右下角坐标数据一致,表明两个标注框的左上角重合,且两个标注框的右下角重合,则表明两个标注框重合,则Iou=交集/并集=1。再比如,指定样本中的指定目标对象的计算机标注框数据为左上角(1,2),右下角(3,1),指定目标对象的人工标注框数据为左上角(1,1.9),右下角(3.1,1),则交集区域为(1,1.9)和(3,1)为对角的矩形区域,并集区域为(1,2)和(3,1)为对角的矩形区域,加上(3,1.9)和(3.1,1)为对角的矩形区域的加和。上述的计算机标注框和人工标注框针对指定样本中的目标对象进行标注,若同一指定样本中包括两个或两个以上的目标对象时,通过引入Iou=交集/并集,计算同一指定样本中所有目标对象对应的交并比Iou,然后通过将所有目标对象的Iou加和求平均,得到指定样本的平均精准度。比如对于同一待筛选样本的两个矩形标注框中,同时存在的数组组成的区域为交集区域,两个矩形标注框内所有数据组成的区域为并集区域。在深度神经网络的训练过程中,样本的好坏决定了训练效果,由于样本标注存在主观成分,劣质样本加入训练集参与训练,导致模型训练复杂度大大增加,效果不佳,比如表现为欠拟合。本申请实施例通过Iou=交集/并集,计算所述指定样本的平均精准度,提供了自动、快速地筛选劣质样本的方法,无需人工对全量样本进行筛选,提高样本筛选的准确度以及效率。
进一步地,样本筛选装置,包括:
第一判断模块,用于判断所述正常样本的数量是否小于预设样本数量;
第二筛选模块,用于若小于预设样本数量,则从所述正常样本中筛选出满足预设条件的优质样本;
数据加强模块,用于通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量。
本实施例通过将样本的平均精准度Iou低于第一预设值的,确定为劣质样本,而将样本的平均精准度Iou高于第一预设值的,确定为正常样本。然后看筛选出的正常样本量是否满足训练模型需要的样本数量,满足则不用进行数据增强增加样本量,如果不满足则需要进行数据增强以增加样本量。但在数据增强过程中,为保证样本质量,选择正常样本中的优质样本进行数据增强,上述优质样本指所有正常样本中,样本的平均精准度Iou比较大的样本,比如按照平均精准度从小到大排序中排位在后的80%以上的样本。上述数据增强的方式包括但不限于样本横/纵向平移、样本翻转、样本镜面处理、样本倾斜角处理等。通过多种方式实现一个优质样本的多种数据增强方式分别对应的新样本数据,以解决样本数量不满足训练模型需要的问题。本申请实施例的数据增强技术通过Keras提供的API实现,Keras是一个用 Python 编写的高级神经网络 API,使用者可根据业务需求进行数据增强方式的选择和配置。
进一步地,第二筛选模块,包括:
第二获取单元,用于获取所有所述待筛选样本分别对应的平均精准度组成的数据分布图;
第三计算单元,用于从所述数据分布图中,计算所述正常样本占比所有所述待筛选样本的指定比率;
第一确定单元,用于根据所述指定比率确定优质样本对应的最低平均精准度值;
第二确定单元,用于根据所述最低平均精准度值确定优质样本。
本申请的数据分布图包括所有待筛选样本以及所有待筛选样本分别对应的平均精度值,可通过随机列表的形式呈现,或通过柱状图等显示变化趋势的分布图表示。本实施例通过正常样本占比所有所述待筛选样本的指定比率,设定优质样本的筛选下限值,将样本数据的平均精准度Iou高于上述筛选下限值,称为优质样本。比如上述筛选下限值表示为max_Iou,上述min_Iou和max_Iou均根据具体的任务场景的目标类型进行设定。比如场景一:使用者需训练识别食物类别的神经网络模型,用于构建计算食物卡路里的相机App,任务场景的目标类型为无需过于泛化,即着重于精准识别出食物的类别是哪种水果、哪种蔬菜等等,可将阈值提高,也就是对训练样本的要求更为严格,模型召回率低。场景二:使用者需训练统计小区流浪猫狗数量的神经网络模型,此场景着重需要识别出某区域是否有流浪猫狗,更加注重识别对象的召回率,提高模型的泛化能力,分拣样本时可将阈值调低,训练的要求更为宽松。比如对于场景一:min_Iou=40%比率处的平均精准度Iou,低于40%比率处的平均精准度Iou的样本均为劣质样本,进行舍弃;高于40%比率处的平均精准度Iou的样本均为正常样本;max_Iou=90%比率处的平均精准度Iou,则高于90%比率处的平均精准度Iou的样本为优质样本。对于场景二:min_Iou=20%比率处的平均精准度Iou,低于20%比率处的平均精准度Iou的样本均为劣质样本,进行舍弃,高于20%比率处的平均精准度Iou的样本均为正常样本;max_Iou=80%比率处的平均精准度Iou,高于80%比率处的平均精准度Iou的样本为优质样本。即场景一对样本的要求严格度大于场景二对样本的要求严格度,对于同样数量的全量样本,场景一中正常样本数量小于场景二中正常样本数量。
进一步地,数据加强模块,包括:
判断单元,用于判断待数据加强的第一优质样本的数据特征是否包括显示状态信息,其中,所述显示状态信息包括正立显示或禁止翻转,所述第一优质样本为所有优质样本中的任意一个;
第一选择单元,用于若包括显示状态信息,则选择小角度偏移或者水平镜像的方式进行数据加强;
第二选择单元,用于若不包括显示状态信息,则选择数据增强耗时最少的指定增强方式进行数据加强,其中,所述指定增强方式包括水平翻转、垂直翻转、镜像或小角度偏移中的任一种。
本实施例在调用Keras提供的API实现数据增强的过程前,先根据样本的数据特征判断样本的翻转增强等方式,是否影响样本的数据特征,是否最终影响模型的训练。上述标注方式符合笛卡尔坐标系,即以样本中图片的左上角为原点,用标注框的左上角横纵坐标,右下角横纵坐标,描述出标注的目标对象所处区域位置。采用的数据增强方式是对图片样本进行位移平移或镜面处理等方式,因为原标注方式符合笛卡尔坐标系规则,通过位移平移或镜面处理的变化量,推算出新样本中原对象位移平移或镜像后的具体标注坐标。但并不是所有的数据增强方式均适合于任一样本,需要进行优化选择。如水平翻转会影响样本数据特征的,则不宜选择水平镜像增强,应选择小角度偏移或者垂直镜像,比如部分交通标识,包括左、右转标识等。如垂直翻转会影响样本数据特征,则不宜选择垂直镜像数据增强,应选择小角度偏移或者水平镜像,如直立的人体等。如无水平和垂直方向的数据特征,所有的数据增强方式均可选择,如箱体类物品,球体等。
进一步地,另一实施例的第二筛选模块,包括:
第三获取单元,用于获取样本筛选对应的任务目标;
第三确定单元,用于根据所述任务目标确定筛选所述优质样本对应的第二预设值;
筛选单元,用于将平均精准度值大于所述第二预设值的正常样本,确定为优质样本。
本实施例通过配置不同任务目标分别对应的第二预设值,即max_Iou,来确定正常样本中的优质样本。通过前三次的分拣,大多数劣质样本已经被挑选,如想得到更高的精度,可将min_Iou进行轻微的提高,如提高至0.42等。在数据增强情况中,选择优质样本进行数据增强,需要计算训练样本的集中度,需增强的目标对象的人工标注框的数据量,与其他对象的人工标注框的数据量的相差情况,以根据相差情况微调max_Iou。如果相差较大,比如相差1个数量级以上,说明需增强的对象太少,可以将max_Iou设置为0.6,此时平均精准度Iou落入0.6到1区间内的数据量较多;如果相差较小,如差别在1个数量级之内的,可将max_Iou设置为0.8,可选出更为精确的优质样本进行增强,上述第二预设值可通过配置文件的配置表格实现自动配置。上述的第一预设值,也可根据上述方式实现自动配置和微调。如对深度神经网络模型的精度要求较高,样本召回率要求较低时:分拣劣质样本情况中,根据多次测试效果得到。比如可在第1次至第3次时,min_Iou设置为0.4,筛选规则较为严格,落入平均精准度Iou在0到0.4区间内的样本较多,意味着劣质样本数量较多。上述实施例均以一个样本中存在一个目标对象为例,上述样本为一张图片。对于一张图片中存在两个或两个以上的目标对象时,每个目标对象存在各自独立的一套max_Iou与min_Iou,并遵循对应的阈值进行分拣或者数据增强。对于不同的任务,相同的样本根据任务目标涉及的目标对象不同,被筛选的结果也不同,可能在一任务中被筛选为劣质样本,在另一任务中可能筛选为正常样本或优质样本。
进一步地,样本筛选装置,包括:
第二判断模块,用于判断所述正常样本的样本集合内的样本数量是否满足预设要求;
第二获取模块,用于若满足预设要求,则获取人工对劣质样本的复核样本集;
第三获取模块,用于重新获取所述复核样本集内各样本的平均精准度;
纳入模块,用于将所述复核样本集内平均精准度与所述第一预设值相差量在指定阈值内的各样本,纳入所述正常样本。
本实施例中,将确定为劣质样本的数量通过接通人工复核环节,实现二次筛选,以避免在某些领域数据非常缺乏,无法进行模型训练。通过人工复核增强现有正常样本的数量,以降低数据增强的压力。分拣后的样本数量一般比较少,由于这批样本是训练后的模型判定为劣质样本的,会存在误识别部分样本的情况,所以对这批样本进行人工复核,将误识别为劣质样本的样本筛选出来。有部分场景的样本存量很少,采集难度大,互联网上的图片不符合训练要求,样本不够丰富会导致模型过拟合,可以通过此方法对样本数据进行分拣与数据增强。上述重新获取所述复核样本集内各样本的平均精准度,为前一次筛选中被确定为劣质样本时该样本的平均精准度,和本次再筛选时该样本的平均精准度的平均值。
本申请的数据处理过程以及数据存储过程,均在区块链上完成,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储样本筛选过程需要的所有数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现样本筛选方法。
上述处理器执行上述样本筛选方法,包括:将所有待筛选样本输入Yolov3神经网络模型;获取所述Yolov3神经网络模型识别每个所述待筛选样本分别得到的计算机标注框数据,以及预先得到的每个所述待筛选样本分别对应的人工标注框数据;根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个所述待筛选样本分别对应的平均精准度;比较各所述待筛选样本分别对应的平均精准度与第一预设值的大小关系;将平均精准度大于第一预设值的待筛选第二样本划分为正常样本。
上述计算机设备,通过Yolov3神经网络模型识别每个样本中指定对象的计算机标注框数据和人工标注框数据,并根据计算机标注框数据和人工标注框数据计算平均精准度,然后根据平均精准度与阈值的关系,进行样本评价和筛选,实现自动、快速挑拣出正常样本。
在一个实施例中,上述处理器根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个所述待筛选样本分别对应的平均精准度的步骤,包括:获取指定样本对应的第一数组的左上角的第一坐标数据和右下角的第二坐标数据,以及所述指定样本对应的第二数组的左上角的第三坐标数据和右下角的第四坐标数据,其中,所述指定样本为所有所述待筛选样本中的任意一个,所述坐标数据包括横坐标数据和纵坐标数据,所述第一数组为所述指定样本的计算机标注框数据,所述第一数组为所述指定样本的人工标注框数据;根据所述第一坐标数据和所述第三坐标数据的比较数据,以及所述第二坐标数据和所述第四坐标数据的比较数据,得到所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的交集,以及所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的并集;根据公式Iou=交集/并集,计算所述指定样本的平均精准度;根据所述指定样本的平均精准度的计算过程,分别计算每个所述待筛选样本分别对应的平均精准度。
在一个实施例中,上述处理器将平均精准度大于第一预设值的待筛选样本划分为正常样本的步骤之后,包括:判断所述正常样本的数量是否小于预设样本数量;若是,则从所述正常样本中筛选出满足预设条件的优质样本;通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量。
在一个实施例中,上述处理器从所述正常样本中筛选出满足预设条件的优质样本的步骤,包括:获取所有所述待筛选样本分别对应的平均精准度组成的数据分布图;从所述数据分布图中,计算所述正常样本占比所有所述待筛选样本的指定比率;根据所述指定比率确定优质样本对应的最低平均精准度值;根据所述最低平均精准度值确定优质样本。
在一个实施例中,上述处理器通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量的步骤,包括:判断待数据加强的第一优质样本的数据特征是否包括显示状态信息,其中,所述显示状态信息包括正立显示或禁止翻转,所述第一优质样本为所有优质样本中的任意一个;若是,则选择小角度偏移或者水平镜像的方式进行数据加强;若否,则选择数据增强耗时最少的指定增强方式进行数据加强,其中,所述指定增强方式包括水平翻转、垂直翻转、镜像或小角度偏移中的任一种。
在一个实施例中,上述处理器从所述正常样本中筛选出满足预设条件的优质样本的步骤,包括:获取样本筛选对应的任务目标;根据所述任务目标确定筛选所述优质样本对应的第二预设值;将平均精准度值大于所述第二预设值的正常样本,确定为优质样本。
在一个实施例中,上述处理器将平均精准度大于第一预设值的待筛选样本划分为正常样本的步骤之后,包括:
判断所述优质样本的样本集合内的样本数量是否满足预设要求;若否,则获取人工对所述劣质样本的复核样本集;重新获取所述复核样本集内各样本的平均精准度;将所述复核样本集内平均精准度与所述第一预设值相差量在指定阈值内的各样本,纳入所述正常样本。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现样本筛选方法,包括:将所有待筛选样本输入Yolov3神经网络模型;获取所述Yolov3神经网络模型识别每个所述待筛选样本分别得到的计算机标注框数据,以及预先得到的每个所述待筛选样本分别对应的人工标注框数据;根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个所述待筛选样本分别对应的平均精准度;比较各所述待筛选样本分别对应的平均精准度与第一预设值的大小关系;将平均精准度小于等于第一预设值的待筛选第一样本划分为劣质样本,将平均精准度大于第一预设值的待筛选第二样本划分为正常样本。
上述计算机可读存储介质,通过Yolov3神经网络模型识别每个样本中指定对象的计算机标注框数据和人工标注框数据,并根据计算机标注框数据和人工标注框数据计算平均精准度,然后根据平均精准度与阈值的关系,进行样本评价和筛选,实现自动、快速挑拣出正常样本。
在一个实施例中,上述处理器根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,分别计算每个所述待筛选样本分别对应的平均精准度的步骤,包括:获取指定样本对应的第一数组的左上角的第一坐标数据和右下角的第二坐标数据,以及所述指定样本对应的第二数组的左上角的第三坐标数据和右下角的第四坐标数据,其中,所述指定样本为所有所述待筛选样本中的任意一个,所述坐标数据包括横坐标数据和纵坐标数据,所述第一数组为所述指定样本的计算机标注框数据,所述第一数组为所述指定样本的人工标注框数据;根据所述第一坐标数据和所述第三坐标数据的比较数据,以及所述第二坐标数据和所述第四坐标数据的比较数据,得到所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的交集,以及所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的并集;根据公式Iou=交集/并集,计算所述指定样本的平均精准度;根据所述指定样本的平均精准度的计算过程,分别计算每个所述待筛选样本分别对应的平均精准度。
在一个实施例中,上述处理器将平均精准度小于等于第一预设值的待筛选样本划分为劣质样本,将平均精准度大于第一预设值的待筛选样本划分为正常样本的步骤之后,包括:判断所述正常样本的数量是否小于预设样本数量;若是,则从所述正常样本中筛选出满足预设条件的优质样本;通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量。
在一个实施例中,上述处理器从所述正常样本中筛选出满足预设条件的优质样本的步骤,包括:获取所有所述待筛选样本分别对应的平均精准度组成的数据分布图;从所述数据分布图中,计算所述正常样本占比所有所述待筛选样本的指定比率;根据所述指定比率确定优质样本对应的最低平均精准度值;根据所述最低平均精准度值确定优质样本。
在一个实施例中,上述处理器通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量的步骤,包括:判断待数据加强的第一优质样本的数据特征是否包括显示状态信息,其中,所述显示状态信息包括正立显示或禁止翻转,所述第一优质样本为所有优质样本中的任意一个;若是,则选择小角度偏移或者水平镜像的方式进行数据加强;若否,则选择数据增强耗时最少的指定增强方式进行数据加强,其中,所述指定增强方式包括水平翻转、垂直翻转、镜像或小角度偏移中的任一种。
在一个实施例中,上述处理器从所述正常样本中筛选出满足预设条件的优质样本的步骤,包括:获取样本筛选对应的任务目标;根据所述任务目标确定筛选所述优质样本对应的第二预设值;将平均精准度值大于所述第二预设值的正常样本,确定为优质样本。
在一个实施例中,上述处理器将平均精准度小于等于第一预设值的待筛选样本划分为劣质样本,将平均精准度大于第一预设值的待筛选样本划分为正常样本的步骤之后,包括:
判断所述优质样本的样本集合内的样本数量是否满足预设要求;若否,则获取人工对所述劣质样本的复核样本集;重新获取所述复核样本集内各样本的平均精准度;将所述复核样本集内平均精准度与所述第一预设值相差量在指定阈值内的各样本,纳入所述正常样本。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种样本筛选方法,其特征在于,包括:
将所有待筛选样本输入Yolov3神经网络模型;
获取预先得到的每个所述待筛选样本分别对应的人工标注框数据,获取所述Yolov3神经网络模型识别每个所述待筛选样本分别得到的计算机标注框数据,其中,所述人工标注框数据是指人工利用标注工具进行标注后,生成的xml文件;
根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,计算每个所述待筛选样本对应的平均精准度;
比较各所述待筛选样本分别对应的平均精准度与第一预设值的大小关系;
将平均精准度大于第一预设值的待筛选样本划分为正常样本。
2.根据权利要求1所述的样本筛选方法,其特征在于,所述根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,计算每个所述待筛选样本对应的平均精准度的步骤,包括:
获取指定样本对应的第一数组的左上角的第一坐标数据和右下角的第二坐标数据,以及所述指定样本对应的第二数组的左上角的第三坐标数据和右下角的第四坐标数据,其中,所述指定样本为所有所述待筛选样本中的任意一个,所述坐标数据包括横坐标数据和纵坐标数据,所述第一数组为所述指定样本的计算机标注框数据,所述第二数组为所述指定样本的人工标注框数据;
根据所述第一坐标数据和所述第三坐标数据的比较数据,以及所述第二坐标数据和所述第四坐标数据的比较数据,得到所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的交集,以及所述指定样本的计算机标注框数据与所述指定样本的人工标注框数据的并集;
根据公式Iou=交集/并集,计算所述指定样本的平均精准度;
根据所述指定样本的平均精准度的计算过程,分别计算每个所述待筛选样本分别对应的平均精准度。
3.根据权利要求1所述的样本筛选方法,其特征在于,所述将平均精准度大于第一预设值的待筛选样本划分为正常样本的步骤之后,包括:
判断所述正常样本的数量是否小于预设样本数量;
若是,则从所述正常样本中筛选出满足预设条件的优质样本;
通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量。
4.根据权利要求3所述的样本筛选方法,其特征在于,从所述正常样本中筛选出满足预设条件的优质样本的步骤,包括:
获取所有所述待筛选样本分别对应的平均精准度组成的数据分布图;
从所述数据分布图中,计算所述正常样本占比所有所述待筛选样本的指定比率;
根据所述指定比率确定优质样本对应的最低平均精准度值;
根据所述最低平均精准度值确定优质样本。
5.根据权利要求3所述的样本筛选方法,其特征在于,通过对所述优质样本进行数据加强的方式增多样本数量,增多样本数量后,正常样本的数量大于所述预设样本数量的步骤,包括:
判断待数据加强的第一优质样本的数据特征是否包括显示状态信息,其中,所述显示状态信息包括正立显示或禁止翻转,所述第一优质样本为所有优质样本中的任意一个;
若是,则选择小角度偏移或者水平镜像的方式进行数据加强;
若否,则选择数据增强耗时最少的指定增强方式进行数据加强,其中,所述指定增强方式包括水平翻转、垂直翻转、镜像或小角度偏移中的任一种。
6.根据权利要求3所述的样本筛选方法,其特征在于,从所述正常样本中筛选出满足预设条件的优质样本的步骤,包括:
获取样本筛选对应的任务目标;
根据所述任务目标确定筛选所述优质样本对应的第二预设值;
将平均精准度值大于所述第二预设值的正常样本,确定为优质样本。
7.根据权利要求1所述的样本筛选方法,其特征在于,所述将平均精准度大于第一预设值的待筛选样本划分为正常样本的步骤之后,包括:
判断所述正常样本的样本集合内的样本数量是否满足预设要求;
若否,则获取人工对劣质样本的复核样本集;
重新获取所述复核样本集内各样本的平均精准度;
将所述复核样本集内平均精准度与所述第一预设值相差量在指定阈值内的各样本,纳入所述正常样本。
8.一种样本筛选装置,其特征在于,包括:
第一筛选模块,用于将所有待筛选样本输入Yolov3神经网络模型;
第一获取模块,用于获取预先得到的每个所述待筛选样本分别对应的人工标注框数据,获取所述Yolov3神经网络模型识别每个所述待筛选样本分别得到的计算机标注框数据,其中,所述人工标注框数据是指人工利用标注工具进行标注后,生成的xml文件;
计算模块,用于根据每个所述待筛选样本分别对应的所述计算机标注框数据和人工标注框数据,计算每个所述待筛选样本对应的平均精准度;
比较模块,用于比较各所述待筛选样本分别对应的平均精准度与第一预设值的大小关系;
划分模块,用于将平均精准度大于第一预设值的待筛选第二样本划分为正常样本。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010693963.XA CN111738353B (zh) | 2020-07-17 | 2020-07-17 | 样本筛选方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010693963.XA CN111738353B (zh) | 2020-07-17 | 2020-07-17 | 样本筛选方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111738353A CN111738353A (zh) | 2020-10-02 |
CN111738353B true CN111738353B (zh) | 2020-12-04 |
Family
ID=72655974
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010693963.XA Active CN111738353B (zh) | 2020-07-17 | 2020-07-17 | 样本筛选方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111738353B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559237A (zh) * | 2013-10-25 | 2014-02-05 | 南京大学 | 基于目标跟踪的半自动图像标注样本生成方法 |
CN103839080A (zh) * | 2014-03-25 | 2014-06-04 | 上海交通大学 | 基于测度查询熵的视频流异常事件检测方法 |
CN106779086A (zh) * | 2016-11-28 | 2017-05-31 | 北京大学 | 一种基于主动学习和模型剪枝的集成学习方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5149328B2 (ja) * | 2010-05-14 | 2013-02-20 | 船井電機株式会社 | 通信方法、マスター表示装置、スレーブ表示装置、及びそれらを備えた通信システム |
CN110807496B (zh) * | 2019-11-12 | 2023-06-16 | 杭州云栖智慧视通科技有限公司 | 一种密集目标检测方法 |
-
2020
- 2020-07-17 CN CN202010693963.XA patent/CN111738353B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559237A (zh) * | 2013-10-25 | 2014-02-05 | 南京大学 | 基于目标跟踪的半自动图像标注样本生成方法 |
CN103839080A (zh) * | 2014-03-25 | 2014-06-04 | 上海交通大学 | 基于测度查询熵的视频流异常事件检测方法 |
CN106779086A (zh) * | 2016-11-28 | 2017-05-31 | 北京大学 | 一种基于主动学习和模型剪枝的集成学习方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111738353A (zh) | 2020-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109582793A (zh) | 模型训练方法、客服系统及数据标注系统、可读存储介质 | |
CN108764306A (zh) | 图像分类方法、装置、计算机设备和存储介质 | |
CN108875600A (zh) | 一种基于yolo的车辆信息检测和跟踪方法、装置及计算机存储介质 | |
CN108960062A (zh) | 校正发票图像的方法、装置、计算机设备和存储介质 | |
CN109583483A (zh) | 一种基于卷积神经网络的目标检测方法和系统 | |
DE112019000334T5 (de) | Validieren der identität eines fernen benutzers durch vergleichen auf der grundlage von schwellenwerten | |
CN104915972A (zh) | 图像处理装置、图像处理方法以及程序 | |
CN108171250A (zh) | 目标检测方法及装置 | |
CN105208325B (zh) | 基于图像定点抓拍及比对分析的国土资源监控预警方法 | |
CN110781976B (zh) | 训练图像的扩充方法、训练方法及相关装置 | |
CN109784341A (zh) | 一种基于lstm神经网络的医疗单据识别方法 | |
CN110781882A (zh) | 一种基于yolo模型的车牌定位和识别方法 | |
CN110428412A (zh) | 图像质量的评价及模型生成方法、装置、设备和存储介质 | |
CN112991362B (zh) | 一种基于混合高斯模型的色选机粘连物料图像分割方法 | |
CN110070115A (zh) | 一种单像素攻击样本生成方法、装置、设备及存储介质 | |
WO2020114135A1 (zh) | 特征识别的方法及装置 | |
CN113590906A (zh) | 一种土地利用变更举证的核查系统 | |
CN116228678A (zh) | 芯片封装缺陷自动识别和处理方法 | |
CN114241425B (zh) | 垃圾检测模型的训练方法、装置、存储介质及设备 | |
Liu et al. | Deep domain adaptation for pavement crack detection | |
CN111738353B (zh) | 样本筛选方法、装置和计算机设备 | |
CN117475253A (zh) | 一种模型训练方法、装置、电子设备及存储介质 | |
CN112686255A (zh) | 基于霍夫变换的印章识别方法、装置、设备和存储介质 | |
CN113838076A (zh) | 目标图像中的对象轮廓的标注方法及装置、存储介质 | |
CN107358204A (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 |