KFold分割5折检验数据集
import os import numpy as np from sklearn.model_selection import KFold import json ############################ 读取img数据名列表 ################################### data_path = r'./training_set' index_list =[] # 存放所有图像名称 for each_img_name in sorted(os.listdir(data_path)): # each_img_name: 1.PNG # print('each_img_name:',each_img_name) if 'Annotation' in each_img_name.split('_')[-1]: continue img_index = each_img_name.split('_')[0] # img_index: 51 # print('img_index:',img_index) index_list.append(img_index) print('index_list:',index_list) #################################################################################### ###################### 划分交叉验证的数据集 ###################### k = 5 # 分成几分,即几折检验 kf =KFold(n_splits=k,shuffle= True,random_state=1) num = 0 write_dic = {} for train,test in kf.split(index_list): train_index = np.array(index_list)[train] test_index = np.array(index_list)[test] print('train:',len(train_index)) print('test:', len(train_index)) write_dic[num+1] = {'train':list(train_index),'test':list(test_index)} num +=1 save_path = '{}_split_index.txt'.format(k) with open(save_path,'w+') as f: f.write(json.dumps(write_dic)) # 字典转json json.loads json转字典 print() ########################## 测试读入 ############################### # load_path = '{}_split_index.txt'.format(k) # with open(load_path,'r') as f: # data = f.read() # data = json.loads(data) # print(data)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)