如何利用python将txt文件划分训练集和测试集

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何利用python将txt文件划分训练集和测试集相关的知识,希望对你有一定的参考价值。

参考技术A 通常使用的划分方法是留出法,即随机选择2/3的数据作为训练数据,剩余1/3的数据作为测试数据,但要保证训练集和测试集中数据分布大致相同,以二分类问题为例,两个数据集中正例和反例的比例不能相差过大,都以50%为佳。也有其他方法如交叉验证法、自助法等,它们在训练时间、训练效果、内存占有量等方面各有优劣,具体请看周志华的机器学习(西瓜书)第二章。本回答被提问者采纳

划分训练、测试集和数据观察

参考技术A 一般在进行模型的测试时,我们会将数据分为训练集和测试集。在给定的样本空间中,拿出大部分样本作为训练集来训练模型,剩余的小部分样本使用刚建立的模型进行预测。

train_test_split 函数利用伪随机数生成器将数据集打乱。默认情况下0.75为训练集,0.25测试集。

在构建机器学习模型之前,通常最好检查一下数据,看看如果不用机器学习能不能轻松完成任务,或者需要的信息有没有包含在数据中。
此外,检查数据也是发现异常值和特殊值的好方法。举个例子,可能有些鸢尾花的测量单位是英寸而不是厘米。在现实世界中,经常会遇到不一致的数据和意料之外的测量数据。检查数据的最佳方法之一就是将其可视化。一种可视化方法是绘制散点图(scatter plot)。数据散点图将一个特征作为 x 轴,另一个特征作为 y 轴,将每一个数据点绘制为图上的一个点。不幸的是,计算机屏幕只有两个维度,所以我们一次只能绘制两个特征(也可能是3 个)。用这种方法难以对多于 3 个特征的数据集作图。解决这个问题的一种方法是绘制散点图矩阵(pair plot),从而可以两两查看所有的特征。如果特征数不多的话,比如我们这里有 4 个,这种方法是很合理的。但是你应该记住,散点图矩阵无法同时显示所有特征之间的关系,所以这种可视化方法可能无法展示数据的某些有趣内容。

数据点的颜色与鸢尾花的品种相对应。为了绘制这张图,我们首先将 NumPy 数组转换成 pandas DataFrame。pandas 有一个绘制散点图矩阵的函数,叫作 scatter_matrix。矩阵的对角线是每个特征的直方图

从图中可以看出,利用花瓣和花萼的测量数据基本可以将三个类别区分开。这说明机器学习模型很可能可以学会区分它们。

参考资料:
Python机器学习基础教程
Pandas官方文档

以上是关于如何利用python将txt文件划分训练集和测试集的主要内容,如果未能解决你的问题,请参考以下文章

划分训练、测试集和数据观察

目标检测---数据集格式转化及训练集和验证集划分

如何将数据集划分为训练集和测试集?

python生成图像样本的训练集、验证集和测试集

如何把数据集划分成训练集和测试集

Alink漫谈 : 如何划分训练数据集和测试数据集