2

假设我有一个pandas数据框并应用sklearn.model_selection.train_test_split参数random_seed设置为 1。

假设我然后采用完全相同的pandas数据框并创建一个带有SQLContext. 如果我在参数设置为 1 的情况下应用 PySparkrandomSplit函数seed,是否总是能保证获得相同的精确分割?

4

1 回答 1

3

一般来说,没有。

大多数“随机”数字生成器实际上是接受一些输入值并生成非常长的字节流的函数,这些字节流可以转换为其他类型的值。“随机性”来自这样一个事实,即仅给定来自该流的值,即使您想要多少,也很难预测下一个值或提取原始输入值。

这个输入值就是我们所说的“种子”。

sklearn结果是否相同不仅取决于种子,还取决于是否pyspark使用完全相同的随机数生成器实现、它们运行的​​操作系统、处理器架构......

于 2019-03-31T05:33:05.027 回答