Класс: TreeBagger
Предскажите квантиль ответа с помощью мешка деревьев регрессии
YFit = quantilePredict(Mdl,X)
YFit = quantilePredict(Mdl,X,Name,Value)
[YFit,YW]
= quantilePredict(___)
возвращает вектор медиан предсказанных ответов в 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 = btj w j, obs к учебному наблюдению j (сохраненный в
и Mdl.X(j,:)
). btj является наблюдением числа раз, j находится в выборке начальной загрузки для древовидного t. w j, obs является весом наблюдения в Mdl.Y(j)
.Mdl.W(j)
Для каждого выбранного дерева quantilePredict
идентифицирует листы, в которых падает каждое учебное наблюдение. Позвольте St (xj) быть набором всех наблюдений, содержавшихся в листе древовидного t, которого наблюдения j является членом.
Для каждого выбранного дерева quantilePredict
нормирует все веса в конкретном листе, чтобы суммировать к 1, то есть,
Для каждого учебного наблюдения и дерева, quantilePredict
включает древовидные веса (w t, дерево) заданный TreeWeights
, то есть, w *tj, дерево =, w t, treevtj*Trees не выбранный для прогноза имеет 0 весов.
Для всех тестовых наблюдений k = 1..., K в X
и всех выбранных деревьях t = 1..., T quantilePredict
предсказывает уникальные листы, в которых падают наблюдения, и затем идентифицирует все учебные наблюдения в предсказанных листах. quantilePredict
приписывает вес utj, таким образом что
quantilePredict
суммирует веса по всем выбранным деревьям, то есть,
quantilePredict
создает веса ответа путем нормализации весов так, чтобы они суммировали к 1, то есть,
[1] Бреимен, L. Случайные Леса. Машинное обучение 45, стр 5–32, 2001.
[2] Meinshausen, N. “Леса Регрессии квантиля”. Журнал Исследования Машинного обучения, Издания 7, 2006, стр 983–999.