sklearn模型中random_state参数的意义
random_state
意义
例如:在sklearn可以随机分割训练集和测试集(交叉验证),只需要在代码中引入model_selection.train_test_split就可以了:
from sklearn import model_selection
x_train, x_test, y_train,y_test=model_selection.train_test_split(x,y,test_size=0.2,random_state=0)
这里的random_state就是为了保证程序每次运行都分割一样的训练集和测试集。否则,同样的算法模型在不同的训练集和测试集上的效果不一样。
链接:参考链接
random.randint(1,100)
没有设置 random seed 每次取得结果不同,他的随机数种子与当前系统时间有关
random seed(123)每次运行结果一致 如果你在需要设置随机数种子的地方都设置好,那么当别人重新运行你的代码的时候就能得到完全一样的结果,复现和你一样的过程。
使用情况
三种情况:
1、在构建模型时:
forest = RandomForestClassifier(n_estimators=100, random_state=0)
forest.fit(X_train, y_train)
2、在生成数据集时