Почему коэффициент корреляции Пирсона (и MSE) постоянно меняется при каждом запуске программы? - PullRequest
0 голосов
/ 22 апреля 2020

Является ли нормальным изменение значений каждый раз, когда я запускаю один и тот же фрагмент кода, который обучает наборы данных, прогнозирует значения на тестовом наборе, а затем вычисляет коэффициенты корреляции и значения MSE? Почему это происходит?

import pandas as pd
from sklearn import tree
from scipy.stats import linregress

training = pd.read_csv('csvfile1.csv')    #training data set
target = pd.DataFrame(training, columns=['target_column'])  #target 
testing = pd.read_csv('csvfile2.csv')    #test set loaded from a different file
true = pd.DataFrame(testing, columns=['predicted_value'])  #for comparison after predicting the target 
X_train = training
target_vec = target['target_column']
Y_test = training
regression = tree.DecisionTreeRegressor(criterion='mse', splitter='best')
model = regression.fit(X_train, target_vec)
output = regression.predict(Y_test)  #predictions
print(linregress(output, true.predicted_value))   #printing out rvalue

1 Ответ

0 голосов
/ 22 апреля 2020

попробуйте использовать это:

import random random.seed(123)

Число на самом деле не имеет значения, дело в том, что он устанавливает псевдослучайный генератор на одну и ту же начальную точку каждый раз.

Я предполагаю, что вы должны разбивать данные на наборы поездов и тестов случайным образом, и это каждый раз отличается. В следующий раз покажите нам свой код. Вы можете быть отклонены за то, что не сделали этого. Это также помогает нам помочь вам.

...