Логистическая регрессия и модель максимальной энтропии Теоретический вывод

машинное обучение

logistics与最大熵思维导图.png

1. Модель логистической регрессии

logistics模型

1.1 Построение логистической модели

для набора данныхT=\{(x_1,y_1),...,(x_N,y_N)\}имеют Базовой идеей модели логистики также является линейная регрессия, и ее формула такова:

\begin{align} h_w(x_i) =\frac{e^{w·x_i}} {1+e^{w·x_i}} \tag{1.1} \end{align}

Уравнение (1.1) называется сигмовидной функцией, вообще говоря, еслиh_w(x_i)>0.5Классификационное решение равно 1, в противном случае - 0.

1.2 Оценка параметров\theta

ПредполагатьP(Y=1|x)=\pi(x),P(Y=0|x)=1-\pi(x), то функция правдоподобия:

\begin{align} L(w) =&\prod_{i=1}^{N}[\pi(x_i)]^{y_i}[1-\pi(x_i)]^{1-y_i} \tag{1.2} \\ log L(w) =&\sum_{i=1}^{N}[y_i({w}·x_i) - log(1+exp({w}·x_i))] \tag{1.3} \end{align}

Цель состоит в том, чтобы найтиwсделатьL(w)достигает максимального значения, обычно используемогоградиентное восхождение.

2. Модель максимальной энтропии

2.1 Принцип максимальной энтропии

Прежде всего необходимо прояснить два вопроса:

  • Какой смысл максимизировать энтропию?Ранее мы упоминали, что информационная энтропия представляет собой степень неопределенности, поэтому энтропия является наибольшей, то есть неопределенность системы является наибольшей, и в системе нет индивидуального субъективного предположения.
  • Что такое максимальная энтропия?Когда вы хотите угадать распределение вероятностей, если вы ничего не знаете о распределении, угадайте равномерное распределение с наибольшей энтропией, а если вы знаете некоторые условия распределения, угадайте распределение с наибольшей энтропией, которое удовлетворяет этим условия.

Следующие два URL-адреса описаны более четко:

2.2 Модель максимальной энтропии

После прочтенияМодель максимальной энтропии для интервью с машинным обучением", Мое понимание:

Предположим, что имеется набор данных с выборочным пространством N, всегоmособенность, для\boldsymbol{x}=[x_1, x_2, ..., x_m], метка класса\boldsymbol{y}=[y_1, y_2,..,y_k], наша цель состоит в том, чтобыP(y|x), то по N фрагментам данных в выборочном пространстве можно вычислить\widetilde{P}(x)и\widetilde{P}(x,y)(Поскольку она рассчитывается на основе известных данных и не может представлять распределение в реальном мире, сверху добавляется волнистая линия), а затем определяется функция:

特征f是指x与y之间存在的某种特定的关系

"еслиx,yУдовлетворяя некоторому условию», эта фраза сначала озадачила меня, а потом я понял, что ее можно рассматривать как,x,y1, если эта комбинация встречается в пространстве выборки, 0 в противном случае. Их количествоnКусок.

小资的AI课堂-最大熵模型

В этом случае можно считатьf(x,y)Ожидание:

  • Характеристика Функцияf(x,y)о\widetilde{P}(x,y)Ожидаемое значение:
E_{\widetilde{P}}(f)=\sum_{x,y} \widetilde{P}(x,y)f(x,y) \tag{2.1}

Поскольку наша цель состоит в том, чтобыP(y|x), то с помощью формулы Байеса мы можем вывести вторую формулу расчета математических ожиданий:

E_{P}(f)=\sum_{x,y} \widetilde{P}(x)P(y|x)f(x,y) \tag{2.2}

Если эти две формулы могут быть равны, то она совершенна (Обратите внимание, что здесь\sum_{x,y} \widetilde{P}(x,y)f(x,y)рассматривается как\sum_{x,y} \widetilde{P}(x)P(y|x)f(x,y)ограничения), поэтому имеем:

\sum_{x,y} \widetilde{P}(x,y)f(x,y)=\sum_{x,y} \widetilde{P}(x)P(y|x)f(x,y) \tag{2.3}

в соответствии сf(x,y)Из определения мы видим, что существует столько комбинаций функций и меток классов, сколько существуетОграничения:f(x,y). Затем, считая все ограничения в выборочном пространстве,

И потому, что условная энтропия: (Почему см. здесь:«Дерево решений [реализация Python]» — условная энтропия)

H(P) = -\sum_{x,y} \widetilde{P}(x)P(y|x)logP(y|x) \tag{2.4}

То есть мы хотим найти в этом пространстве «модель без каких-либо субъективных предположений», то есть максимальную энтропию условной вероятности.

2.3 Целевая функция модели максимальной энтропии

Найдите задачу условной оптимизации, давайте решим ее.

1. Превратить задачу нахождения максимума в задачу нахождения минимума. Требовать
\underset{p \in C}{max}\ H(P) = -\sum_{x,y} \widetilde{P}(x)P(y|x)logP(y|x)

эквивалентно поиску

\underset{p \in C}{min}\ -H(P) = \sum_{x,y} \widetilde{P}(x)P(y|x)logP(y|x)\tag{2.5}

Знакомство с оператором Лагранжаw_1,w_2,...,w_n, можно получить уравнение:

\begin{align} L(P, w) &= -H(P) + w_0(1-\sum_{y}P(y|x)) + \sum_{i=1}^{n}[w_i (E_P(f_i(x,y))-E_{ \widetilde{P}}(f_i(x,y)))] \tag{2.6}\\ &= \sum_{x,y} \widetilde{P}(x)P(y|x)logP(y|x) + w_0[1-\sum_{y}P(y|x)] + \sum_{i=1}^{n} \{ w_i [\sum_{x,y }P(x,y)f_i(x,y) - \sum_{x,y }\widetilde{P}(x)P(y|x)f_i(x,y)] \}\tag{2.7} \end{align}
2. Из задачи оптимизации наша цель состоит в том, чтобы найти:
\begin{align} \underset{p \in C}{min}\ \underset{w}{max}\ L(P,w)\tag{2.8-1} \end{align}
двойная проблема
\begin{align} \underset{w}{max}\ \underset{p \in C}{min}\ L(P,w)\tag{2.8-2} \end{align}

Основная идея такова:\underset{p \in C}{min}\ L(P,w)решениеwвыскажи, а потом спросиwможно решить.

а) сначала спросить\underset{p \in C}{min}\ L(P,w):

когдаL(P,w)Когда ограничения выполнены, пусть

\psi(w) = \underset{p \in C}{min}\ L(P,w) = L(P_w,w) \tag{2.9}

Предполагать\psi(w)РешениеP_w(y|x), попрошайничествоL(P,w)правильноP(y|x)частная производная от , и пусть это будет 0:

\begin{align} \frac{\partial {L(P, w)}}{\partial{p(y|x)}} &= \sum_{x,y} \{ \widetilde{P}(x)logP(y|x) + \widetilde{P}(x)\} - \sum_{y}w_0 + \sum_{i=1}^{n} \{ w_i [0 - \sum_{x,y }\widetilde{P}(x)f_i(x,y) ] \} \\ &= \sum_{x,y}\widetilde{P}(x) ( logP(y|x) + 1) - \sum_{x,y}\widetilde{P}(x)w_0 - \sum_{i=1}^{n} \{ w_i \sum_{x,y }\widetilde{P}(x)f_i(x,y) \} \\ &= \sum_{x,y}\widetilde{P}(x) ( logP(y|x) + 1) - \sum_{x,y}\widetilde{P}(x)w_0 - \sum_{i=1}^{n} \{ w_i \sum_{x,y }\widetilde{P}(x)f_i(x,y) \} \\ &= \sum_{x,y}\widetilde{P}(x) \{( logP(y|x) + 1) - w_0 - \sum_{i=1}^{n} w_i f_i(x,y) \}\tag{2.10} \end{align}

Формула (2.10)0, то есть:

\begin{align} 0 =& \sum_{x,y}\widetilde{P}(x) \{( logP(y|x) + 1) - w_0 - \sum_{i=1}^{n} w_i f_i(x,y)\} \\ p(y|x) =& exp ( w_0 + \sum_{i=1}^{n} w_i f_i(x,y)-1 ) \\ p(y|x) =& \frac{exp (\sum_{i=1}^{n} w_i f_i(x,y))} {exp ( w_0 -1) }\tag{2.11} \end{align}

потому что\sum_{y}p(y|x)=1, в формулу (2.11) входят:

\begin{align} 1 =& \sum_{y} \frac{exp (\sum_{i=1}^{n} w_i f_i(x,y))} {exp ( w_0 -1) } \\ exp ( w_0 -1) =& \sum_{y} exp (\sum_{i=1}^{n} w_i f_i(x,y))\tag{2.12} \end{align}

Пусть (2.12) естьZ_w(x), подставляем в (2.11), результат записывается какp_w(y|x), то есть

\begin{align} p_w(y|x) =& \frac{exp (\sum_{i=1}^{n} w_i f_i(x,y))} {\sum_{y} exp (\sum_{i=1}^{n} w_i f_i(x,y))}\tag{2.13} \end{align}

Поэтому цель оптимизации\psi(x)Решением является уравнение (2.13), гдеZ_w(x)называетсякоэффициент нормализации.

б. Чтобы максимизировать (2.13), найтиw

спросить

\begin{align} \underset{w}{max}\ \psi(w) \tag{2.14} \end{align}

В уравнении (2.6), посколькуp_w(y|x)в\sum_y p(y|x)=1В условиях имеем:

\begin{align} L(P_w, w) &= -H(P_w) + \sum_{i=1}^{n} [w_i (E_{\widetilde{P}} (f_i(x,y)) - E_{P_w}(f_i(x,y)))] \\ &=\sum_{x,y} \widetilde{P}(x) P_w(y|x) log P_w(y|x) +  \sum_{i=1}^{n} w_i (E_\widetilde{P} (f_i(x,y)) - \sum_{x,y}\widetilde{P}(x)·P_w(y|x)·f_i(x,y)) \\ &= \sum_{i=1}^{n}w_i ·E_{\widetilde{P}}(f_i(x,y)) + \sum_{x,y} \widetilde{P}(x) P_w(y|x)·(log P_w(y|x) - \sum_{i=1}^{n} w_if_i(x,y)) \tag{2.15} \end{align}

будет

\begin{align} P_w(y|x) =& \frac{exp (\sum_{i=1}^{n} w_i f_i(x,y))} {\sum_{y} exp (\sum_{i=1}^{n} w_i f_i(x,y))}\tag{2.13} \end{align}

Подставляя в формулу (2.15), получаем

\begin{align} L(P_w, w) &= \sum_{i=1}^{n}w_i ·E_{\widetilde{P}}(f_i(x,y)) + \sum_{x,y} \widetilde{P}(x) P_w(y|x)·(\sum_{i=1}^{n} w_i f_i(x,y)-logP_w(x) -  \sum_{i=1}^{n} w_if_i(x,y)) \\ &= \sum_{i=1}^{n}w_i ·E_{\widetilde{P}}(f_i(x,y)) - logZ_w(x) · \sum_{x,y} \widetilde{P}(x) P_w(y|x) \tag{2.16} \\ &=\sum_{i=1}^{n}w_i ·E_{\widetilde{P}}(f_i(x,y)) - logZ_w(x) ·( \sum_{x}\sum_{y} \widetilde{P}(x) P_w(y|x)) \\  &=\sum_{i=1}^{n}w_i ·E_{\widetilde{P}}(f_i(x,y)) - logZ_w(x) ·( \sum_{x}\widetilde{P}(x))\\ &=\sum_{i=1}^{n}w_i ·\sum_{x,y} \widetilde{P}(x,y)f_i(x,y) - logZ_w(x) ·( \sum_{x}\widetilde{P}(x))\tag{2.17} \end{align}

Поскольку уравнение (2.17) не имеет явного аналитического решения, необходимо прибегнуть к численным методам. Поскольку это гладкая выпуклая функция, существует множество способов ее решения. Методы, которые могут быть использованы:

  1. Обобщенное итеративное масштабирование (ГИС: Обобщенное итеративное масштабирование).
  2. Улучшенное итеративное масштабирование (IIS: улучшенное итеративное масштабирование).
  3. Алгоритм градиентного спуска
  4. Метод квазиньютона (метод Ньютона)

Среди них первые два метода специально разработаны для модели максимальной энтропии, а последние два метода являются общими алгоритмами.


№ 3. Два вопроса к душе

3.1 Почему максимизация двойных функций = оценка правдоподобия моделей максимальной энтропии

3.1.1 Максимизация двойной функции

Если это не просто понять, вы можете\psi(w)видно как оwФункция.

3.1.1 Оценка правдоподобия модели максимальной энтропии
\begin{align} L_{\widetilde{P}}(P_w) &= \sum_{x,y} \widetilde{P}(x,y)logP(y|x) \\ &=\sum_{x,y} \widetilde{P}(x,y)·(\sum_{i=1}^{n}w_i f_i(x,y)-logZ_w(x)) \\ &= \sum_{x,y} \widetilde{P}(x,y)·\sum_{i=1}^{n}w_i f_i(x,y) - logZ_w(x) · \sum_{x,y} \widetilde{P}(x) P_w(y|x) \tag{3.1} \end{align}

Поскольку формула (2.1)

E_{\widetilde{P}}(f)=\sum_{x,y} \widetilde{P}(x,y)f(x,y) \tag{2.1}

Итак, формула (3.1)=(2.16). Следовательно, максимизация двойственной функции = оценка правдоподобия модели максимальной энтропии.

3.2 Какова связь между логистической моделью и моделью максимальной энтропии?

3.2.1 логистическая модель
модель бинарной классификации
\begin{align} P(Y=1|x)=\frac{exp(w·x)}{1+exp(w·x)} \\  P(Y=0|x)=\frac{1}{1+exp(w·x)}  \end{align}
Мультиклассовая модель
\begin{align} P(Y=i|x)=&\frac{exp(w_i·x)}{1+\sum_{i=1}^{n-1}exp(w_i·x)},\ i=1,2,3...,n-1\\  P(Y=i|x)=&\frac{1}{1+\sum_{i=1}^{n-1}exp(w_i·x)} \end{align}
Общее выражение логистической модели
\begin{align} P(y|x)=\frac{exp(w_i·x)} {\sum_{i=1}^{n}exp(w_i·x)}, i=1,2,3...,n;w_1=0 \end{align}
3.2.2 Модель максимальной энтропии
\begin{align} p_w(y|x) =& \frac{exp (\sum_{i=1}^{n} w_i f_i(x,y))} {\sum_{y} exp (\sum_{i=1}^{n} w_i f_i(x,y))}\tag{2.13} \end{align}

Когда есть только две метки класса, модель максимальной энтропии является моделью логистической регрессии.конкретная причина

小资的AI课堂-最大熵模型


4. Ссылки