如何获得sklearn的当前随机种子? [复制]
Posted
技术标签:
【中文标题】如何获得sklearn的当前随机种子? [复制]【英文标题】:How to get current random seed of sklearn? [duplicate] 【发布时间】:2021-07-18 09:42:32 【问题描述】:当我使用train_test_splid
时:
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test =train_test_split(X, Y, test_size = 0.9)
如果我没有设置具体的random_state
。如何获取程序当前使用的随机种子?
【问题讨论】:
为什么不自己设置呢?类似random_state = 3
?每次您不自己设置时,它都会使用不同的种子。请注意,您也应该设置shuffle
。根据documentation 的原因,随机化也可能取决于随机播放
您能解释一下为什么不设置自己的原因吗?
【参考方案1】:
这里的基础是随机状态。您可以从种子中生成随机状态。但是如果你不指定种子,就没有种子,只是一个随机状态。您可以根据需要访问:
sklearn.utils.check_random_state()
或
np.random.get_state()
您可以稍后将随机状态对象传递给
np.random.set_state(state)
另见question。如果不先以某种方式设置种子,您真的无法获得种子。
【讨论】:
【参考方案2】:来自他们的documentation
如果 random_state 为 None 或 np.random,则返回一个随机初始化的 RandomState 对象。
你可以使用check_random_state
如果你需要一个随机状态,你应该自己初始化它。
【讨论】:
以上是关于如何获得sklearn的当前随机种子? [复制]的主要内容,如果未能解决你的问题,请参考以下文章