机器学习中的测试和训练数据
Testing and training data in machine learning
我有 2000 多个 ANN 数据集。我在其中应用了 MLPRegressor。我的代码工作正常。但是对于测试,我想修复我的测试值,例如我有 50 个数据集。由此我想测试前 20 个值。我如何在代码中解决这个问题?我使用了以下代码。
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.neural_network import MLPRegressor
df = 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_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=.2)
from sklearn.neural_network import MLPClassifier
from sklearn.metrics import mean_absolute_error
mlp = MLPRegressor(hidden_layer_sizes=(30,30,30))
mlp.fit(X_train,y_train)
如果您希望获得可重现的结果,您可以传递 train_test_split
固定随机种子,以便在每个 运行 中使用相同的 train/test 样本。如果使用 train_test_split
的好处是选择 train/test 拆分干净利落,无需进一步努力。
但是如果你坚持要像你说的那样手动选择train/test拆分,你可以这样做:
X_test, y_test = X[:20], y[:20] # first 20 samples for test
X_train, y_train = X[20:], y[20:] # rest of samples for train
将 numpy 的随机种子固定为 48 或其他值
np.random.seed(48)
这每次都会生成相同的拆分。并使用 testsize 来固定拆分的大小
我有 2000 多个 ANN 数据集。我在其中应用了 MLPRegressor。我的代码工作正常。但是对于测试,我想修复我的测试值,例如我有 50 个数据集。由此我想测试前 20 个值。我如何在代码中解决这个问题?我使用了以下代码。
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.neural_network import MLPRegressor
df = 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_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=.2)
from sklearn.neural_network import MLPClassifier
from sklearn.metrics import mean_absolute_error
mlp = MLPRegressor(hidden_layer_sizes=(30,30,30))
mlp.fit(X_train,y_train)
如果您希望获得可重现的结果,您可以传递 train_test_split
固定随机种子,以便在每个 运行 中使用相同的 train/test 样本。如果使用 train_test_split
的好处是选择 train/test 拆分干净利落,无需进一步努力。
但是如果你坚持要像你说的那样手动选择train/test拆分,你可以这样做:
X_test, y_test = X[:20], y[:20] # first 20 samples for test
X_train, y_train = X[20:], y[20:] # rest of samples for train
将 numpy 的随机种子固定为 48 或其他值
np.random.seed(48)
这每次都会生成相同的拆分。并使用 testsize 来固定拆分的大小