pythonsklearn模型中random_state参数的意义 random_state 相当于随机数种⼦random.seed() 。random_state 与 random seed 作⽤是相同的。
随机数种⼦代码演⽰:在1-100中取10个随机数
第⼀段和第⼆段代码完全相同,都没有设置 random seed。它每次取的结果就不同,它的随机数种⼦与当前系统时间有关。
第三段和第四段代码设置了相同的 random seed(123),它们取的随机数就完全相同,多运⾏⼏次也是这样。
第五段和第六段代码设置了 不同的random seed ,于是运⾏取随机数的结果也不同。
如果你在需要设置随机数种⼦的地⽅都设置好,那么当别⼈重新运⾏你的代码的时候就能得到完全⼀样的结果,复现和你⼀样的过如果你在需要设置随机数种⼦的地⽅都设置好,那么当别⼈重新运⾏你的代码的时候就能得到完全⼀样的结果,复现和你⼀样的过程。
r a ndo m_sta te参数:
m_sta
例如:在sklearn可以随机分割训练集和测试集(交叉验证),只需要在代码中引⼊ain_test_split就可以了:
from sklearn import model_selection
x_train, x_test, y_train,y_test=ain_test_split(x,y,test_size=0.2,random_state=0)
这⾥的random_state就是为了保证程序每次运⾏都分割⼀样的训练集和测试集。否则,同样的算法模型在不同的训练集和测试 这⾥的random_state就是为了保证程序每次运⾏都分割⼀样的训练集和测试集。否则,同样的算法模型在不同的训练集和测试集上的效果不⼀样。
当你⽤sklearn分割完测试集和训练集,确定模型和初始参数以后,你会发现程序每运⾏⼀次,都会得到不同的准确率,⽆法调参。这个时候就是因为没有加random_state。加上以后就可以调参了。
random python参考⽂献:sklearn中的random_state
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论