ML之FE:数据处理—特征工程之数据集划分成训练集、验证集、测试集三部分简介、代码实现、案例应用之详细攻略
目录
分割训练数据前,先打乱了输入数据和教师标签。因为数据集的数据可能存在偏向(比如,数据从“0”到“10”按顺序排列等)。
(1)、如果是MNIST数据集,从训练数据中,事先分割20%作为验证数据
训练集:训练网络模型参数。
验证集:网络模型的超参数。
ML之Validation:机器学习中模型验证方法的简介、代码实现、案例应用之详细攻略
1、MNIST数据集,从训练数据中,事先分割20%作为验证数据
- 分割训练数据前,先打乱了输入数据和教师标签。因为数据集的数据可能存在偏向(比如,数据从“0”到“10”按顺序排列等)。
- (1)、如果是MNIST数据集,从训练数据中,事先分割20%作为验证数据
-
- def shuffle_dataset(x, t):
- """打乱数据集
- Parameters
- ----------
- x : 训练数据
- t : 监督数据
- Returns
- -------
- x, t : 打乱的训练数据和监督数据
- """
- permutation = np.random.permutation(x.shape[0])
- x = x[permutation,:] if x.ndim == 2 else x[permutation,:,:,:]
- t = t[permutation]
-
- return x, t
-
-
- 数据集预处理:划分为x_train、t_train、x_test、t_test
- (x_train, t_train), (x_test, t_test) = load_mnist()
-
- x_train, t_train = shuffle_dataset(x_train, t_train) 调用shuffle_dataset()函数,打乱训练数据
-
- 进行定义验证数据集
- validation_rate = 0.20
- validation_num = int(x_train.shape[0] * validation_rate) 分割验证数据
- x_val = x_train[:validation_num]
- t_val = t_train[:validation_num]
- x_train = x_train[validation_num:]
- t_train = t_train[validation_num:]
DL之DNN:自定义MultiLayerNet【6*100+ReLU,SGD】对MNIST数据集训练进而比较【多个超参数组合最优化】性能
网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。
加入交流群
请使用微信扫一扫!