【问题标题】:What are training and test data sets什么是训练和测试数据集
【发布时间】:2018-02-25 00:06:17
【问题描述】:
我开始使用 kaggle。
我刚刚参加了各种数据科学和机器学习比赛
我看到他们为每场比赛上传了训练数据、测试数据和原始数据。
谁能解释一下这些是什么以及我们在解决问题时如何使用这些数据集。
【问题讨论】:
标签:
machine-learning
dataset
data-science
kaggle
【解决方案1】:
要评估经过训练的模型在未知数据上的表现,
您必须将原始数据拆分为单独的训练集和测试集。
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test= train_test_split(features_all,pred_var,test_size=0.3, random_state=42)
这样,您可以将特征和 y 数组随机分成 30% 的测试数据和 70% 的训练数据。然后,您拟合您的回归模型,如下所示
from sklearn.linear_model import LinearRegression
reg = LinearRegression()
reg.fit(X_train,y_train) # fit regressor to training data
y_pred = reg.predict(X_test) # predict on test data
希望对您有所帮助。
【解决方案2】:
在机器学习中,原始数据集分为训练集和测试集(有时也是交叉验证集)。
训练集:
用于拟合算法参数的数据集。
测试集:
用于评估算法参数准确度的数据集。
训练集、测试集拆分通常分别为 80%、20% 或 70%、30%。
建议在进行拆分之前将原始数据集随机化。
永远记住,在 ML 中,用于拟合参数的数据集的误差总是较低的。永远不要使用训练集评估您的算法。
【解决方案3】:
训练数据:用于训练 AI。
测试数据:用于评估使用之前训练数据的 AI 强度。
原始数据:嗯,就是原始数据。
在进行机器学习时,必须以某种方式训练 AI。这就是为什么我们将数据分解,并给人工智能一个原始数据(训练数据)的子集,以便它可以学习。我们用测试数据测试它的知识,然后一旦完成,我们就可以将原始数据提供给它,看看它是如何做的。