Матричная запись для логистической регрессии

15

В линейной регрессии (квадрат потери), используя матрицу, мы получаем очень краткие обозначения для цели

minimize  Axb2

Где A - матрица данных, x - коэффициенты, а b - ответ.

Существует ли аналогичная матричная запись для цели логистической регрессии? Все записи, которые я видел, не могут избавиться от суммы по всем точкам данных (что-то вроде dataLlogistic(y,βTx) ).


РЕДАКТИРОВАТЬ: спасибо за joceratops и отличный ответ AdamO. Их ответ помог мне понять, что еще одна причина, по которой линейная регрессия имеет более лаконичное обозначение, заключается в том, что определение нормы, заключающей в себе квадрат и сумму, или ee . Но в логистических потерях нет такого определения, которое делает обозначение немного более сложным.

Хайтау Ду
источник

Ответы:

18

В линейной регрессии решение Максимизировать правдоподобие (MLE) для оценки имеет следующее решение в закрытой форме (при условии, что A является матрицей с полным рангом столбца):x

x^lin=argminxAxb22=(ATA)1ATb

Это читается как «найти который минимизирует целевую функцию, ». Хорошая вещь о представлении целевой функции линейной регрессии таким образом состоит в том, что мы можем хранить все в матричной записи и решать вручную для . Как отмечает Алекс Р., на практике мы часто не рассматриваем напрямую, поскольку он неэффективен в вычислительном отношении, а часто не соответствует критериям полного ранга. Вместо этого мы обратимся к псевдообратному Муру-Пенроуза . Детали вычислительного решения для псевдообратного типа могут включать разложение Холецкого или разложение сингулярного значения.xAxb22х лин ( Т ) - 1x^lin(ATA)1A

Альтернативно, решение MLE для оценки коэффициентов в логистической регрессии:

x^log=argminxi=1Ny(i)log(1+exTa(i))+(1y(i))log(1+exTa(i))

где (при условии, что каждая выборка данных хранится построчно):

x представляет вектор представляет коэффициенты регрессии

a(i) - это вектор, представляющий образец / строку в матрице данныхithA

y(i) является скаляром в , а этикетку , соответствующую образца{0,1}ithith

N есть число выборок данных / количество строк в матрице данных .A

Опять же, это читается как «найти который минимизирует целевую функцию».x

Если вы хотите, вы можете сделать еще один шаг и представить в матричной записи следующим образом:x^log

x^log=argminx[1(1y(1))1(1y(N))][log(1+exTa(1))...log(1+exTa(N))log(1+exTa(1))...log(1+exTa(N))]

но вы ничего не получите от этого. Логистическая регрессия не имеет решения в закрытой форме и не получает тех же преимуществ, что и линейная регрессия, представляя ее в матричной записи. Для решения используются такие методы оценки, как градиентный спуск и метод Ньютона-Рафсона. Используя некоторые из этих методов (например, Ньютона-Рафсона), аппроксимируется и представляется в матричной записи ( см. Ссылку, предоставленную Алексом Р. ).x^logx^log

joceratops
источник
Отлично. Благодарю. Я думаю, что причина, по которой у нас нет такого решения, как заключается в том, что мы не делаем этот шаг больше, чтобы сделать матричную запись и избежать символа суммы. AAx=Ab
Haitao Du
У нас есть преимущество в том, чтобы сделать еще один шаг вперед, умножив его на умножение матриц, код станет проще, и во многих платформах, таких как matlab, цикл for с суммой по всем данным намного медленнее, чем операции с матрицами.
Haitao Du
5
@ hxd1011: Небольшой комментарий: сводиться к матричным уравнениям не всегда целесообразно. В случае самом деле вам не следует пытаться искать матрицу, обратную , а делать что-то вроде разложения Холецкого, которое будет намного быстрее и более численно устойчивым. Для логистической регрессии существует множество различных итерационных схем, которые действительно используют матричные вычисления. Большой обзор смотрите здесь: research.microsoft.com/en-us/um/people/minka/papers/logreg/…ATAx=ATbATA
Алекс Р.
1
@AlexR. большое Вам спасибо. Я узнал, что с помощью нормального уравнения матрица условного числа получит квадрат. И QR или Cholesky были бы намного лучше. Ваша ссылка отличная, такой обзор численными методами всегда то, что я хотел.
Haitao Du
15

Ответ @joceratops посвящен проблеме оптимизации максимальной вероятности оценки. Это действительно гибкий подход, который поддается многим типам проблем. Для оценки большинства моделей, включая модели линейной и логистической регрессии, существует другой общий подход, основанный на методе оценки моментов.

Оценщик линейной регрессии также можно сформулировать как корень уравнения оценки:

0=XT(YXβ)

В этом отношении рассматривается как значение, которое извлекает средний остаток 0. Для такой интерпретации не нужно полагаться на какую-либо основную вероятностную модель. Тем не менее, интересно получить уравнения для оценки для нормальной вероятности, вы увидите, что они принимают именно ту форму, которая показана выше. Максимизация вероятности регулярного экспоненциального семейства для линейной модели (например, линейной или логистической регрессии) эквивалентна получению решений для их балльных уравнений.β

0=i=1nSi(α,β)=βlogL(β,α,X,Y)=XT(Yg(Xβ))

Где имеет ожидаемое значение g ( X i β ) . В оценке GLM g называется обратной функцией связи. В нормальных уравнениях правдоподобия g - 1 - тождественная функция, а в логистической регрессии g - 1 - логит-функция. Более общий подход будет требовать 0 = n i =Yig(Xiβ)gg1g10=i=1nYg(Xiβ)

g(Xβ)β=V(g(Xβ))p=g(Xβ)var(Yi)=pi(1pi), Это говорит о том, что интерпретация модели GLM с ошибочной спецификацией означает, что она дает 0 средних невязок Пирсона. Это также предполагает обобщение, позволяющее получать непропорциональные функциональные средние производные и отношения средней дисперсии.

Подход обобщенного оценочного уравнения определил бы линейные модели следующим образом:

0=g(Xβ)βV1(Yg(Xβ))

Vg(Xβ)

gViig(Xiβ)(1g(Xβ))β, Который - учитывая хорошо документированные ловушки при интерпретации OR как RR - должен заставить меня спросить, почему кто-то больше подходит для моделей логистической регрессии.

Adamo
источник
1
+1 отличный ответ. сформулировать это как корень нахождения на производной действительно новый для меня. и второе уравнение действительно лаконично.
Haitao Du