Я бы предположил, что для этой цели потенциально лучше использовать случайный лес - в Random Forests есть несколько деревьев, смоделированных на подмножествах ваших предикторов. Затем вы можете увидеть random_states, которые были использованы в модели, просто используя RandomForestVariableName.estimators_
Я буду использовать свой код в качестве примера здесь:
with open('C:\Users\Saskia Hill\Desktop\Exported\FinalSpreadsheet.csv', 'rb') as csvfile:
titanic_reader = csv.reader(csvfile, delimiter=',', quotechar='"')
row = titanic_reader.next()
feature_names = np.array(row)
# Load dataset, and target classes
titanic_X, titanic_y = [], []
for row in titanic_reader:
titanic_X.append(row)
titanic_y.append(row[11]) # The target values are your class labels
titanic_X = np.array(titanic_X)
titanic_y = np.array(titanic_y)
print titanic_X, titanic_y
print feature_names, titanic_X[0], titanic_y[0]
titanic_X = titanic_X[:, [2,3,4,5,6,7,8,9,10]] #these are your predictors/ features
feature_names = feature_names[[2,3,4,5,6,7,8,9,10]]
from sklearn import tree
rfclf = RandomForestClassifier(criterion='entropy', min_samples_leaf=1, max_features='auto', max_leaf_nodes=None, verbose=0)
rfclf = rfclf.fit(titanic_X,titanic_y)
rfclf.estimators_ #the output for this is pasted below:
[DecisionTreeClassifier(compute_importances=None, criterion='entropy',
max_depth=None, max_features='auto', max_leaf_nodes=None,
min_density=None, min_samples_leaf=1, min_samples_split=2,
random_state=1490702865, splitter='best'),
DecisionTreeClassifier(compute_importances=None, criterion='entropy',
max_depth=None, max_features='auto', max_leaf_nodes=None,
min_density=None, min_samples_leaf=1, min_samples_split=2,
random_state=174216030, splitter='best') ......
Случайные леса, таким образом, ввести хаотичность в Деревья принятия решений и не требуют корректировки от исходных данных, используемых Деревом решений, но они действуют как метод перекрестной проверки, обеспечивающий вам большую уверенность в точности ваших данных (особенно, если, как и я, у вас есть небольшой Набор данных).
В интерактивных документах указывается, что по умолчанию 'random_state' является' None', поэтому это выглядит корректно, см. Это: http: //scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html – EdChum
Я знаю, что это использование по умолчанию, что я прошу, когда я использую 'random_state = None', и я подхожу к модели, после того как фитинг есть способ узнать, что такое результат' numpy.random'? – sedavidw