用one-hot编码方法读取类别标签(文件名形式)并划分数据集

目的:one-hot编码方法读取类别标签(文件名形式),并划分数据集生成 .npy二进制文件

过程描述:在载入文件夹下图片和输出图片文件夹名后需要用文件名作为类别标签,方法是用one-hot编码划分数据集,以 .npy二进制文件格式保存

python代码:

# one-hot 编码
le = preprocessing.LabelEncoder()
le.fit(os.listdir(DATA_DIR))
list(le.classes_)
print(list(le.classes_))
y = le.transform(y)
print(x.shape, y.shape)


#划分数据集(.npy格式保存标签文件)
x_train, x_test, y_train, y_test, y_label_train, y_label_test = train_test_split(x, y, y_label, random_state=1, test_size=0.3)
np.save("x_train.npy", x_train); np.save("y_train.npy", y_train); np.save("y_label_train.npy", y_label_train);
np.save("x_test.npy", x_test); np.save("y_test.npy", y_test); np.save("y_label_test.npy", y_label_test)

代码结果:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据标准化: 数据标准化是将不同的特征值按照一定的规则进行缩放,使得它们具有相同的尺度和范围,以便于模型的训练和预测。常用的数据标准化方法有最小-最大标准化和Z-score标准化。 最小-最大标准化方法将数据缩放到[0,1]的范围内,公式如下: $$X_{norm}=\frac{X-X_{min}}{X_{max}-X_{min}}$$ 其中,$X$是原始数据,$X_{min}$和$X_{max}$是数据的最小值和最大值。 Z-score标准化方法将数据缩放到均值为0,标准差为1的范围内,公式如下: $$X_{norm}=\frac{X-\mu}{\sigma}$$ 其中,$\mu$和$\sigma$分别是数据的均值和标准差。 划分数据集: 在机器学习中,我们需要将数据集划分为训练集、验证集和测试集。训练集用于训练模型,验证集用于调整模型的超参数,测试集用于评估模型的性能。 常用的数据集划分方法有随机划分和分层划分。随机划分是随机选择数据点作为训练集、验证集和测试集,缺点是可能导致数据集不均衡。分层划分是根据数据的类别标签进行划分,保证每个数据集中的类别标签比例相同。 对标签进行one-hot编码: 在机器学习中,有时需要将分类变量转换为数字变量,以便于模型的训练和预测。one-hot编码是一种常用的方法,将一个分类变量转换为多个二元变量。 例如,有一个分类变量“动物”,包含“猫”、“狗”、“鸟”三个类别,可以将其转换为三个二元变量:“猫”变量、 “狗”变量和“鸟”变量。如果一个数据点属于“猫”类别,则“猫”变量为1,其它变量为0。 one-hot编码可以用来处理分类变量,避免模型将分类变量作为连续变量处理,从而提高模型的性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值