zl程序教程

您现在的位置是:首页 >  后端

当前栏目

python工具方法 4 依据随机种子将数据划分为训练集、测试集、验证集

2023-09-14 09:15:04 时间

1、图像文件划分

依据随机种子将图片文件数据按照3:1:1分成训练集,测试集,验证集三部分保证可复现,同时确保每一个子类的图片分布都是3:1:1(可以修改0.4为0.2,则数据集划分比例为,8:1:1)

代码通过遍历目录的每一个子文件夹,单独对子文件夹的数据连续调用两次train_test_split函数,实现对数据的分类;对目录X划分后,运行结束多出三个目录,X-验证 ,X-测试 ,X-训练

# -*- coding: utf-8 -*-
"""
Created on Wed Jun 19 09:53:39 2019

@author: root
"""
import os,shutil
from sklearn.cross_validation import train_test_split
#from sklearn.model_selection import train_test_split
def splitDir(dirPath,random_state):
    path_type=['验证','测试','训练']
    class_arr=[]
    class_name_arr=[]
    class_tmp=[]
    name_dir="name_dir"
    for (root, dirs, files) in os.walk(dirPath):
        if files:
            for f in files:
                if name_dir not in root:
                    #切换下一个分类时,将上一个分类的数据存入
                    if name_dir!="name_dir":#第一次运行