我不了解在训练测试拆分和MLP回归器中更改随机状态之间的区别

问题描述

我正在尝试找出列车测试拆分中的随机状态与MLP回归器中的随机状态之间的差异。 如果我在MLP回归器中更改它,则我进行的所有试验都非常好。但是,如果我在火车试车赛段中更改了它,则会得到各种各样的结果。我读到它们都是随机种子,但是我不知道它们对MLP的影响取决于我在哪里更改。

谢谢您的帮助!

解决方法

我假设您有一些类似于scikit示例here中的代码:

X_train,X_test,y_train,y_test = train_test_split(X,y,random_state=1)
regr = MLPRegressor(random_state=1,max_iter=500).fit(X_train,y_train)

首先,您在 train_test_split 中更改了随机状态,然后在 MLPRegressor 中对其进行了更改并进行了比较。

在train_test_split方法中更改random_state时,它将根据您的random_state与以前对数据进行随机排序,因此,训练和测试数据看起来会有所不同。 (Documentation

更改MLPRegressor的random_state时,它不仅使用该种子在train_test_split方法中对数据进行混洗,而且还生成权重,初始化偏差并确定批量采样。 (Documentation

因此,更改MLPRegressor中的随机状态不仅需要更改train_test_split随机状态,还需要进行更多更改。希望我能正确理解您的问题,并能为您提供帮助。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...