Класс: TreeBagger
Спрогнозируйте количество отклика с помощью сумки регрессионых деревьев
возвращает вектор медиан предсказанных откликов в YFit
= quantilePredict(Mdl
,X
)X
, таблицу или матрицу данных предиктора и использование сумки регрессионых деревьев Mdl
. Mdl
должен быть TreeBagger
объект модели.
использует дополнительные опции, заданные одним или несколькими YFit
= quantilePredict(Mdl
,X
,Name,Value
)Name,Value
аргументы в виде пар. Для примера задайте вероятности величины или какие деревья включать в оценку величины.
[
также возвращает разреженную матрицу весов отклика.YFit
,YW
]
= quantilePredict(___)
quantilePredict
оценивает условное распределение отклика, используя обучающие данные каждый раз, когда вы вызываете его. Чтобы эффективно предсказать много квантилей или квантилей для многих наблюдений, вы должны пройти X
как матрица или таблица наблюдений и задать все квантили в векторе используя Quantile
аргумент пары "имя-значение". То есть избегайте звонков quantilePredict
в цикле.
TreeBagger
выращивает случайный лес регрессионных деревьев с помощью обучающих данных. Затем, для реализации случайного леса с количеством, quantilePredict
предсказывает квантования, используя эмпирическое условное распределение отклика, заданное наблюдение от переменных предиктора. Для получения эмпирического условного распределения отклика:
quantilePredict
проходит все обучающие наблюдения в Mdl.X
через все деревья в ансамбле, и хранит листовые узлы, представителями которых являются обучающие наблюдения.
quantilePredict
точно так же проходит каждое наблюдение в X
через все деревья в ансамбле.
Для каждого наблюдения в X
, quantilePredict
:
Оценивает условное распределение отклика путем вычисления весов отклика для каждого дерева.
Для k наблюдений в X
, агрегирует условные распределения для всего ансамбля:
n - количество обучающих наблюдений (size(Y,1)
) и T - количество деревьев в ансамбле (Mdl.NumTrees
).
Для k наблюдений в X
, τ квантиль или, эквивалентно, 100 τ% процентиля,
Этот процесс описывает, как quantilePredict
использует все указанные веса.
Для всех обучающих наблюдений j = 1,..., n и все выбранные деревья t = 1,..., T,
quantilePredict
приписывает продукт vtj = <reservedrangesplaceholder4> <reservedrangesplaceholder3> <reservedrangesplaceholder2>
и , obs к учебному наблюдению j (сохраненный в Mdl. X (j
,:)Mdl.Y
). btj количество наблюдений, j находится в выборке bootstrap для древовидных t. w j obs - вес наблюдения (j
)в
.Mdl.W (j
)
Для каждого выбранного дерева, quantilePredict
определяет листья, в которые попадает каждое обучающее наблюдение. Пусть St (xj) - набор всех наблюдений, содержащихся в листе дерева t представителем которого является j наблюдений.
Для каждого выбранного дерева, quantilePredict
нормализует все веса в конкретном листе до суммы 1, то есть,
Для каждого обучающего наблюдения и дерева, quantilePredict
включает веса дерева (w t, дерево), заданные TreeWeights
, то есть w*tj, дерево = w t, дерево vtj*Деревья, не выбранные для предсказания, имеют вес 0.
Для всех тестовых наблюдений k = 1,..., K в X
и все выбранные деревья t = 1,..., TquantilePredict
предсказывает уникальные листья, в которые попадают наблюдения, а затем идентифицирует все обучающие наблюдения в предсказанных листьях. quantilePredict
определяет utj веса таким образом, чтобы
quantilePredict
суммирует веса по всем выбранным деревьям, то есть,
quantilePredict
создает веса отклика путем нормализации весов так, чтобы они суммировались до 1, то есть,
[1] Breiman, L. «Random Forests». Машинное обучение 45, стр. 5-32, 2001.
[2] Meinshausen, N. «Quantle Regression Forests». Journal of Машинное Обучение Research, Vol. 7, 2006, pp. 983-999.