首先从Kaggle官网下载数据集https://www.kaggle.com/c/digit-recognizer/data里面包含三个CSV文档。train.csv是带标签的数据,用于训练和调参,test.csv是无标签的数据,在提交测试文档的时候才需要用到。
这里,我先把train里面的数据又随机划分为两个表,一个用于训练一个用于交叉验证,代码很简单,主要是pandas的一些简单功能。
#use torch.utils.data.Dataset to build my dataset from train.csv and test.csv
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
import torch
from torch.utils.data import DataLoader
from torch import nn
from torch.autograd import Variable
def train_val_split(train = 'train.csv',train_flie='train_set.csv',val_file='val_set.csv'):
#training set "train.csv" was downloaded from kaggle.com
train_data = pd.read_csv(train)
#training datas contains Feature and Label.
#divide training datas in