精华内容
下载资源
问答
  • yeast.mat多标签数据集

    2020-07-28 22:50:08
    yeast(酵母菌)数据集是一个多标签数据集,里面包括14种标签,已经划分好了训练集和测试集,可以直接进行调用,可用于机器学习,标签分类等等,在MATLAB和python中都可调用。
  • 针对现有多标签数据集转换方法无法有效利用标签间的语义相关性和共现性知识, 以及转换得到的数据集相对于问题规模偏小等问题, 提出了一种新的多标签数据集转换方法RAPC-W(ranking by all pairwise comparision based...
  • 102类花卉分类是深度学习的一个经典项目,但是数据难寻,在此提供已划分数据集,并且附带了训练集、测试集、验证集标签txt文件+完整pytorch代码
  • 数据集划分

    千次阅读 2018-08-07 16:25:23
    1.使用sklearn.model_selection.train_test_...*arrays指定需划分数据集 random_state指定随机种子 test_size指定测试集大小 train_data,test_data = train_test_split(processed_data,random_state=1,test_si...

    1.使用sklearn.model_selection.train_test_split(*arrays, **options)

    1. *arrays指定需划分数据集
    2. random_state指定随机种子
    3. test_size指定测试集大小
    train_data,test_data = train_test_split(processed_data,random_state=1,test_size = 0.1)

    sklearn文档
    2.使用Numpy.random.choice(a, size=None, replace=True, p=None)

    1. a为可采样的样本
    2. size为输出数据格式
    3. replace为True,则可以出现重复采样点;False,则不可以出现重复采样点
    4. P为采样概率分布,默认为均匀分布
    sample = np.random.choice(processed_data.index,size = int(len(processed_data)*0.9),replace = False)
    train_data,test_data = processed_data.iloc[sample],processed_data.drop(sample)
    
    

    Numpy文档

    展开全文
  • 最近做图像分类,数据集的整理真的好费时间,找到一个代码,非常好使,推荐给大家。 实现的功能是,将一个文件夹下的每个子文件夹的一半数据分割出来并保存,生成相应的train.txt,test.txt。 对代码做了轻微的修改...

    最近做图像分类,数据集的整理真的好费时间,找到一个代码,非常好使,推荐给大家。

    实现的功能是,将一个文件夹下的每个子文件夹的一半数据分割出来并保存,生成相应的train.txt,test.txt。

    对代码做了轻微的修改

    原网址:https://www.cnblogs.com/yymn/articles/4615372.html

    自己弄数据集,真是非一般的体验呀。虽然说这样算是正在意义上经历一个完整的项目,被迫学习了很多数据处理的问题。但是搞数据真是太蛋疼了。

    想了很多方法,但最后发现其实自己整理的数据,最合理的分配训练集和测试集的方法。就是先把数据全部整到一起,然后按一定比例从中随机选出训练集和测试集(这两个肯定是不能重复的),比如这里的25%作为测试集,75%作为训练集。

    编写这个程序一开始,主要是有些函数不知道怎么用。编这程序是发现了即使是matlab编写程序都要用disp输出一些信息,这样更方便查看程序运行进度。其余就是新学习了一些函数,再把之前编写的程序合起来。

    clear;close all;clc;
    %%
    %程序实现的功能
    %1、把指定路径的数据(已按类别放置在不同的文件夹中),随机的把其中的75%的划分为训练集,25%划分为测试集
    %2、训练集按类别放在指定路径的train文件夹中,测试集按类别放在指定路径的val文件夹中
    %3、在train和val文件夹的同级文件夹按照caffe需求生成对应的train.txt和val.txt的label
    %%
    %程序中用到的之前不清楚的函数如下
    %1)disp:用来在界面上显示一些必要的信息,方便查看程序进度。disp(' ')可以起到在界面上换行显示的作用
    %2)str2double:带起之前一直使用的str2num,matlab的提示是这样函数效率更高。而且这两个函数输出的数据类型都是double类型。
    %3)randperm(n):生成一个1到n直接的随机数列
    %4)copyfile(a,b):把文件a复制到路径b,路径b带有最后的\符号
    %
    %
    %
    %%
    disp('程序开始执行');
    %%%%%%需要更改的参数(即两个路径)%%%%%%%%%%%%%%%%%%%%%%%%%%
    
    pathSource='G:\遥感数据库\1\AID';%AID文件夹下有30个文件夹
    
    pathDestination='G:\遥感数据库\deal';%保存分割后数据集以及train.txt和test.txt
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %在目标路径创建train、val文件夹
    pathCreDirTrain=[pathDestination,'\','train','\'];
    mkdir(pathCreDirTrain);
    pathCreDirVal=[pathDestination,'\','val','\'];
    mkdir(pathCreDirVal);
    
    
    %读取文件夹列表,这种方式读取会保留原文件.(在结构体中第一个)和上一层目录..(在结构体第二个)
    dirSourceList=dir(pathSource);
    countSourceList=length(dirSourceList);%文件夹个数
    %拷贝数据到目标路径
    for numDirList=3:countSourceList
        %if(length(dirSourceList(numDirList).name)>=2)%根据这个过滤掉在此文件夹可能的train.txt、val.txt、count.txt文件
            %continue;
        %end    
        fileName=dir([pathSource,'\',dirSourceList(numDirList).name]);%读取子文件夹中的图片
        
        %统计子文件夹中的文件个数
        fileSum=length(fileName);
        fileNum=fileSum-2;%为了生成对应于读取的从3开始的文件,只能先减去2,然后生成随机数后加上2
        disp(' ');%加入一个空格,作为在界面显示中一个类似于换行的工具
        %在程序中增加一些输出信息,方便查看数据内容
        disp(['原始数据子文件夹',num2str(dirSourceList(numDirList).name),'中有图片:',num2str(fileNum)]);
        
        %由于matlab读取文件的规则,在文件列表中肯定最前面会有.和..这两个文件
        %所以想到先生成fileSum-2范围内的随机数,然后再各项加2,就为真正要找的随机数
        numFileList=randperm(fileNum);
        numFileList=numFileList+2;
        partitionPosition=round(fileNum/2);%这是通过四舍五入确定的分割位置。这是划分数据的比例,2是按一半划分,如果是4的话,'先拷贝val(前25%)后拷贝train(后75%)'
        
        %在程序中增加一些输出信息,方便查看数据内容
    %     disp(['先拷贝val(前25%)后拷贝train(后75%)']);
        
       %%
        %拷贝测试集数据val
        %在程序中增加一些输出信息,方便查看程序执行进度
        disp(['在val文件夹下创建子文件夹',num2str(dirSourceList(numDirList).name)]);
        disp(['拷贝',num2str(partitionPosition),'张图片到val文件夹下子文件夹',num2str(dirSourceList(numDirList).name),'中']);
         
        %不知道这种拷贝东西到别的地方,是先拷贝数据量比较多的部分,还是数据量比较少的部分,这有什么讲究。
        %在目标val文件夹中,创建对应的子文件夹
        pathCreValDir=[pathCreDirVal,dirSourceList(numDirList).name,'\'];
        mkdir(pathCreValDir);
        
        %在程序中增加一些输出信息,方便查看程序执行进度
        disp(['复制测试数据到val子文件夹',num2str(dirSourceList(numDirList).name),'中']);
        
        %复制图片到指定路径
        for picNum=1:partitionPosition%由于是要读取numFileList中生成的随机数据,所以从1开始
            copyfile([pathSource,'\',dirSourceList(numDirList).name,'\',fileName(numFileList(picNum)).name], ...
                pathCreValDir);
        end
       %%
        %拷贝训练集数据train
        %在程序中增加一些输出信息,方便查看程序执行进度
        disp(['在train文件夹下创建子文件夹',num2str(dirSourceList(numDirList).name)]);
        disp(['拷贝',num2str(fileNum-partitionPosition),'张图片到train文件夹下子文件夹',num2str(dirSourceList(numDirList).name),'中']);  
        
        %在目标train文件夹中,创建对应的子文件夹
        pathCreTrainDir=[pathCreDirTrain,dirSourceList(numDirList).name,'\'];
        mkdir(pathCreTrainDir);  
        
        %在程序中增加一些输出信息,方便查看程序执行进度
        disp(['复制训练数据到Train子文件夹',num2str(dirSourceList(numDirList).name),'中']);
        
        %复制图片到指定路径
        for picNum=partitionPosition+1:fileNum%由于是要读取numFileList中生成的随机数据,所以从1开始
            copyfile([pathSource,'\',dirSourceList(numDirList).name,'\',fileName(numFileList(picNum)).name], ...
                pathCreTrainDir);
        end    
    end
    disp('数据拷贝完毕');
    
    
    %%
    %生成label
    disp('开始生成label');
    %考虑到最好写个程序,能够一步完整所有操作。所以在这程序下面加上生成label的功能
    %在上面的程序中,已经有变量pathCreDirTrain(目标Train的路径)、pathCreDirVal(目标Val的路径)
    %先生成train文件夹中的label
    disp('开始生成trainlabel');
    dirTrainList=dir(pathCreDirTrain);%读取文件夹列表,这种方式读取会保留原文件.(在结构体中第一个)和上一层目录..(在结构体第二个)
    countTrainList=length(dirTrainList);%文件夹个数
    fid = fopen([pathDestination,'\','train.txt'], 'w');%打开train文件夹时,对应的文本文件
    for numList=3:countTrainList%文件夹从3开始
        %if(length(dirTrainList(numList).name)>=2)%根据这个过滤掉在此文件夹可能的train.txt文件
            %continue;
        %end
        fileName=dir([pathCreDirTrain,'\',dirTrainList(numList).name]);%读取子文件夹
        fileSum=length(fileName);%统计子文件夹中的文件个数
        for fileNum=3:fileSum%文件从3开始
            fprintf(fid,'%s', [dirTrainList(numList).name,'/',fileName(fileNum).name]);%输入:子文件/图片名称
            fprintf(fid,'%s', ' ');%空格间隔符    
            fprintf(fid,'%d', numList);%加入label,即文件夹名称
            fprintf(fid,'\n');%换行
        end
    end
    fclose(fid);%关闭文本文件
    fclose('all');%关闭所有连接,防止没关掉的情况
    disp('trainlabel生成完毕');
    
    %在上面的程序中,已经有变量pathCreDirTrain(目标Train的路径)、pathCreDirVal(目标Val的路径)
    %先生成train文件夹中的label
    disp('开始生成vallabel');
    dirValList=dir(pathCreDirVal);%读取文件夹列表,这种方式读取会保留原文件.(在结构体中第一个)和上一层目录..(在结构体第二个)
    countValList=length(dirValList);%文件夹个数
    fid = fopen([pathDestination,'\','val.txt'], 'w');%打开train文件夹时,对应的文本文件
    for numList=3:countValList%文件夹从3开始
        %if(length(dirValList(numList).name)>=2)%根据这个过滤掉在此文件夹可能的train.txt文件
         %   continue;
        %end
        fileName=dir([pathCreDirVal,'\',dirValList(numList).name]);%读取子文件夹
        fileSum=length(fileName);%统计子文件夹中的文件个数
        for fileNum=3:fileSum%文件从3开始
            fprintf(fid,'%s', [dirValList(numList).name,'/',fileName(fileNum).name]);%输入:子文件/图片名称
            fprintf(fid,'%s', ' ');%空格间隔符    
            fprintf(fid,'%d', numList);%加入label,即文件夹名称
            fprintf(fid,'\n');%换行
        end
    end
    fclose(fid);%关闭文本文件
    fclose('all');%关闭所有连接,防止没关掉的情况
    disp('vallabel生成完毕');

    结果如下:

     

     

    展开全文
  • 获取scikit-learn自带的数据集:datasets.load_*() # 获取小规模数据集,数据包含在datasets里(不需要联网)datasets.fetch_*(data_home=None) # 获取大规模数据集(需要联网下载),data_home表示数据的保存目录(默认&...

    获取scikit-learn自带的数据集:
    datasets.load_*()  # 获取小规模数据集,数据包含在datasets里(不需要联网)
    datasets.fetch_*(data_home=None)  # 获取大规模数据集(需要联网下载),data_home表示数据的保存目录(默认"~/scikit_learn_data/")

     

    demo.py(获取自带小数据集,load_*()):

    from sklearn.datasets import load_iris
    
    
    # load_*() 加载并返回鸢尾花数据集 (scikit-learn自带的数据集)
    li = load_iris()  # 返回datasets.base.Bunch类型(字典格式)
    
    print(li.data)  # 所有样本的特征值 (二维数组)
    '''
    [[5.1 3.5 1.4 0.2]
     [4.9 3.  1.4 0.2]
     [4.7 3.2 1.3 0.2]
      ...          ...
     [6.5 3.  5.2 2. ]
     [6.2 3.4 5.4 2.3]
     [5.9 3.  5.1 1.8]]
    '''
    
    print(li.target)  # 目标值(鸢尾花的类别)
    '''
    [0 0 0 ... 2 2 2]
    '''
    
    print(li.DESCR)  # 数据集的描述信息
    
    # 特征名
    print(li.feature_names)  # ['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']
    
    # 目标名(标签名)
    print(li.target_names)  # ['setosa' 'versicolor' 'virginica']
    
    

    demo.py(数据集的划分,划分为训练集和测试集,train_test_split()):

    from sklearn.datasets import load_iris
    from sklearn.model_selection import train_test_split
    
    
    # 加载并返回鸢尾花数据集 (scikit-learn自带的数据集)
    li = load_iris()  # 返回datasets.base.Bunch类型(字典格式)
    
    # 划分数据集train_test_split() 第一个参数表示特征值,第二个参数表示目标值,test_size表示测试集所占的百分比(推荐0.25)
    x_train, x_test, y_train, y_test = train_test_split(li.data, li.target, test_size=0.25)  # 划分是按比例随机划分
    # 返回值 x_train表示训练集的特征值,x_test表示测试集的特征值,y_train表示训练集的目标值,y_test表示测试集的目标值
    
    # 训练集的特征值
    print(x_train)
    '''
    [[4.7 3.2 1.3 0.2]
     [6.3 2.5 4.9 1.5]
     [6.  3.  4.8 1.8]
     ...          ...
     [6.1 2.8 4.7 1.2]
     [5.7 3.8 1.7 0.3]
     [5.7 3.  4.2 1.2]]
    '''
    
    # 训练集的目标值
    print(y_train)
    '''
    [0 1 2 1 0 2 0 1 2 1 1 2 0 0 ... 1 0 0 1 0 1 0 0 0 0 1 0 1]
    '''
    
    

    demo.py(获取scikit-learn官网的大数据集,fetch_*()):

    from sklearn.datasets import fetch_20newsgroups, clear_data_home
    
    
    # fetch_*() 获取官网上的大数据集(需要联网下载)。
    # data_home表示数据集的保存目录,subset='all'表示训练集和测试集(可以只下载训练集或测试集)
    news = fetch_20newsgroups(data_home="./mydata",subset='all')  # 获取新闻数据集
    
    print(news.data)  # 特征值
    print(news.target)  # 目标值 [10  3 17 ...  3  1  7]
    
    
    # 清空下载的数据集。  data_home表示数据集的保存目录
    # clear_data_home(data_home="./mydata")
    
    

     

     

    展开全文
  • 数据:使用kaggle上Titanic数据集 划分方法:随机划分 # 导入pandas模块,sklearn中model_select模块 import pandas as pd from sklearn.model_select import train_test_split # 读取数据 data = pd.read_csv('....
  • python 随机划分图片数据集

    千次阅读 2019-07-23 09:47:38
    一个随机划分图片数据集的方法。 任务描述:我的所有图片保存在同一个文件夹里,需要随机划分为训练集和测试集。 处理过程:读取文件列表,将列表打乱,截取列表一部分 import os import random import shutil ...

    一个随机划分图片数据集的方法。

    任务描述:我的所有图片保存在同一个文件夹里,需要随机划分为训练集和测试集。

    处理过程:读取文件列表,将列表打乱,截取列表一部分

    import os
    import random
    import shutil
    
    
    def get_imlist(path):
        return [os.path.join(path, f) for f in os.listdir(path) if f.endswith('.bmp')]
    
    
    def getData(src_path):
        dest_dir = './test'  # 这个文件夹需要提前建好
        img_list = get_imlist(src_path)
        random.shuffle(img_list)
        le = int(len(img_list) * 0.8)  # 这个可以修改划分比例
        for f in img_list[le:]:
            shutil.move(f, dest_dir)
    
    
    getData('./test_data2')
    

     

    展开全文
  • 按照一般的做法,会将总数据集划分为训练集(train-data)、验证集(valid-data)以及测试集(test-data)。这里为了方便,将总的数据集划分为训练集和验证集。 有时候使用随机分配的算法会导致每个标签下样本的个数...
  • Pytorch将数据集划分为训练集、验证集和测试集

    万次阅读 多人点赞 2020-08-26 16:36:44
    我们可以借助Pytorch从文件夹中读取数据集,十分方便,但是Pytorch中没有提供数据集划分的操作,需要手动将原始的数据集划分为训练集、验证集和测试集,废话不说,这里我写了一个工具类,帮助大家将数据集自动划分...
  • 数据集划分 对于分类问题训练集和测试集的划分不应该用整个样本空间的特定百分比作为训练数据,而应该在其每一个类别的样本中抽取特定百分比作为训练数据。sklearn模块提供了数据集划分相关方法,可以方便的划分训练...
  • football数据集,如果大家没有积分可以前往http://www-personal.umich.edu/~mejn/netdata/地址下载
  • 此程序是将所有的带有标签数据集划分为训练数据集和验证数据集 按照一定比例从整个数据集中随机挑选出验证数据集,剩下的部分作为训练数据集 从裁剪之后的所有图像集合中随机采样出1/9的图像作为测试图像,剩下的...
  • 分类算法 - 数据集介绍与划分

    千次阅读 2019-03-26 17:21:41
    1 数据集划分 机器学习一般的数据集会划分为两个部分: 训练数据:用于训练,构建模型 测试数据:在模型检验时使用,用于评估模型是否有效 划分比例: 训练集:70% 80% 75% 测试集:30% 20% 25% API ...
  • matlab数据集标签

    千次阅读 2018-03-28 00:52:28
    matlab数据集标签train = cell(11400, 1); label = zeros(11400, 1); dis1 = dir(['E:\Adesk\Cpp-Primer\PCANet\PCANet\datas\train\' '.']); nms1 = {dis1.name}; i=0; for m = 1:length(nms1) nm1 = ['E:\...
  • python 划分数据集为训练集和测试集

    万次阅读 多人点赞 2016-12-05 10:42:07
    sklearn的cross_validation包中含有将数据集按照一定的比例,随机划分为训练集和测试集的函数train_test_splitfrom sklearn.cross_validation import train_test_split #x为数据集的feature熟悉,y为label. x_train,...
  • 数据集:人脸卡通表情FERG数据,包含6个卡通人物,每个卡通人物7个表情,每张图片256*256的png格式,数据集压缩包大小2.95GB。 图片路径tree: 数据集的85%为训练集,15%为测试集 代码如下: ''' id存索引,...
  • NUS-WIDE数据集划分

    千次阅读 2020-01-19 00:03:22
    NUS-WIDE[1]是多标签数据集,[1] 的划分方式感觉有些谜:每个类随机选 100 个造成 query set。问 DCMH 作者,见 [3] References NUS-WIDE Simultaneous Feature Learning and Hash Coding with Deep Neural ...
  • 深度学习之数据处理——如何将图片和标签打乱并划分为训练集和测试集 记录我的第一篇CSDN博客 最近我在网上找到Office31数据集,这个数据集中包含了三个子数据集,分别为:Amazon、dslr、webcam,每个子数据集包含31...
  • 用pandas划分数据集——训练集和测试集

    万次阅读 多人点赞 2018-10-22 13:35:42
    数据:使用kaggle上Titanic数据集 划分方法:随机划分 # 导入pandas模块,sklearn中model_select模块 import pandas as pd from sklearn.model_select import train_test_split # 读取数据 data =...
  • 遇到一个划分数据集的问题,所以手动仿照sklearn库的划分函数写了一个函数。 环境:Windows 7,PyCharm,Python 3.6,numpy1.14.2+mkl 调用sklearn库的划分函数如下 其中train_data为训练输入的数据,train_...
  • 摘要:本文对机器学习中的UCI数据集进行介绍,带你从UCI数据集官网出发一步步深入认识数据集,并就下载的原始数据详细讲解了不同类型的数据集整理如何通过程序进行整理。为了方便使用,博文中附上了包括数据集整理及...
  • 机器学习数据集划分

    千次阅读 2020-02-22 14:14:29
    # 工具:python3 数据分析挖掘常用库导入 #固定导入 import numpy as np #科学计算基础库,多维数组对象ndarray import pandas as pd #数据处理库,DataFrame(二维数组) import matplotlib as mpl #画图基础库 ...
  • 文章《Keras 入门课6 -- 使用Inception V3模型进行迁移学习》https://blog.csdn.net/tsyccnh/article/details/78889838 使用的数据集
  • 交叉验证——对数据集划分

    万次阅读 2018-06-07 20:19:36
    以我们的比赛为例,赛方提供有标签的训练数据和无标签的测试数据,要求我们提交测试数据的预测标签值,如果我们不划分数据集,直接用所有的数据进行训练,最后直接对无标签的测试数据预测,我们很难预测我们模型的...
  • 深度学习中的与图片有关的任务,如图像识别,图像分类,目标检测,图像分割等,在准备图片数据集时,图片的序号和标签往往是由.txt文件获取的。本文将介绍如何给文件夹中的图片数据集标签并保存的.txt文件中。 ...
  • sklearn-数据集划分

    千次阅读 2018-05-27 12:17:21
    一般我们划分数据集都是用sklearn.model_selection里的函数,当然也可以人工划分一、train_test_split最常用的是train_test_split()函数,用来随机划分样本数据为训练集和测试集。优点:随机客观的划分数据,减少...
  • Python 生成带标签数据集的 CSV 文件

    千次阅读 2018-06-17 15:36:14
    #!/usr/bin/python ...# Python 生成 CSV 文件,可用于生成带标签数据集 CSV 文件,标签从0开始自动升序:0,1,2,3... # 作者:huihut # 仓库:https://gist.github.com/huihut/9881c98a1d9279d4fa9dfd8475e3f...
  • 已划分训练、测试、验证,亚洲人面部图像,姿势,表情,已划分标签。针对深度学习中人脸各种识别任务训练、测试以及验证
  • 数据集划分为训练集,验证集,测试集 """ import os import random import shutil # 创建保存图像的文件夹 def makedir(new_dir): if not os.path.exists(new_dir): os.makedirs(new_dir) random.seed(1) # ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 59,347
精华内容 23,738
关键字:

如何划分多标签数据集