在执行10x10 StratifiedShuffleSplit时,我应该在任何分类器中指定random_state吗?

时间:2017-03-11 22:15:03

标签: python-3.x random machine-learning

我正在做10x10 StratifiedShuffleSplit。我平均每个折叠的所有精度。 正如您在代码中看到的,我使用10个不同的random_states进行SSS。但对于RandomForest,我不使用任何东西。 我是否也应该在RandomForest中指定random_state? 如果我不这样做会怎么样?

谢谢。

    result_list = [] 

    for name in ["AWA"]: 
         for el in ['Fp1']:
            x=sio.loadmat('/home/TrainVal/{}_{}.mat'.format(name, el))['x']
            s_y=sio.loadmat('/home/TrainVal/{}_{}.mat'.format(name, el))['y']
            y=np.ravel(s_y)


            print(name, el, x.shape, y.shape)
            print("")

            clf = make_pipeline(preprocessing.RobustScaler(), RandomForestClassifier())   
        ##################10x10 SSS#############
            print("10x10")
            xSSSmean10 = []
            for i in range(10):
                sss = StratifiedShuffleSplit(y, 10, test_size=0.1, random_state=i) 
                scoresSSS = cross_validation.cross_val_score(clf, x, y , cv=sss)

                xSSSmean10.append(scoresSSS.mean())


            result_list.append(xSSSmean10)

0 个答案:

没有答案