Я мало знаю о том, как работает случайный лес. Обычно в классификации я мог бы поместить данные поезда в случайный классификатор леса и попросить предсказать тестовые данные.Как интерпретировать классификатор случайных лесов от изучения sci-kit?
В настоящее время я работаю над титаническими данными, которые предоставляются мне. Это верхние ряды набора данных и 1300 (приблизительных) строк.
survived pclass sex age sibsp parch fare embarked 0 1 1 female 29 0 0 211.3375 S 1 1 1 male 0.9167 1 2 151.55 S 2 0 1 female 2 1 2 151.55 S 3 0 1 male 30 1 2 151.55 S 4 0 1 female 25 1 2 151.55 S 5 1 1 male 48 0 0 26.55 S 6 1 1 female 63 1 0 77.9583 S 7 0 1 male 39 0 0 0 S 8 1 1 female 53 2 0 51.4792 S 9 0 1 male 71 0 0 49.5042 C 10 0 1 male 47 1 0 227.525 C 11 1 1 female 18 1 0 227.525 C 12 1 1 female 24 0 0 69.3 C 13 1 1 female 26 0 0 78.85 S
Там нет данных испытаний, приведенных. Поэтому я хочу, чтобы случайный лес предсказывал выживание по всему набору данных и сравнивал его с фактической стоимостью (больше похоже на проверку оценки точности).
Итак, что я сделал, разделите мой полный набор данных на две части; один с функциями, а другой предсказал (выжил). Особенности включают в себя все столбцы, кроме выживших, и предсказание состоит из сохранившейся колонки.
dfFeatures = df['survived']
dfTarget = dfCopy.drop('survived', 1)
Примечание: df - это весь набор данных.
Вот код, который проверяет оценку RandomForest
rfClf = RandomForestClassifier(n_estimators=100, max_features=10)
rfClf = rfClf.fit(dfFeatures, dfTarget)
scoreForRf = rfClf.score(dfFeatures, dfTarget)
я получаю выход счет с чем-то вроде этого
The accuracy score for random forest is : 0.983193277311
Я нахожу это немного трудно понять, что происходит позади кода в приведенном выше коде.
Прогнозирование выживания для всех кортежей, основанных на других функциях (dfFeatures
), и сравнить его с данными испытаний (dfTarget
) и дать оценку прогноза или сделать это случайным образом для создания данных поезда и испытаний на основе данных поезда и сравнить точность данных теста, сгенерированных позади?
Чтобы быть более точным, при вычислении оценки точности он прогнозирует выживаемость всего набора данных или всего лишь случайного частичного набора данных?
Если вы вручную разделите набор данных на поезд и тест, да, это предсказанный сохранившийся столбец в наборе тренировок и попытайтесь сопоставить его с тестовым набором, и это ваша оценка точности. – Arman
@Arman, если я не делюсь на тренировочный набор и тестовый набор. Разве это не случайно генерирует тестовый набор (67-23) за сценой? – Cybercop
Я так думаю, что в отношении параметра, который описывает, насколько установлен набор тестов и сколько тренировок установлено, как бы я не был точно уверен, возможно, в этой ситуации точность оценки точности тренировки не соответствует точности теста – Arman