我一直认为机器学习的结果是不同的,因为每次预先随机打乱数据,导致不同的训练集。因此,当没有洗牌时,每次的结果都应该是相同的。与 的情况一样sklearn.linear_model.LinearRegression()
,但sklearn.linear_model.RANSACRegressor()
即使每次都以相同的顺序输入相同的训练数据,也会显示不同的结果。不就是一个数学函数,结果不应该每次都一样吗?有人可以解释一下,还是我的代码有错误,我是否错误地向它提供了不同的数据?
问问题
647 次
1 回答
2
根据文档,数据是随机选择的。
某些参数中有指示,例如random_state:
random_state : int,RandomState 实例或无,可选,默认
None
用于初始化中心的生成器。如果是 int,则 random_state 是随机数生成器使用的种子;如果是 RandomState 实例,则 random_state 是随机数生成器;如果没有,随机数生成器是 np.random 使用的 RandomState 实例。
于 2017-09-03T15:58:03.763 回答