首先,我们要下载Letter Recognition数据。 Letter Recognition 是字符识别任务,有20000个数据,每个数据17维,其中有一维是给定标签(26个英文字母)。
我们首先下载Letter Recognition 数据集,见
http://archive.ics.uci.edu/ml/machine-learning-databases/letter-recognition/
点击data 下载。
其次,我们要用python 加载数据,我们用pandas的read_csv来加载
import torch
from torch import nn as nn
from torch.nn import functional as F
from torch import optim
import torch.utils.data as Data
import torchvision
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
import time
torch.set_default_tensor_type(torch.DoubleTensor)
'''load letter-recognition dataset'''
dataset = pd.read_csv('letter-recognition.data')
data = np.array(dataset.T)
之后将数据集划分为训练集和测试集,并且将标签转化为数字,即A,B,C之类的转化为0到25
X_train = data[1:, :16000].T # [16000, 16]
X_train_label = data[0:1, :16000].T # [16000, 1]
for i in range(len(X_train_label)):
X_train_label[i, :] = float(ord(str(X_train_label[i, :])[2]) - ord('A'))
X_train = torch.from_numpy