-2

je joue et AdaBoost régression forêt d'arbres décisionnels en pythonrésultats RandomizedSearchCV et GridsearchCV ne sont pas reproductibles

Mes résultats ne sont pas reproductibles [Ma prédiction des changements à chaque fois avec les mêmes courent le données et le code]

seed = np.random.seed(22) 
rng = np.random.RandomState(1)  

param_grid = {'n_estimators': [10, 100, 1000]} 
model_rfr = GridSearchCV(RandomForestRegressor(random_state = rng), param_grid, cv=3, n_jobs=-1, verbose=1) 
model_rfr.fit(train_x1,train_y1) 
test_rfr = model_rfr.predict(test_y1) 
param_grid = {"n_estimators":[100,500],"learning_rate":list(np.linspace(0.01,1,10)),"loss":["linear", "square", "exponential"]} 
model_adr = RandomizedSearchCV(AdaBoostRegressor(DecisionTreeRegressor()), param_grid,n_jobs=-1,n_iter=10,cv=3,random_state = rng) 
model_adr.fit(train_x1,train_y1) 
test_adr = model_adr.fit(test_y1) 

ici test_adr & Les valeurs de test_rfr changent, à chaque fois, je cours mon code.

Veuillez utiliser des exemples de données pour Régression. Mais s'il vous plaît suggérer comment rendre mon résultat reproductible.

+0

++ Maintenant résultat Gridsearch est reproductible, suggérez pour –

+0

RandomizedCV En outre, la méthode 'prédire()' doit être envoyé avec 'test_x1' alors que vous envoyez' test_y1', et la dernière ligne de votre code devrait être ' model_adr.predict() ', pas' model_adr.fit() ' –

+0

AdaBoostRegressor et DecisionTreeRegressor ont également le paramètre' random_state'. Avec ces ensemble, je suis en mesure de reproduire les résultats –

Répondre

-1

Merci pour votre contribution. Veuillez trouver le code de résultat reproductible.

seed = np.random.seed(22) 
rng = np.random.RandomState(1) 
param_grid = {'n_estimators': [10, 100, 1000]} 
model_rfr = GridSearchCV(RandomForestRegressor(random_state = rng), param_grid, cv=3, n_jobs=-1, verbose=1) 
model_rfr.fit(train_x1,train_y1) 
test_rfr = model_rfr.predict(test_y1) 
param_grid = {"n_estimators":[100,500],"learning_rate":list(np.linspace(0.01,1,10)),"loss":["linear", "square", "exponential"]} 
model_adr = RandomizedSearchCV(AdaBoostRegressor(DecisionTreeRegressor(random_state = rng)), param_grid,n_jobs=-1,n_iter=10,cv=3,random_state = rng) 
model_adr.fit(train_x1,train_y1) 
test_adr = model_adr.predict(test_x1)