Что такое ошибка мешка в случайных лесах? [закрытый]
Что из ошибки мешка в случайных лесах? Является ли это оптимальным параметром для нахождения правильного количества деревьев в случайном лесу?
2 ответов
я попытаюсь объяснить:
предположим, что наш набор данных обучения представлен T и предположим, что набор данных имеет M функций (или атрибутов или переменных).
T = {(X1,y1), (X2,y2), ... (Xn, yn)}
и
Xi is input vector {xi1, xi2, ... xiM}
yi is the label (or output or class).
резюме РФ:
алгоритм случайных лесов-это классификатор, основанный в основном на двух методах -
- мешков
- метод случайных подпространств.
Предположим, мы решим иметь S
количество деревьев в нашем лесу, то мы сначала создаем S
наборы "same size as original"
создано из случайной повторной выборки данных в T с заменой (n раз для каждого набора данных). Это приведет к {T1, T2, ... TS}
наборы данных. Каждый из них называется набором данных bootstrap. Из-за "with-replacement" каждый набор данных Ti
может иметь повторяющиеся записи данных, и Ti может отсутствовать несколько записей данных из исходных наборов данных. Это называется Bootstrapping
. (en.wikipedia.org/wiki/Bootstrapping_(статистика))
Bagging-это процесс взятия бутстрапов , а затем агрегирования моделей, изученных на каждом бутстрапе.
теперь RF создает S
деревья и использует m (=sqrt(M) or =floor(lnM+1))
случайные компоненты из M
варианты для создания любого дерева. Это называется методом случайного подпространства.
для каждого Ti
bootstrap dataset вы создаете дерево Ki
. Если вы хотите классифицировать некоторые входные данные D = {x1, x2, ..., xM}
вы дайте ему пройти через каждое дерево и произвести S
выходы (по одному для каждого дерева), которые могут быть обозначены Y = {y1, y2, ..., ys}
. Окончательный прогноз-большинство голосов на этом наборе.
ошибка выхода из мешка:
после создания классификаторов (S
деревьев) для каждого (Xi,yi)
в оригинальном наборе обучения, т. е. T
, выделить все Tk
, который не включает в себя (Xi,yi)
. Это подмножество, обратите внимание, представляет собой набор наборов данных boostrap, который не содержит конкретной записи из исходного набора данных. Этот набор называется out-of-bag образцы. Есть n
такие подмножества (по одному для каждой записи данных в исходном наборе данных T). Классификатор OOB-это агрегация голосов только за Tk
такой, что не содержит (xi,yi)
.
Out-of-bag оценка ошибки обобщения-это частота ошибок классификатора out-of-bag на обучающем наборе (сравните его с известным yi
' s).
почему это важно? Исследование оценок погрешностей для мешочных классификаторов в Breiman [1996b], дает эмпирические доказательства того, что оценка "вне мешка" столь же точна, как и использование тестового набора того же размера, что и учебный набор. Таким образом с помощью оценки ошибки из мешка устраняет необходимость в наборе отложенных тестов.
(спасибо @Rudolf за исправления. Его комментарии приводятся ниже.)
в оригинальной реализации алгоритма случайного леса Бреймана каждое дерево обучается примерно на 2/3 от общих данных обучения. По мере построения леса каждое дерево может быть протестировано (аналогично исключению перекрестной проверки) на образцах, не используемых при построении этого дерева. Это оценка ошибки out of bag - внутренняя оценка ошибки случайного леса по мере его построения.