一种神经网络模型的训练集优化方法及系统与流程

文档序号:16250763发布日期:2018-12-12 00:01阅读:225来源:国知局
一种神经网络模型的训练集优化方法及系统与流程

本发明涉及神经网络领域,尤其涉及一种神经网络模型的训练集优化方法及系统。

背景技术

在神经网络的训练和调试过程中,训练集的优劣可以直接影响到神经网络的表现效果,训练集的质量越高,神经网络所表现出的性能越好。

对于训练集的调优现有的方案有:对训练集的特征进行相应的分析,然后进行相应的评估;随后根据得分进行相应的优化。其本质实际上是对训练集特征相似度的比对,会将比较相似的图片进行高的评分,不太相似的图片进行比较低的分,使用到的特征都是传统图像处理中的特征提取技术。

但是使用这种传统的特征提取技术,实际上会丢失一些高维的训练特征,丢失一些具有代表性的数据集,最后导致训练集的整体质量并不乐观。



技术实现要素:

本发明的目的是提供一种神经网络模型的训练集优化方法及系统,在不丢失训练特征的同时,优化训练集。

本发明提供的技术方案如下:

一种神经网络模型的训练集优化方法,包括:将采集的原始数据按照预设比例分为测试集和训练集;对所述测试集进行预处理,得到处理后文件集;对所述处理后文件集中的各文件进行归一化处理;使用根据所述训练集训练好的神经网络模型预测每个经过归一化处理的文件的分类概率;根据每个文件的分类概率,按照预设待优化条件进行统计,得到对应的待优化文件集;对所述待优化文件集中的每个待优化文件进行增广处理,得到作为优化训练集的增广数据集。

在上述技术方案中,根据神经网络模型对测试集的预测结果,对符合预设待优化条件的待优化文件进行增广,加强原来训练集中缺少的特征,有效提高神经网络模型预测的准确率。

进一步,所述增广处理包括以下任意一种或多种:旋转处理、缩放处理、添加噪声处理和裁剪处理。

在上述技术方案中,增广处理包含的多种处理给予了不同的增广结果,多方面对相应特征进行增加。

进一步,所述增广数据集包括:待优化文件集中的每个待优化文件对应的处理数据集。

进一步,所述对待优化文件集中的每个待优化文件进行增广处理中对一个待优化文件进行处理的具体过程为:对所述待优化文件集中的一个待优化文件分别进行所述增广处理中包括的所有处理,每种处理得到一个对应的增广文件,得到的所有增广文件作为所述待优化文件的处理数据集。

在上述技术方案中,一个待优化文件进行多种处理,增广数据集中的各文件得到了多方面特征的增加。

进一步,所述对测试集进行预处理,得到处理后文件集具体为:对所述测试集中的所有文件进行文件格式的校验和后缀的校验;将校验成功的所有文件作为所述处理后文件集;所述校验成功是指所述文件的文件格式符合预设文件格式条件、且所述文件的后缀与预设后缀一致。

在上述技术方案中,对文件的文件格式和后缀进行校验,保证处理后数据集的稳定性。

进一步,所述对测试集中的所有文件进行文件格式的校验和后缀的校验的具体过程为:遍历所述测试集中的所有文件,将所述文件格式不符合预设文件格式条件的文件删除,将仅后缀不与预设后缀一致的文件的后缀改为预设后缀。

在上述技术方案中,尽可能多地保留文件,丰富处理后数据集。

本发明还提供一种神经网络模型的训练集优化系统,包括:数据分类模块,用于将采集的原始数据按照预设比例分为测试集和训练集;预处理模块,用于对所述测试集进行预处理,得到处理后文件集;归一化处理模块,用于对所述处理后文件集中的各文件进行归一化处理;概率预测模块,用于使用根据所述训练集训练好的神经网络模型预测每个经过归一化处理的文件的分类概率;待优化统计模块,用于根据每个文件的分类概率,按照预设待优化条件进行统计,得到对应的待优化文件集;增广处理模块,用于对所述待优化文件集中的每个待优化文件进行增广处理,得到作为优化训练集的增广数据集。

在上述技术方案中,根据神经网络模型对测试集的预测结果,对符合预设待优化条件的待优化文件进行增广,加强原来训练集中缺少的特征,有效提高神经网络模型预测的准确率。

进一步,所述增广处理包括以下任意一种或多种:旋转处理、缩放处理、添加噪声处理和裁剪处理。

进一步,所述增广数据集包括:待优化文件集中的每个待优化文件对应的处理数据集。

进一步,所述增广处理模块,用于对所述待优化文件集中的每个待优化文件进行增广处理中对一个待优化文件进行处理的具体过程为:所述增广处理模块,用于对所述待优化文件集中的一个待优化文件分别进行所述增广处理中包括的所有处理,每种处理得到一个对应的增广文件,得到的所有增广文件作为所述待优化文件的处理数据集。

进一步,其特征在于,所述预处理模块,用于对所述测试集进行预处理,得到处理后文件集具体为:所述预处理模块包括:校验子模块,用于对所述测试集中的所有文件进行文件格式的校验和后缀的校验;文件子模块,用于将校验成功的所有文件作为所述处理后文件集;所述校验成功是指所述文件的文件格式符合预设文件格式条件、且所述文件的后缀与预设后缀一致。

进一步,所述校验子模块,用于对所述测试集中的所有文件进行文件格式的校验和后缀的校验具体为:所述校验子模块,用于遍历所述测试集中的所有文件,将所述文件格式不符合预设文件格式条件的文件删除,将仅后缀不与预设后缀一致的文件的后缀改为预设后缀。

与现有技术相比,本发明的神经网络模型的训练集优化方法及系统有益效果在于:

本发明使用与训练集同源的测试集的预测结果进行增广,优化训练集,从而提高神经网络模型的预测准确率。

附图说明

下面将以明确易懂的方式,结合附图说明优选实施方式,对一种神经网络模型的训练集优化方法及系统的上述特性、技术特征、优点及其实现方式予以进一步说明。

图1是本发明神经网络模型的训练集优化方法一个实施例的流程图;

图2是本发明神经网络模型的训练集优化方法另一个实施例的流程图;

图3是本发明神经网络模型的训练集优化方法又一个实施例的流程图;

图4是本发明对测试集中的各文件进行预处理一个实施例的流程图;

图5是本发明神经网络模型的训练集优化系统一个实施例的结构示意图;

图6是本发明神经网络模型的训练集优化系统另一个实施例的结构示意图;

图7是本发明神经网络模型的训练集优化系统又一个实施例的结构示意图。

附图标号说明:

10.数据分类模块,20.预处理模块,21.校验子模块,22.文件子模块,30.归一化处理模块,40.概率预测模块,50.待优化统计模块,60.增广处理模块,70.分类排序模块。

具体实施方式

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。

为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。

在本发明的一个实施例中,如图1所示,一种神经网络模型的训练集优化方法,包括:

s101将采集的原始数据按照预设比例分为测试集和训练集。

具体的,原始数据可以通过各种渠道获取,例如:爬虫系统,人工搜集等,只要是神经网络模型需要的数据即可。将原始数据划分为两部分,训练集是为了训练神经网络模型,因训练集和测试集的源头相同,测试集就可以很好地反映训练集的数据优劣,从而对训练集进行优化。

预设比例是工程师根据需求自行设置,不作限定。例如:90%的原始数据作为训练集,10%的原始数据作为测试集;也可以80%的原始数据作为训练集,20%的原始数据作为测试集。

s102对测试集进行预处理,得到处理后文件集。

具体的,对测试集进行预处理,主要是为了保证测试集里的文件都有效,保证后续流程的稳健性。

s103对处理后文件集中的各文件进行归一化处理。

具体的,每个神经网络模型对其的输入量都有一定的要求,处理后文件集中的各文件可能并不能满足这个要求,因此,对它们统一按照神经网络模型的要求进行归一化处理,保证输入到神经网络模型时可以正确运行。

s104使用根据训练集训练好的神经网络模型预测每个经过归一化处理的文件的分类概率。

具体的,先由上述分出来的训练集去训练神经网络模型,然后再将归一化的测试集中的文件输入训练好的神经网络模型进行预测,预测出来的结果(例如:准不准)就可以反映训练集的优劣,根据优劣的情况对训练集进行优化。

本实施例的神经网络模型是给相应的文件分类,当一个文件输入到训练好的神经网络模型时,会给出这个文件分到哪几类的概率是多少。例如:一共有10类,一个文件输入,给出的预测出这个文件所属类别的百分比在前5名的分类概率为:a类90%,b类80%,c类78%,d类70%,e类67%。

优选地,归一化处理和预测分类概率可以并行化处理,提高处理速度。

实际使用的例子如下:以测试集中的各文件为图片为例,初始化创建tensorflow会话,使用占位符技术,首先定义会话计算方法,暂时不执行。定义了两个会话。第一个会话是对图像进行大小缩放和图像归一化,大小缩放采用线性插值的方法。第二个会话是卷积神经网络的前向传导,此步直接预测得到测试集当前图片的分类概率。在定义完会话之后,直接启动会话,并行化的处理。这种处理方式,避免了会话的重复定义,并行化的处理,也有效提升了处理速度。

s105根据每个文件的分类概率,按照预设待优化条件进行统计,得到对应的待优化文件集;

s106对待优化文件集中的每个待优化文件进行增广处理,得到作为优化训练集的增广数据集。

具体的,预设待优化条件根据实际需求由人为自行设置,例如:预设待优化条件为神经网络模型预测错误和/或精确度不高。

在本实施例中,预设待优化条件为预测错误的文件,即正确分类没有出现在预测分类概率前五中实际例子如下:根据这个预设待优化条件,把符合的所有文件作为待优化文件集,对待优化文件集中的每个待优化文件进行增广处理,得到增广数据集。

在其他实施例中,预设待优化条件为预测错误的文件或预测准确率不高的文件,预测错误的文件是正确分类没有出现在预测分类概率前五中的文件,预测准确率不高的文件是指正确分类在预测得到的分类概率排名的前五中,但不是第一名的文件。将符合两个条件中任意一个条件的所有文件作为待优化文件集。

之所以对待优化文件集的所有待优化文件进行增广,是因为按照正常情况,测试集里的所有文件都应该预测正确,而现在出现预测不正确或精确度不高的问题,是因为神经训练模型使用的训练集的训练特征不足,需要增加相应的特征。

因此,增广数据集就是对相应特征增加后的数据集,其可以作为新的训练集输入到神经网络模型对其进行训练,进一步优化神经网络模型。

本实施例中根据神经网络模型对测试集的预测结果,对符合预设待优化条件的待优化文件进行增广,加强原来训练集中缺少的特征,有效提高神经网络模型预测的准确率。

在本发明的另一个实施例中,如图2所示,一种神经网络模型的训练集优化方法,包括:

s210将采集的原始数据按照预设比例分为测试集和训练集;

s220对测试集进行预处理,得到处理后文件集;

s230对处理后文件集中的各文件进行归一化处理;

s240使用根据训练集训练好的神经网络模型预测每个经过归一化处理的文件的分类概率;

s250根据每个文件的分类概率,按照预设待优化条件进行统计,得到对应的待优化文件集;

s260对待优化文件集中的每个待优化文件进行增广处理,得到作为优化训练集的增广数据集。

具体的,本实施例以文件为图片进行解释。

应用于图片时,增广处理包括以下任意一种或多种:旋转处理、缩放处理、添加噪声处理和裁剪处理。添加噪声处理包括:椒盐噪声处理(通俗理解为在图片上加白点)和高斯噪声处理(通俗理解为将图片模糊化)。

增广数据集包括:待优化文件集中的每个待优化文件对应的处理数据集。

对待优化文件集中的每个待优化文件进行增广处理中对一个待优化文件进行处理的具体过程为:

对待优化文件集中的一个待优化文件分别进行增广处理中包括的所有处理,每种处理得到一个对应的增广文件,得到的所有增广文件作为待优化文件的处理数据集。

例如:增广处理包括1)旋转处理、2)缩放处理、3)添加噪声处理中的椒盐噪声处理和4)裁剪处理。待优化文件集中有10个待优化文件,将这10个待优化文件都进行4种处理,每个待优化文件都会得到4个增广文件(即,经过旋转处理的一个文件,经过缩放处理的一个文件,经过添加椒盐噪声处理的一个文件和经过裁剪处理的一个文件),这4个增广文件就是一个待优化文件的处理数据集;这个待优化文件集对应的增广数据集就是40个增广文件。

需要注意的是,增广处理包含的处理数量不同,相同的待优化文件集对应的增广数据集也是不同的。

对每个待优化文件进行增广处理包含的所有处理,得到多方面的特征增加,将增广数据集作为原有训练集的增广,提高训练集的整体质量,从而提高神经网络模型的预测准确度。

可选地,s220对测试集进行预处理,得到处理后文件集具体为:

s221对测试集中的所有文件进行文件格式的校验和后缀的校验;

s222将校验成功的所有文件作为处理后文件集;校验成功是指文件的文件格式符合预设文件格式条件、且文件的后缀与预设后缀一致。

具体的,对测试集进行预处理主要是对测试集中各文件的文件格式和后续进行校验。

以测试集中的文件为图片为例:预设文件格式条件为图片文件格式,预设后缀为.jpeg。测试集中有100张图片,有90张图片的文件格式为jpeg文件格式、且其后缀也为.jpeg,则认为这90张图片校验成功,将它们作为处理后文件集,另外10张图片删除。

在其他实施例中,对测试集中的所有文件进行文件格式的校验和后缀的校验的具体过程为:

遍历测试集中的所有文件,将文件格式不符合预设文件格式条件的文件删除,将仅后缀不与预设后缀一致的文件的后缀改为预设后缀。

具体的,只会将文件格式与预设文件格式条件完全不符合的文件删除,而对仅后续不与预设后续一致的文件则通过修改后续的方式,仍然保留,尽可能多地保留文件,丰富处理后数据集。

例如:预设文件格式条件为图片文件格式,预设后缀为.jpeg。文件1为txt文件,因其文件格式及其内容完全和图片没有关系,因此,将文件1直接丢弃。文件2是后缀为bmp的图片,则文件2符合预设文件格式条件,仅后缀不符合预设后缀,将bmp修改为.jpeg后,将其加入到处理后文件集。

优选地,预处理采用线程池技术,对测试集的处理进行了整体的加速,即使测试集非常巨大,其处理速度加速效果也非常明显。另外,也可以对训练集采用线程池技术进行预处理,提高训练集中各文件的稳定性。

优选地,s220对测试集进行预处理,得到处理后文件集之后还包括:按照预设分类类别对处理后文件集中的所有文件进行分类排序。

s230对处理后文件集中的各文件进行归一化处理具体为:对分类排序后的处理后文件集中的各文件进行归一化处理。

具体的,在对测试集进行预处理后,得到的处理后文件集中各文件是乱序的,即各个分类类别的文件穿插着排列,因此,可以对处理后文件集按照预设分类类别进行分类排序。

分类排序可能采用不同的排序方法,例如:冒泡排序法对文件名进行排序,文件名使用ascii码的小写字母的hex码为排序依据。预设分类类别中包括的分类类别(例如:有5种分类类别,每个文件都只属于一个分类类别)和排序方法(例如:类别的排序顺序和类别中各文件的排序顺序)根据实际需求设置,不作限定。

本实施例中,会先对测试集中的各文件进行文件格式和后缀的校验,得到较稳健的处理后数据集,预处理的过程使整个优化过程避免了因文件出错而处理中断的问题,节约了处理时间,提高处理效率。

在本发明的又一个实施例中,如图3所示,一种神经网络模型的训练集优化方法,包括:

s310将采集的原始数据按照预设比例分为测试集和训练集;

s320对测试集进行预处理,得到处理后文件集;

s330对处理后文件集中的各文件进行归一化处理;

s340使用根据训练集训练好的神经网络模型预测每个经过归一化处理的文件的分类概率;

s350根据每个文件的分类概率,按照预设待优化条件进行统计,得到对应的待优化文件集;

s360对待优化文件集中的每个待优化文件进行增广处理,得到作为优化训练集的增广数据集。

具体的,本实施例以文件为图片进行解释。

应用于图片时,增广处理包括以下任意一种或多种:旋转处理、缩放处理、添加噪声处理和裁剪处理。添加噪声处理包括:椒盐噪声处理和高斯噪声处理。

增广数据集包括:待优化文件集中的每个待优化文件对应的处理数据集。

对待优化文件集中的每个待优化文件进行增广处理中对一个待优化文件进行处理的具体过程为:

对待优化文件集中的一个待优化文件分别进行增广处理中包括的所有处理,每种处理得到一个对应的增广文件,得到的所有增广文件作为待优化文件的处理数据集。

需要注意的是,增广处理包含的处理数量不同,相同的待优化文件集对应的增广数据集也是不同的。

对每个待优化文件进行增广处理包含的所有处理,得到多方面的特征增加,将增广数据集作为原有训练集的增广,提高训练集的整体质量,从而提高神经网络模型的预测准确度。

可选地,s320对测试集进行预处理,得到处理后文件集之后还包括:s370按照预设分类类别对处理后文件集中的所有文件进行分类排序。

s330对处理后文件集中的各文件进行归一化处理具体为:s331对分类排序后的处理后文件集中的各文件进行归一化处理。

具体的,在对测试集进行预处理后,得到的处理后文件集中各文件是乱序的,即各个分类类别的文件穿插着排列,因此,可以对处理后文件集按照预设分类类别进行分类排序。

分类排序可能采用不同的排序方法,例如:冒泡排序法对文件名进行排序,文件名使用ascii码的小写字母的hex码为排序依据。预设分类类别中包括的分类类别和排序方法根据实际需求设置,不作限定。

在对处理后数据集进行预测过程中,按照一个分类类别一个分类类别的顺序进行预测。

优选地,处理后文件集中的每个文件的文件格式符合预设文件格式条件、文件的后缀与预设后缀一致,且文件对应的类别未被神经网络模型预测完。

在对测试集中的每个文件进行预处理时,除了对文件格式和后缀进行检验外(具体的检验过程和上述第二个方法实施例相同,在此不作赘述),还会以处理进度进一步进行筛选。

主要是因为:在对整个训练集的评估过程中,测试集和训练集的数量十分巨大,需要很长时间,为预防可能存在的程序宕机退出,或者机器意外挂机,导致的数据丢失,数据进度丢失问题,本实施例设计了处理进度恢复机制。测试集的评估过程,是按照每一个分类类别来进行处理和记录,本机制将流程细化到每一个分类类别,每次处理完后一个分类类别的所有文件时以追加的形式定向到文件系统的记录文件,在因意外重新启动时,检查该记录文件,若发现该类已经处理则,直接跳过进行下一个分类类别的预测,全部预测完后,进行待优化数据集的统计。

因此,在对测试集中的各文件进行预处理时,还会对处理进度进行校验。

如图4所示,对测试集中的各文件进行预处理的例子如下:

1、对测试集中的所有文件进行文件格式的校验和后缀的校验,得到校验成功的文件;

2、获取进度文件;

3、判断校验成功的每个文件所处的分类类别是否在进度文件中,若在,则执行5,若不在,则执行4;

4、将不在进度文件中的文件加入处理后文件集;

5、将在进度文件中的文件丢弃。

当然,也可以单独针对没有一次性运行完处理后文件集的情况对处理进度进行校验。

例如:当使用根据训练集训练好的神经网络模型预测每个经过归一化处理的文件的分类概率的过程中重启时,获取进度文件和未重启前的处理后文件集;判断未重启前的处理后文件集中的每个文件所处的分类类别是否在进度文件中,若在,则加入当前的处理后文件集,若不在,则丢弃。然后对当前的处理后文件集进行归一化处理、预测,结合未宕机前和现在得到的带个测试集中的文件对应的分类概率,得到待优化数据集。

总的来说,处理后文件集中的文件除了文件格式、后缀正确外,还要其所处的分类类别是没有被预测完的,避免宕机等原因重复预测所有的测试集中的文件,提高了预测效率。

本实施例中对处理后文件集中的各文件进一步作了限定,出现意外时,神经网络模型不用重新预测测试集中的所有文件,提高了预测效率。

在本发明的一个实施例中,如图5所示,一种神经网络模型的训练集优化系统,包括:

数据分类模块10,用于将采集的原始数据按照预设比例分为测试集和训练集。

具体的,原始数据可以通过各种渠道获取,例如:爬虫系统,人工搜集等,只要是神经网络模型需要的数据即可。将原始数据划分为两部分,训练集是为了训练神经网络模型,因训练集和测试集的源头相同,测试集就可以很好地反映训练集的数据优劣,从而对训练集进行优化。预设比例是工程师根据需求自行设置,不作限定。

预处理模块20,与数据分类模块10电连接,用于对测试集进行预处理,得到处理后文件集。

具体的,对测试集进行预处理,主要是为了保证测试集里的文件都有效,保证后续流程的稳健性。

归一化处理模块30,与预处理模块20电连接,用于对处理后文件集中的各文件进行归一化处理。

具体的,每个神经网络模型对其的输入量都有一定的要求,处理后文件集中的各文件可能并不能满足这个要求,因此,对它们统一按照神经网络模型的要求进行归一化处理,保证输入到神经网络模型时可以正确运行。

概率预测模块40,与归一化处理模块30电连接,用于使用根据训练集训练好的神经网络模型预测每个经过归一化处理的文件的分类概率。

具体的,先由上述分出来的训练集去训练神经网络模型,然后再将归一化的测试集中的文件输入训练好的神经网络模型进行预测,预测出来的结果(例如:准不准)就可以反映训练集的优劣,根据优劣的情况对训练集进行优化。

优选地,归一化处理和预测分类概率可以并行化处理,提高处理速度。具体的例子请参见对应的方法实施例,在此不作赘述。

待优化统计模块50,与概率预测模块40电连接,用于根据每个文件的分类概率,按照预设待优化条件进行统计,得到对应的待优化文件集;

增广处理模块60,与待优化统计模块50电连接,用于对待优化文件集中的每个待优化文件进行增广处理,得到作为优化训练集的增广数据集。

具体的,预设待优化条件根据实际需求由人为自行设置,例如:预设待优化条件为神经网络模型预测错误和/或精确度不高。

在本实施例中,预设待优化条件为预测错误的文件,即正确分类没有出现在预测分类概率前五中实际例子如下:根据这个预设待优化条件,把符合的所有文件作为待优化文件集,对待优化文件集中的每个待优化文件进行增广处理,得到增广数据集。

在其他实施例中,预设待优化条件为预测错误的文件或预测准确率不高的文件,预测错误的文件是正确分类没有出现在预测分类概率前五中的文件,预测准确率不高的文件是指正确分类在预测得到的分类概率排名的前五中,但不是第一名的文件。将符合两个条件中任意一个条件的所有文件作为待优化文件集。

之所以对待优化文件集的所有待优化文件进行增广,是因为按照正常情况,测试集里的所有文件都应该预测正确,而现在出现预测不正确或精确度不高的问题,是因为神经训练模型使用的训练集的训练特征不足,需要增加相应的特征。

因此,增广数据集就是对相应特征增加后的数据集,其可以作为新的训练集输入到神经网络模型对其进行训练,进一步优化神经网络模型。

本实施例中根据神经网络模型对测试集的预测结果,对符合预设待优化条件的待优化文件进行增广,加强原来训练集中缺少的特征,有效提高神经网络模型预测的准确率。

在本发明的另一个实施例中,如图6所示,一种神经网络模型的训练集优化系统,包括:

数据分类模块10,用于将采集的原始数据按照预设比例分为测试集和训练集;

预处理模块20,与数据分类模块10电连接,用于对测试集进行预处理,得到处理后文件集;

归一化处理模块30,与预处理模块20电连接,用于对处理后文件集中的各文件进行归一化处理;

概率预测模块40,与归一化处理模块30电连接,用于使用根据训练集训练好的神经网络模型预测每个经过归一化处理的文件的分类概率;

待优化统计模块50,与概率预测模块40电连接,用于根据每个文件的分类概率,按照预设待优化条件进行统计,得到对应的待优化文件集;

增广处理模块60,与待优化统计模块50电连接,用于对待优化文件集中的每个待优化文件进行增广处理,得到作为优化训练集的增广数据集。

具体的,本实施例以文件为图片进行解释。

应用于图片时,增广处理包括以下任意一种或多种:旋转处理、缩放处理、添加噪声处理和裁剪处理。添加噪声处理包括:椒盐噪声处理(通俗理解为在图片上加白点)和高斯噪声处理(通俗理解为将图片模糊化)。

增广数据集包括:待优化文件集中的每个待优化文件对应的处理数据集。

增广处理模块60,用于对待优化文件集中的每个待优化文件进行增广处理中对一个待优化文件进行处理的具体过程为:

增广处理模块60,用于对待优化文件集中的一个待优化文件分别进行增广处理中包括的所有处理,每种处理得到一个对应的增广文件,得到的所有增广文件作为待优化文件的处理数据集。

例如:增广处理包括1)旋转处理、2)缩放处理、3)添加噪声处理中的椒盐噪声处理和4)裁剪处理。待优化文件集中有10个待优化文件,将这10个待优化文件都进行4种处理,每个待优化文件都会得到4个增广文件(即,经过旋转处理的一个文件,经过缩放处理的一个文件,经过添加椒盐噪声处理的一个文件和经过裁剪处理的一个文件),这4个增广文件就是一个待优化文件的处理数据集;这个待优化文件集对应的增广数据集就是40个增广文件。

需要注意的是,增广处理包含的处理数量不同,相同的待优化文件集对应的增广数据集也是不同的。

对每个待优化文件进行增广处理包含的所有处理,得到多方面的特征增加,将增广数据集作为原有训练集的增广,提高训练集的整体质量,从而提高神经网络模型的预测准确度。

可选地,预处理模块20,用于对测试集进行预处理,得到处理后文件集具体为:

预处理模块包括:校验子模块21,用于对测试集中的所有文件进行文件格式的校验和后缀的校验;文件子模块22,用于将校验成功的所有文件作为处理后文件集;校验成功是指文件的文件格式符合预设文件格式条件、且文件的后缀与预设后缀一致。

具体的,对测试集进行预处理主要是对测试集中各文件的文件格式和后续进行校验。

以测试集中的文件为图片为例:预设文件格式条件为图片文件格式,预设后缀为.jpeg。测试集中有100张图片,有90张图片的文件格式为jpeg文件格式、且其后缀也为.jpeg,则认为这90张图片校验成功,将它们作为处理后文件集,另外10张图片删除。

在其他实施例中,校验子模块21,用于对测试集中的所有文件进行文件格式的校验和后缀的校验具体为:

校验子模块21,用于遍历测试集中的所有文件,将文件格式不符合预设文件格式条件的文件删除,将仅后缀不与预设后缀一致的文件的后缀改为预设后缀。

具体的,只会将文件格式与预设文件格式条件完全不符合的文件删除,而对仅后续不与预设后续一致的文件则通过修改后续的方式,仍然保留。具体的例子请参见对应的方法实施例,在此不作赘述。

优选地,预处理采用线程池技术,对测试集的处理进行了整体的加速,即使测试集非常巨大,其处理速度加速效果也非常明显。另外,也可以对训练集采用线程池技术进行预处理,提高训练集中各文件的稳定性。

可选地,还包括:分类排序模块,用于按照预设分类类别对处理后文件集中的所有文件进行分类排序;

归一化处理模块,用于对处理后文件集中的各文件进行归一化处理具体为:

归一化处理模块,用于对分类排序后的处理后文件集中的各文件进行归一化处理。

具体的,在对测试集进行预处理后,得到的处理后文件集中各文件是乱序的,即各个分类类别的文件穿插着排列,因此,可以对处理后文件集按照预设分类类别进行分类排序。

分类排序可能采用不同的排序方法,例如:冒泡排序法对文件名进行排序,文件名使用ascii码的小写字母的hex码为排序依据。预设分类类别中包括的分类类别(例如:有5种分类类别,每个文件都只属于一个分类类别)和排序方法(例如:类别的排序顺序和类别中各文件的排序顺序)根据实际需求设置,不作限定。

本实施例中,会先对测试集中的各文件进行文件格式和后缀的校验,得到较稳健的处理后数据集,预处理的过程使整个优化过程避免了因文件出错而处理中断的问题,节约了处理时间,提高处理效率。

在本发明的又一个实施例中,如图7所示,一种神经网络模型的训练集优化系统,包括:

数据分类模块10,用于将采集的原始数据按照预设比例分为测试集和训练集。

预处理模块20,与数据分类模块10电连接,用于对测试集进行预处理,得到处理后文件集。

分类排序模块70,与预处理模块20电连接,用于按照预设分类类别对处理后文件集中的所有文件进行分类排序。

归一化处理模块30,与分类排序模块70电连接,用于对处理后文件集中的各文件进行归一化处理具体为:归一化处理模块30,用于对分类排序后的处理后文件集中的各文件进行归一化处理。

概率预测模块40,与归一化处理模块30电连接,用于使用根据训练集训练好的神经网络模型预测每个经过归一化处理的文件的分类概率。

待优化统计模块50,与概率预测模块40电连接,用于根据每个文件的分类概率,按照预设待优化条件进行统计,得到对应的待优化文件集;

增广处理模块60,与待优化统计模块50电连接,用于对待优化文件集中的每个待优化文件进行增广处理,得到作为优化训练集的增广数据集。

具体的,在对测试集进行预处理后,得到的处理后文件集中各文件是乱序的,即各个分类类别的文件穿插着排列,因此,可以对处理后文件集按照预设分类类别进行分类排序。

分类排序可能采用不同的排序方法,例如:冒泡排序法对文件名进行排序,文件名使用ascii码的小写字母的hex码为排序依据。预设分类类别中包括的分类类别和排序方法根据实际需求设置,不作限定。

在对处理后数据集进行预测过程中,按照一个分类类别一个分类类别的顺序进行预测。

本实施例以文件为图片进行解释。

应用于图片时,增广处理包括以下任意一种或多种:旋转处理、缩放处理、添加噪声处理和裁剪处理。添加噪声处理包括:椒盐噪声处理和高斯噪声处理。

增广数据集包括:待优化文件集中的每个待优化文件对应的处理数据集。

增广处理模块60,用于对待优化文件集中的每个待优化文件进行增广处理中对一个待优化文件进行处理的具体过程为:

增广处理模块60,用于对待优化文件集中的一个待优化文件分别进行增广处理中包括的所有处理,每种处理得到一个对应的增广文件,得到的所有增广文件作为待优化文件的处理数据集。

需要注意的是,增广处理包含的处理数量不同,相同的待优化文件集对应的增广数据集也是不同的。

对每个待优化文件进行增广处理包含的所有处理,得到多方面的特征增加,将增广数据集作为原有训练集的增广,提高训练集的整体质量,从而提高神经网络模型的预测准确度。

优选地,处理后文件集中的每个文件的文件格式符合预设文件格式条件、文件的后缀与预设后缀一致,且文件对应的类别未被神经网络模型预测完。

在对测试集中的每个文件进行预处理时,除了对文件格式和后缀进行检验外(具体的检验过程和上述第二个系统实施例相同,在此不作赘述),还会以处理进度进一步进行筛选。

主要是因为:在对整个训练集的评估过程中,测试集和训练集的数量十分巨大,需要很长时间,为预防可能存在的程序宕机退出,或者机器意外挂机,导致的数据丢失,数据进度丢失问题,本实施例设计了处理进度恢复机制。测试集的评估过程,是按照每一个分类类别来进行处理和记录,本机制将流程细化到每一个分类类别,每次处理完后一个分类类别的所有文件时以追加的形式定向到文件系统的记录文件,在因意外重新启动时,检查该记录文件,若发现该类已经处理则,直接跳过进行下一个分类类别的预测,全部预测完后,进行待优化数据集的统计。

因此,在对测试集中的各文件进行预处理时,还会对处理进度进行校验。具体的例子请参见对应的方法实施例,在此不作赘述。

总的来说,处理后文件集中的文件除了文件格式、后缀正确外,还要其所处的分类类别是没有被预测完的,避免宕机等原因重复预测所有的测试集中的文件,提高了评估效率。

本实施例中对处理后文件集中的各文件进一步作了限定,出现意外时,神经网络模型不用重新预测测试集中的所有文件,提高了预测效率。

本发明使用与训练集同源的测试集的预测结果对训练集进行优化,得到准确的特征的增强,提高神经网络模型的预测准确率。在对测试集进行预处理时,对文件进行不同方面的校验,保证了处理后文件集的稳定性,且采用线程池技术对预处理实现整体加速。

应当说明的是,上述实施例均可根据需要自由组合。以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1