Я заметил, что в R регрессии Пуассона и отрицательная биномиальная (NB) всегда соответствуют одинаковым коэффициентам для категориальных, но не непрерывных предикторов.
Например, вот регрессия с категориальным предиктором:
data(warpbreaks)
library(MASS)
rs1 = glm(breaks ~ tension, data=warpbreaks, family="poisson")
rs2 = glm.nb(breaks ~ tension, data=warpbreaks)
#compare coefficients
cbind("Poisson"=coef(rs1), "NB"=coef(rs2))
Вот пример с непрерывным предиктором, в котором Пуассон и NB соответствуют разным коэффициентам:
data(cars)
rs1 = glm(dist ~ speed, data=cars, family="poisson")
rs2 = glm.nb(dist ~ speed, data=cars)
#compare coefficients
cbind("Poisson"=coef(rs1), "NB"=coef(rs2))
(Конечно, это не данные подсчета, и модели не имеют смысла ...)
Затем я перекодирую предиктор в фактор, и две модели снова соответствуют одинаковым коэффициентам:
library(Hmisc)
speedCat = cut2(cars$speed, g=5)
#you can change g to get a different number of bins
rs1 = glm(cars$dist ~ speedCat, family="poisson")
rs2 = glm.nb(cars$dist ~ speedCat)
#compare coefficients
cbind("Poisson"=coef(rs1), "NB"=coef(rs2))
Однако в « Отрицательной биномиальной регрессии» Джозефа Хильбе приведен пример (6.3, стр. 118–119), в котором категорический предиктор «пол» соответствует слегка отличающимся коэффициентам по Пуассону ( ) и NB ( ). Он говорит: «Коэффициенты заболеваемости между моделями Пуассона и NB довольно похожи. Это неудивительно, учитывая близость [соответствующего в R] к нулю ».b = 0,881 α 1 / θ
Я понимаю это, но в приведенных выше примерах summary(rs2)
говорится, что оценивается в 9,16 и 7,93 соответственно.
Так почему же коэффициенты одинаковы? И почему только для категориальных предикторов?
Редактировать # 1
Вот пример с двумя неортогональными предикторами. Действительно, коэффициенты уже не одинаковы:
data(cars)
#make random categorical predictor
set.seed(1); randomCats1 = sample( c("A","B","C"), length(cars$dist), replace=T)
set.seed(2); randomCats2 = sample( c("C","D","E"), length(cars$dist), replace=T)
rs1 = glm(dist ~ randomCats1 + randomCats2, data=cars, family="poisson")
rs2 = glm.nb(dist ~ randomCats1 + randomCats2, data=cars)
#compare coefficients
cbind("Poisson"=coef(rs1), "NB"=coef(rs2))
И включение другого предиктора приводит к тому, что модели соответствуют разным коэффициентам, даже когда новый предиктор непрерывен. Итак, это как-то связано с ортогональностью фиктивных переменных, которые я создал в своем первоначальном примере?
rs1 = glm(dist ~ randomCats1 + speed, data=cars, family="poisson")
rs2 = glm.nb(dist ~ randomCats1 + speed, data=cars)
#compare coefficients
cbind("Poisson"=coef(rs1), "NB"=coef(rs2))
источник
Ответы:
Вы обнаружили близкое, но общее свойство GLM, подходящее по максимальной вероятности . Результат выпадает, если рассматривать самый простой случай: подгонка одного параметра к одному наблюдению!
Ответ из одного предложения : если все, о чем мы заботимся, это подгоняет отдельные средства для непересекающихся подмножеств нашей выборки, то GLM всегда будут давать для каждого подмножества , поэтому фактическая структура ошибок и параметризация плотности становятся не имеет отношения к (точечной) оценке!Jμ^j=y¯j j
Немного больше : подгонка ортогональных категориальных факторов по максимальной вероятности эквивалентна подгонке отдельных средств к непересекающимся подмножествам нашей выборки, поэтому это объясняет, почему пуассоновские и отрицательные биномиальные GLM дают одинаковые оценки параметров. Действительно, то же самое происходит независимо от того, используем ли мы пуассоновскую, негбиновую, гауссовскую, обратную гауссовскую или гамма-регрессию (см. Ниже). В случае Пуассона и Негбина функция ссылки по умолчанию - ссылка , но это красная сельдь; в то время как это дает те же самые необработанные оценки параметров, мы увидим ниже, что это свойство на самом деле не имеет ничего общего с функцией связи.log
Когда мы заинтересованы в параметризации с большей структурой, или которая зависит от непрерывных предикторов, тогда предполагаемая структура ошибок становится релевантной из-за отношения средней дисперсии распределения, поскольку оно относится к параметрам и нелинейной функции, используемой для моделирования условной модели. средства.
GLM и экспоненциальные дисперсионные семейства: ускоренный курс
Экспоненциальной дисперсия семьи в естественной форме является одним из таких , что плотность лог имеет вид
Здесь - естественный параметр, а - параметр дисперсии . Если бы были известны, это было бы просто одноэлементное экспоненциальное семейство. Все GLM, рассмотренные ниже, предполагают модель ошибок из этого семейства.ν νθ ν ν
Рассмотрим пример одного наблюдения из этой семьи. Если мы подберем по максимальной вероятности, мы получим, что , независимо от значения . Это легко распространяется на случай iid-примера, поскольку логарифмические правдоподобия складываются, приводя к .у = Ь ' ( θ ) N , ˉ у = Ь ' ( θ )θ y=b′(θ^) ν y¯=b′(θ^)
Но мы также знаем, что из-за хорошей регулярности плотности бревна как функции от это Итак, на самом деле .∂θ b ' ( θ ) = E Y = μ
Поскольку оценки максимального правдоподобия инвариантны относительно преобразований, это означает, что для этого семейства плотностей.y¯=μ^
Теперь в GLM мы моделируем как где - функция связи. Но если является вектором всех нулей, кроме одного 1 в позиции , то . Затем вероятность GLM разлагается в соответствии с , и мы действуем, как указано выше. Это как раз случай ортогональных факторов.μ i = g - 1 ( x T i β ) g x i j μ i = g ( β j ) β jμi μi=g−1(xTiβ) g xi j μi=g(βj) βj
Чем же отличаются непрерывные предикторы?
Когда предикторы являются непрерывными или они категоричны, но не могут быть сведены к ортогональной форме, тогда вероятность больше не разделяется на отдельные термины с отдельным средним значением в зависимости от отдельного параметра. На данный момент, структура ошибок и функция ссылки действительно вступают в игру.
Если пройти через (утомительную) алгебру, уравнения правдоподобия становятся для всех где . Здесь параметры и вводятся неявно через отношение ссылки и дисперсию .j = 1 , … , p λ i = x T i β β ν μ i = g ( λ i ) = g ( x T i β ) σ 2 i
Таким образом, функция связи и модель предполагаемой ошибки становятся релевантными для оценки.
Пример: модель ошибки (почти) не имеет значения
В приведенном ниже примере мы генерируем отрицательные биномиальные случайные данные в зависимости от трех категориальных факторов. Каждое наблюдение происходит из одной категории, и используется один и тот же параметр дисперсии ( ).k=6
Затем мы подгоняем к этим данным пять различных GLM, каждый со ссылкой : ( a ) отрицательный бином, ( b ) пуассоновский, ( c ) гауссовский, ( d ) обратный гауссовский и ( e ) гамма-GLM. Все это примеры экспоненциальных дисперсионных семейств.log
Из таблицы видно, что оценки параметров идентичны , даже если некоторые из этих GLM предназначены для дискретных данных, а другие - для непрерывных, а некоторые - для неотрицательных данных, а другие - нет.
Предостережение в заголовке исходит из того факта, что процедура подбора потерпит неудачу, если наблюдения не попадают в область конкретной плотности. Например, если бы у нас было отсчетов, случайно сгенерированных в данных выше, то Gamma GLM не сможет сойтись, так как Gamma GLM требует строго положительных данных.0
Пример: функция ссылки (почти) не имеет значения
Используя те же данные, мы повторяем процедуру подбора данных с помощью Пуассона GLM с тремя различными функциями связи: ( a ) link, ( b ) идентификационная ссылка и ( c ) квадратно-корневая ссылка. В таблице ниже приведены оценки коэффициентов после преобразования обратно в логарифмическую параметризацию. (Таким образом, во втором столбце показано а в третьем столбце показано с использованием необработанного из каждого совпадения). Опять же, оценки идентичны.журнал ( β ) журнал ( β 2 ) βlog log(β^) log(β^2) β^
Предупреждение в заголовке просто относится к тому факту, что необработанные оценки будут варьироваться в зависимости от функции связи, но подразумеваемые оценки среднего параметра не будут.
Код R
источник
family=negative.binomial(theta=2)
"?Чтобы увидеть, что здесь происходит, полезно сначала выполнить регрессию без перехвата, поскольку перехват в категориальной регрессии только с одним предиктором не имеет смысла:
Поскольку пуассоновская и отрицательная биномиальные регрессии определяют журнал среднего параметра, то для категориальной регрессии возведение в степень коэффициентов даст вам фактический средний параметр для каждой категории:
Эти параметры соответствуют фактическим средним значениям для разных значений категории:
Так что происходит, что средний параметр в каждом случае, который максимизирует вероятность, равен среднему значению выборки для каждой категории.λ
Для распределения Пуассона понятно, почему это происходит. Подходит только один параметр, и, следовательно, максимизация общей вероятности модели с одним категориальным предиктором эквивалентна независимому поиску который максимизирует вероятность для наблюдений в каждой конкретной категории. Оценка максимального правдоподобия для распределения Пуассона - это просто среднее значение выборки, поэтому коэффициенты регрессии являются именно (логарифмами) выборочного среднего значения для каждой категории.λ
Для отрицательного бинома это не так просто, потому что есть два параметра: и параметр формы . Более того, регрессия соответствует одной , охватывающей весь набор данных, поэтому в этой ситуации категориальная регрессия не просто эквивалентна подгонке совершенно отдельной модели для каждой категории. Однако, изучая функцию правдоподобия, мы можем увидеть, что для любой данной тэты функция правдоподобия снова максимизируется путем установки в качестве значения образца:θ θ λλ θ θ λ
λ=ˉx
Причина, по которой вы не получаете одинаковые коэффициенты для непрерывных данных, заключается в том, что в непрерывной регрессии больше не будет кусочно-постоянной функцией переменных предиктора, а будет линейной. Максимизация функции правдоподобия в этом случае не приведет к независимой подгонке значения для непересекающихся подмножеств данных, но скорее будет нетривиальной задачей, которая решается численно и, вероятно, даст разные результаты для разных функций правдоподобия.λlog(λ) λ
Точно так же, если у вас есть несколько категориальных предикторов, несмотря на тот факт, что подобранная модель в конечном итоге будет указывать как кусочно-постоянную функцию, в общем случае не будет достаточно степеней свободы, чтобы позволить быть определенным независимо для каждого постоянного сегмента. Например, предположим, что у вас есть предиктора с категориями в каждом. В этом случае ваша модель имеет степеней свободы, в то время как существует уникальных различных комбинаций категорий, каждая из которых будет иметь свое собственное подогнанное значение . Таким образом, предполагая, что пересечения этих категорий непусты (или, по крайней мере, чтоλ 2 5 10 5 ∗ 5 = 25 λ 11λ λ 2 5 10 5∗5=25 λ 11 из них непустые), проблема максимизации правдоподобия снова становится нетривиальной и, как правило, приводит к различным результатам для Пуассона по сравнению с отрицательным биномиальным или любым другим распределением.
источник
y~X+0
и попробуйте еще раз. :-)