机器学习中的测试和训练数据

我有超过2000个用于人工神经网络的数据集。我已经应用了MLPRegressor,我的代码运行正常。但是为了测试,我想固定我的测试值,例如我有50个数据集。我想测试其中的前20个值。我该如何在代码中实现这一点?我使用了以下代码。

import pandas as pdimport matplotlib.pyplot as pltfrom sklearn.neural_network import MLPRegressordf = pd.read_csv("0.5-1.csv")df.head()X = df[['wavelength', 'phase velocity']]y = df['shear wave velocity']from sklearn.model_selection import train_test_splitX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=.2)from sklearn.neural_network import MLPClassifierfrom sklearn.metrics import mean_absolute_errormlp = MLPRegressor(hidden_layer_sizes=(30,30,30))mlp.fit(X_train,y_train)

回答:

如果你希望结果可重现,你可以给train_test_split传递一个固定的随机种子,这样每次运行时使用相同的训练/测试样本。使用train_test_split的好处是可以轻松干净地选择训练/测试分割,而无需进一步的努力。

但是如果你坚持像你说的那样手动选择训练/测试分割,你可以这样做:

X_test, y_test = X[:20], y[:20]  # 前20个样本用于测试X_train, y_train = X[20:], y[20:]  # 剩余样本用于训练

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注