本申请涉及信息处理技术,特别涉及用于深度学习的数据划分方法及可读存储介质。
背景技术:
1、在对图像处理进行的深度学习的模型训练中,数据的划分方式非常重要,若相同数据全部划分在同一种类型的数据集里时,模型往往在当前数据上会存在严重的欠拟合或过拟合,从而导致模型的泛化能力交差。因此需要将同一场景中的数据划分在一起,不同场景的数据分开,以保证在后续的模型训练的数据处理阶段中,可以依据不同的场景将数据划分到不同的类型中,然后将不同类型的数据集同时划分在训练集和测试集中,保证模型在训练过程中能够拟合得到更好的结果,获得更好的泛化性。
2、目前的数据划分方法一般有两种:
3、一种是人工划分,即通过人工对数据进行筛选和分类。但这种方式存在工作量大较大的问题,例如在人工对数据进行划分时,当数据的场景较多时,人工难以找到以往分配的同类型文件夹,或因为分类出的文件夹数量较多而导致工作量大,且人工划分时,会因为人为因素导致划分错误,使得数据划分的过程中质量不高。
4、另一种是通过常用的cv(computer vision,计算机视觉)库进行提取,从而将相似的图像划分为一类。但这种方式的错误率较高,因为在使用cv库进行数据划分时,由于cv对像素信息较为敏感,当同一场景下的图片的前景发生变化时,很容易就将其划分成不同的类别,或者一个类型中只能找到几张最相似的图片,导致划分过细,泛化性较差。
5、因此,现有技术中存在数据划分效果较差的问题。
技术实现思路
1、本申请的目的是要解决目前数据划分方法中数据划分效果较差的问题,提供了一种用于深度学习的数据划分方法及可读存储介质。
2、本申请解决上述技术问题采用的技术方案中,第一方面提供了一种用于深度学习的数据划分方法,包括以下步骤:
3、步骤1、对所获取的图像进行预处理及提取图像的特征,将各图像的特征组合成一个特征空间;
4、步骤2、使用k-means算法对特征空间中的各特征进行聚类,将聚类为一类的各特征对应的图像划分为同一类型的数据集。
5、具体的,为提供一种预处理及提取图像的特征的方法,则步骤1中,所述对所获取的图片进行预处理及提取图像的特征,包括:
6、对所获取的图片进行特征提取,并对所提取的特征进行缩放及归一化,使得各特征均为同一预设维数的图像特征。
7、进一步的,为细化特征提取,则所述对所获取的图像进行特征提取,包括:
8、分别将所获取的图像送入预训练模型,以进行特征提取。
9、具体的,为提供一个较为符合要求的图像特征,则所述预设维数为512维。
10、再进一步的,为细化步骤2,则步骤2包括:
11、步骤201、使用k-means算法,将特征空间中的特征划分为不同的簇;
12、步骤202、将同一簇内各特征对应的图像分入同一文件夹,根据所划分的簇,将各特征对应的图像分入对应文件夹,得到各类型的数据集。
13、再进一步的,为细化步骤201,则步骤202中,所述使用k-means算法,将特征空间中的特征划分为不同的簇时,采用误差平方和来动态调整阈值,进而得到最优的簇空间距离及簇间平均距离,并选择使用平均距离从迅速变化到缓慢降低的阈值作为最优的k值,获取该k值划分出的不同的簇,作为最终划分出的各簇。
14、具体的,为细化误差平方和,则所述误差平方和的计算方式为:
15、其中,sse是指误差平方和,ci是指第i个簇,p是ci中的样本点,mi是ci的质心,即ci中所有样本的均值。
16、再进一步的,由于在使用k-means算法,将特征空间中的特征划分为不同的簇前,采用误差平方和来动态调整阈值时,一般会限定一个大致的簇范围,以减少迭代次数及缩短计算时间,则所述使用k-means算法,将特征空间中的特征划分为不同的簇前,还将簇范围预设为预设范围。
17、具体的,为提供一个较为可行的簇范围,则所述预设范围为10-50。
18、本申请解决上述技术问题采用的技术方案中,第二方面提供了一种可读存储介质,所述可存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述用于深度学习的数据划分方法。
19、本申请的有益效果是,在本申请方案中,先利用图像特征提取,并形成特征空间,再使用k-means算法对各特征空间进行聚类划分,从而能够按照场景对各图像进行划分,解决了因为数据划分不合理导致的深度学习模型欠拟合或者过拟合的问题,另外,由于人工只需输入图像,不需要人工参与划分,工作量大大减少的同时也提高了划分效率及准确度。
20、
1.用于深度学习的数据划分方法,其特征在于,包括以下步骤:
2.如权利要求1所述的用于深度学习的数据划分方法,其特征在于,步骤1中,所述对所获取的图片进行预处理及提取图像的特征,包括:
3.如权利要求2所述的用于深度学习的数据划分方法,其特征在于,所述对所获取的图像进行特征提取,包括:
4.如权利要求2所述的用于深度学习的数据划分方法,其特征在于,所述预设维数为512维。
5.如权利要求1-4任一项所述的用于深度学习的数据划分方法,其特征在于,所述步骤2包括:
6.如权利要求5所述的用于深度学习的数据划分方法,其特征在于,步骤202中,所述使用k-means算法,将特征空间中的特征划分为不同的簇时,采用误差平方和来动态调整阈值,进而得到最优的簇空间距离及簇间平均距离,并选择使用平均距离从迅速变化到缓慢降低的阈值作为最优的k值,获取该k值划分出的不同的簇,作为最终划分出的各簇。
7.如权利要求6所述的用于深度学习的数据划分方法,其特征在于,所述误差平方和的计算方式为:
8.如权利要求6所述的用于深度学习的数据划分方法,其特征在于,所述使用k-means算法,将特征空间中的特征划分为不同的簇前,还将簇范围预设为预设范围。
9.如权利要求8所述的用于深度学习的数据划分方法,其特征在于,所述预设范围为10-50。
10.可读存储介质,其特征在于,所述可存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述用于深度学习的数据划分方法。