{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "# Discriminative Classification" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Preliminaries\n", "\n", "- Goal \n", " - Introduction to discriminative classification models\n", "- Materials \n", " - Mandatory\n", " - These lecture notes\n", " - Optional\n", " - Bishop pp. 213 - 217 (Laplace approximation) \n", " - Bishop pp. 217 - 220 (Bayesian logistic regression) \n", " - [T. Minka (2005), Discriminative models, not discriminative training](https://github.com/bertdv/BMLIP/blob/master/lessons/notebooks/files/Minka-2005-Discriminative-models-not-discriminative-training.pdf)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Challenge: difficult class-conditional data distributions\n", "\n", "Our task will be the same as in the preceding class on (generative) classification. But this time, the class-conditional data distributions look very non-Gaussian, yet the linear discriminative boundary looks easy enough:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "using Pkg; Pkg.activate(\"../.\"); Pkg.instantiate();\n", "using IJulia; try IJulia.clear_output(); catch _ end" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [ { "data": { "image/png": "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", "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "text/html": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "using Random; Random.seed!(1234);\n", "# Generate dataset {(x1,y1),...,(xN,yN)}\n", "# x is a 2-d feature vector [x_1;x_2]\n", "# y ∈ {false,true} is a binary class label\n", "# p(x|y) is multi-modal (mixture of uniform and Gaussian distributions)\n", "using Plots, LaTeXStrings\n", "include(\"./scripts/lesson8_helpers.jl\")\n", "N = 200\n", "X, y = genDataset(N) # Generate data set, collect in matrix X and vector y\n", "X_c1 = X[:,findall(.!y)]'; X_c2 = X[:,findall(y)]' # Split X based on class label\n", "X_test = [3.75; 1.0] # Features of 'new' data point\n", "function plotDataSet()\n", " result = scatter(X_c1[:,1], X_c1[:,2],markersize=4, label=L\"y=0\", xlabel=L\"x_1\", ylabel=L\"x_2\", xlims=(-1.6, 9), ylims=(-2, 7))\n", " scatter!(X_c2[:,1], X_c2[:,2],markersize=4, label=L\"y=1\")\n", " scatter!([X_test[1]], [X_test[2]], markersize=7, marker=:star, label=L\"y=?\") \n", " return result \n", "end\n", "plotDataSet()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Main Idea of Discriminative Classification \n", "\n", "- Again, a data set is given by $D = \\{(x_1,y_1),\\dotsc,(x_N,y_N)\\}$ with $x_n \\in \\mathbb{R}^M$ and $y_n \\in \\mathcal{C}_k$, with $k=1,\\ldots,K$." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Sometimes, the precise assumptions of the (Gaussian-Categorical) generative model \n", "$$p(x_n,y_n\\in\\mathcal{C}_k|\\theta) = \\pi_k \\cdot \\mathcal{N}(x_n|\\mu_k,\\Sigma)$$ \n", "clearly do not match the data distribution." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Here's an **IDEA**! Let's model the posterior $$p(y_n\\in\\mathcal{C}_k|x_n)$$ *directly*, without any assumptions on the class densities." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- Similarly to regression, we will assume that the inputs $x$ are given, so we wil not add a model $p(x)$ for input uncertainties." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Model Specification for Bayesian Logistic Regression\n", "\n", "- We will work this idea out for a 2-class problem. Assume a data set is given by $D = \\{(x_1,y_1),\\dotsc,(x_N,y_N)\\}$ with $x_n \\in \\mathbb{R}^M$ and $y_n \\in \\{0,1\\}$." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- What model should we use for the posterior distribution $p(y_n \\in \\mathcal{C}_k|x_n)$?" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "##### Likelihood\n", "\n", "- We will take inspiration from the [generative classification](https://nbviewer.org/github/bertdv/BMLIP/blob/master/lessons/notebooks/Generative-Classification.ipynb#softmax) approach, where we derived the class posterior \n", "$$\n", "p(y_{nk} = 1\\,|\\,x_n,\\beta_k,\\gamma_k) = \\sigma(\\beta_k^T x_n + \\gamma_k)\n", "$$\n", "as a **softmax** function of a linear map of the input. \n", "- Here, in logistic regression, we _choose_ the 2-class softmax function (which is called the [**logistic** function](https://en.wikipedia.org/wiki/Logistic_function)) with linear discrimination bounderies for the posterior class probability:\n", "$$\n", "p(y_n =1 \\,|\\, x_n, w) = \\sigma(w^T x_n) \\,.\n", "$$\n", "where $$\\sigma(a) = \\frac{1}{1+e^{-a}}$$ is the _logistic_ function.\n", "\n", "- Clearly, it follows from this assumption that $p(y_n =0 \\,|\\, x_n, w) = 1- \\sigma(w^T x_n)$." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "\n", "

\n", "\n", "- (Bishop fig.4.9). The logistic function $\\sigma(a) = 1/(1+e^{-a})$ (red), together with the scaled probit function $\\Phi(\\lambda a)$, for $\\lambda^2=\\pi/8$ (in blue). We will use this approximation later in the [Laplace approximation](#gaussian-cdf).\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "- Adding the other class ($y_n=0$) leads to the following posterior class distribution:\n", "$$\\begin{align*}\n", "p(y_n \\,|\\, x_n, w) &= \\mathrm{Bernoulli}\\left(y_n \\,|\\, \\sigma(w^T x_n) \\right) \\\\\n", "&= \\sigma(w^T x_n)^{y_n} \\left(1 - \\sigma(w^T x_n)\\right)^{(1-y_n)} \\tag{B-4.89} \\\\\n", " &= \\sigma\\left( (2y_n-1) w^T x_n\\right)\n", "\\end{align*}$$\n", " - Note that for the 3rd equality, we have made use of the fact that $\\sigma(-a) = 1-\\sigma(a)$.\n", " - Each of these three models in B-4.89 are **equivalent**. We mention all three notational options since they all appear in the literature. " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- For the data set $D = \\{(x_1,y_1),\\dotsc,(x_N,y_N)\\}$, the **likelihood function** for the parameters $w$ is then given by\n", "$$\n", "p(D|w) = \\prod_{n=1}^N \\sigma\\left( (2y_n-1) w^T x_n\\right)\n", "$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "- This choice for the class posterior is called **logistic regression**, in analogy to **linear regression**:\n", "$$\\begin{align*}\n", "p(y_n|x_n,w) &= \\mathcal{N}(y_n|w^T x_n,\\beta^{-1}) \\quad &&\\text{for linear regression} \\\\\n", "p(y_n|x_n,w) &= \\sigma\\left( (2y_n-1) w^T x_n\\right) &&\\text{for logistic regression}\n", "\\end{align*}$$\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ " \n", "- In the discriminative approach, the parameters $w$ are **not** structured into $\\{\\mu,\\Sigma,\\pi \\}$. In principle they are \"free\" parameters for which we can choose any value that seems appropriate. This provides discriminative approach with more flexibility than the generative approach. \n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "##### Prior \n", "\n", "- In *Bayesian* logistic regression, we often add a **Gaussian prior on the weights**: \n", "$$\\begin{align*}\n", "p(w) = \\mathcal{N}(w \\,|\\, m_0, S_0) \\tag{B-4.140}\n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "### Some Notes on the Model\n", "\n", "- Note that for generative classification, for the sake of simplicity, we used maximum likelihood estimation for the model parameters. In this lesson on discriminative classification, we specify both a prior and likelihood function for the parameters $w$, which allows us to compute a Bayesian posterior for the weights. In principle, we could have used Bayesian parameter estimation for the generative classification model as well (but the math is not suited for a introductory lesson). \n", "\n", "- In the optional paper by [T. Minka (2005)](https://github.com/bertdv/BMLIP/blob/master/lessons/notebooks/files/Minka-2005-Discriminative-models-not-discriminative-training.pdf), you can read how the model assumptions for discriminative classification can be re-interpreted as a special generative model (this paper not for exam). \n", "- As an exercise, please check that for logistic regression with $p(y_n =1 \\,|\\, x_n, w) = \\sigma(w^T x_n)$, the **discrimination boundary**, which can be computed by\n", " $$\\frac{p(y_n\\in\\mathcal{C}_1|x_n)}{p(y_n\\in\\mathcal{C}_0|x_n)} \\overset{!}{=} 1$$\n", "is a straight line, see [Exercises](https://nbviewer.org/github/bertdv/BMLIP/blob/master/lessons/exercises/Exercises-Classification.ipynb). \n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Parameter Inference\n", "\n", "- After model specification, the rest follows by application of probability theory.\n", "\n", "- The posterior for the weights follows by Bayes rule\n", "$$\\begin{align*}\n", "\\underbrace{p(w \\,|\\, D)}_{\\text{posterior}} &= \\frac{p(w) p(D|w)}{\\int p(w) p(D|w) \\mathrm{d}w} \\\\ &= \\frac{\\overbrace{\\mathcal{N}(w \\,|\\, m_0, S_0)}^{\\text{prior}} \\cdot \\overbrace{\\prod_{n=1}^N \\sigma\\left( (2y_n-1) w^T x_n\\right)}^{\\text{likelihood}}}{\\underbrace{\\int \\mathcal{N}(w \\,|\\, m_0, S_0) \\prod_{n=1}^N \\sigma\\left( (2y_n-1) w^T x_n\\right) \\mathrm{d}w}_{\\text{evidence}}} \\tag{B-4.142}\n", "\\end{align*}$$\n", "\n", "- In principle, Bayesian inference is done now! \n", "\n", "- Unfortunately, the posterior $p(w \\,|\\, D)$ is not Gaussian and the evidence $p(D)$ is also not analytically computable. (We will deal with this later)." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Application: the predictive distribution\n", "\n", "- For a new data point $x_\\bullet$, the predictive distribution for $y_\\bullet$ is given by \n", "$$\\begin{align*}\n", "p(y_\\bullet = 1 \\mid x_\\bullet, D) &= \\int p(y_\\bullet = 1 \\,|\\, x_\\bullet, w) \\, p(w\\,|\\, D) \\,\\mathrm{d}w \\\\\n", " &= \\int \\sigma(w^T x_\\bullet) \\, p(w\\,|\\, D) \\,\\mathrm{d}w \\tag{B-4.145}\n", "\\end{align*}$$" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- After substitution of $p(w | D)$ from B-4.142, we have closed-form expressions for both the posterior $p(w|D)$ and the predictive distribution $p(y_\\bullet = 1 \\mid x_\\bullet, D)$. Unfortunately, these expressions contain integrals that are not analytically computable. " ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Many methods have been developed to approximate the integrals in order to get analytical or numerical solutions. Here, we present the **Laplace approximation**, which is one of the simplest methods with broad applicability to Bayesian calculations." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### The Laplace Approximation\n", "\n", "- The central idea of the Laplace approximation is to approximate a (possibly unnormalized) distribution $f(z)$ by a Gaussian distribution $q(z)$. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- We first give the result, followed by the derivation. The **Laplace approximation** of the distribution $f(z)$ is given by:\n", "\n", "$$\\begin{align*}\n", "f(z) &\\approx f(z_0) \\exp\\left( - \\frac{1}{2} (z-z_0)^T A (z-z_0)\\right) \\\\\n", "\\text{where: } z_0 &= \\arg\\max_z \\left( \\log f(z)\\right) \\\\\n", "A &= - \\nabla \\nabla \\left. \\log f(z) \\right|_{z=z_0}\n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "- The Laplace approximation usually serves one or both of the following two purposes: \n", " 1. To approximate a posterior distribution without closed-form expression by a Gaussian distribution.\n", " 2. To approximate (part of) the integrand in an integral with purpose to get an analytical solution for the integral." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##### Example \n", "\n", "

\n", "\n", "- (Bishop fig.4.14a). Laplace approximation (in red) to the distribution $p(z)\\propto \\exp(-z^2/2)\\sigma(20z+4)$, where $\\sigma(a)=1/(1+e^{-a})$. The Laplace approximation is centered on the mode of $p(z)$. " ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Working out the Laplace Approximation \n", "\n", "- Assume that we want to approximate a distribution $f(z)$ by a Gaussian distribution $q(z)$.\n", "\n", "- Note that, if $q(z)$ is a Gaussian distribution, then $\\log q(z)$ is a second-order polynomial in $z$, so we will find the Gaussian by fitting a parabola to $\\log f(z)$. \n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "\n", "##### estimation of mean \n", "\n", "- The mean ($z_0$) of $q(z)$ is placed on the mode of $\\log f(z)$, i.e., \n", "\n", "$$z_0 = \\arg\\max_z \\left( \\log f(z)\\right) \\tag{B-4.126}$$ " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "##### estimation of precision matrix\n", "\n", "- Note that since $\\nabla \\log f(z) = \\frac{1}{f(z)}\\nabla f(z)$ and the gradient $\\nabla \\left. f(z) \\right|_{z=z_0}$ vanishes at the mode $z=z_0$, we can (Taylor) expand $\\log f(z)$ around $z=z_0$ as \n", "$$\\begin{align*}\n", "\\log f(z) &\\approx \\log f(z_0) + \\overbrace{\\left(\\nabla \\log f(z_0)\\right)^T (z-z_0)}^{=0 \\text{ at }z=z_0} + \\ldots \\\\\n", "&\\qquad + \\frac{1}{2} (z-z_0)^T \\left(\\nabla \\nabla \\log f(z_0)\\right) (z-z_0) \\\\\n", " &= \\log f(z_0) - \\frac{1}{2} (z-z_0)^T A (z-z_0) \\tag{B-4.131}\n", "\\end{align*}$$\n", "where the [Hessian matrix](https://en.wikipedia.org/wiki/Hessian_matrix) $A$ is defined by\n", "$$\n", "A = - \\nabla \\nabla \\left. \\log f(z) \\right|_{z=z_0} \\tag{B-4.132}\n", "$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "##### Laplace approximation construction\n", "\n", "- After taking exponentials in eq. B-4.131, we obtain\n", "\n", "$$\n", "f(z) \\approx f(z_0) \\exp\\left( - \\frac{1}{2} (z-z_0)^T A (z-z_0)\\right) \n", "$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- (end derivation of Laplace Approximation)\n", "\n", "- We can now identify $q(z)$ as\n", "$$\n", "q(z) = \\mathcal{N}\\left( z\\,|\\,z_0, A^{-1}\\right) \\tag{B-4.134}\n", "$$\n", "with $z_0$ and $A$ defined by eqs. B-4.126 and B-4.132. \n", "\n", "- All we have done up to now is approximate a function $f(z)$ by a Gaussian $q(z)$. This procedure is called the **Laplace Approximation**. Often, the required integrals (for Bayesian marginalization) can be approximately computed if we replace $f(z)$ by $q(z)$. " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Bayesian Logistic Regression with the Laplace Approximation\n", "\n", "- Let's get back to the challenge of computing the predictive class distribution (B-4.145) for Bayesian logistic regression. We first work out the Gaussian Laplace approximation $q(w)$ to the [posterior weight distribution](#logistic-regression-posterior) \n", "$$\\begin{align*}\n", "\\underbrace{p(w | D)}_{\\text{posterior}} \\propto \\underbrace{\\mathcal{N}(w \\,|\\, m_0, S_0)}_{\\text{prior}} \\cdot \\underbrace{\\prod_{n=1}^N \\sigma\\left( (2y_n-1) w^T x_n\\right)}_{\\text{likelihood}} \\tag{B-4.142}\n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "##### A Gausian Laplace approximation to the weights posterior \n", "\n", "- Since we have a differentiable expression for $\\log p(w | D)$, it is straightforward to compute the gradient and Hessian (for [proof, see optional slide](#gradient-hessian)):\n", "$$\\begin{align*}\n", "\\nabla_w \\log p(w | D) &= S_0^{-1}\\cdot \\left(m_0-w\\right) + \\sum_n (2y_n-1) (1-\\sigma_n) x_n \\\\\n", "\\nabla\\nabla_w \\log p(w | D) &= -S_0^{-1} - \\sum_n \\sigma_n (1-\\sigma_n) x_n x_n^T \\tag{B-4.143}\n", "\\end{align*}$$\n", "where we used shorthand $\\sigma_n$ for $\\sigma\\left( (2y_n-1) w^T x_n\\right)$. " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- We can now use the gradient $\\nabla_w \\log p(w | D)$ to find the **mode** $w_{N}$ of $\\log p(w|D)$ (eg by some gradient-based optimization procedure) and then use the Hessian $\\nabla\\nabla_w \\log p(w | D)$ to get the variance of $q(w)$, leading to a **Gaussian approximate weights posterior**:\n", "$$\n", "q(w) = \\mathcal{N}\\left(w\\,|\\, w_{N}, S_N\\right) \\tag{B-4.144}\n", "$$\n", "with\n", "$$\n", "S_N^{-1} = S_0^{-1} + \\sum_n \\sigma_n (1-\\sigma_n) x_n x_n^T \\tag{B-4.143}\n", "$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Using the Laplace-approximated parameter posterior to evaluate the predictive distribution \n", "\n", "- In the analytically unsolveable expressions for evidence and the predictive distribution (estimating the class of a new observation), we proceed with using the Laplace approximation to the weights posterior. For a new observation $x_\\bullet$, the class probability is now\n", "$$\\begin{align*}\n", "p(y_\\bullet = 1 \\mid x_\\bullet, D) &= \\int p(y_\\bullet = 1 \\,|\\, x_\\bullet, w) \\cdot p(w\\,|\\, D) \\,\\mathrm{d}w \\\\\n", " &\\approx \\int p(y_\\bullet = 1 \\,|\\, x_\\bullet, w) \\cdot \\underbrace{q(w)}_{\\text{Gaussian}} \\,\\mathrm{d}w \\\\\n", " &= \\int \\sigma(w^T x_\\bullet) \\cdot \\mathcal{N}\\left(w \\,|\\, w_N, S_N\\right) \\,\\mathrm{d}w \\tag{B-4.145}\n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- This looks better but we need two more clever tricks to evaluate this expression. \n", " 1. First, note that $w$ appears in $\\sigma(w^T x_\\bullet)$ as an inner product, so through substitution of $a:=w^T x_\\bullet$, the expression simplifies to an integral over the scalar $a$ (see Bishop for derivation):\n", "$$\\begin{align*}\n", "p(y_\\bullet = 1 \\mid x_\\bullet, D) &\\approx \\int \\sigma(a) \\, \\mathcal{N}\\left(a\\,|\\, \\mu_a, \\sigma_a^2\\right) \\,\\mathrm{d}a \\qquad &&\\text{(B-4.151)}\\\\\n", "\\mu_a &= w^T_{N} x_\\bullet \\qquad &&\\text{(B-4.149)}\\\\\n", "\\sigma_a^2 &= x^T_\\bullet S_N x_\\bullet \\qquad &&\\text{(B-4.150)}\n", "\\end{align*}$$\n", " 2. Secondly, while the integral of the product of a logistic function with a Gaussian is not analytically solvable, the integral of the product of a Gaussian cumulative distribution function (CDF, also known as the [probit function](#scaled-probit)) with a Gaussian _does_ have a closed-form solution. Fortunately, \n", "$$\\Phi(\\lambda a) \\approx \\sigma(a)$$\n", "with the Gaussian CDF $\\Phi(x)= \\frac{1}{\\sqrt(2\\pi)}\\int_{-\\infty}^{x}e^{-t^2/2}\\mathrm{d}t$, $ \\lambda^2= \\pi / 8 $ and $\\sigma(a) = 1/(1+e^{-a})$. \n", " Thus, substituting $\\Phi(\\lambda a)$ with $ \\lambda^2= \\pi / 8 $ for $\\sigma(a)$ leads to \n", "\n", "$$\\begin{align*}\n", "p(y_\\bullet = 1 \\mid x_\\bullet, D) &= \\int \\sigma(w^T x_\\bullet) \\cdot p(w|D) \\,\\mathrm{d}w \\\\ \n", "&\\approx \\int \\underbrace{\\Phi(\\lambda a)}_{\\text{probit function}} \\cdot \\underbrace{\\mathcal{N}\\left(a\\,|\\, \\mu_a, \\sigma_a^2\\right)}_{\\text{Gaussian}} \\,\\mathrm{d}a \\\\ \n", "&= \\Phi\\left( \\frac{\\mu_a}{\\sqrt(\\lambda^{-2} +\\sigma_a^2)}\\right) \\tag{B-4.152}\n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- We now have an approximate but **closed-form expression for the predictive class distribution for a new observation** with a Bayesian logistic regression model. " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Note that, by [Eq.B-4.143](#Laplace-posterior-logistic-regression), the variance $S_N$ (and consequently $\\sigma_a^2$) for the weight vector depends on the distribution of the training set. Large uncertainty about the weights (in areas with little training data and uninformative prior variance $S_0$) increases $\\sigma_a^2$ and takes the posterior class probability eq. B-4.152 closer to $0.5$. Does that make sense?" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Apparently, the Laplace approximation leads to a closed-form solutions for Bayesian logistic regression (although admittedly, the derivation is no walk in the park). " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Exam guide: The derivation of closed-form expression eq. B-4.152 for the predictive class distribution requires clever tricks and is therefore not something that you should be able to reproduce at the exam without assistance. You should understand the Laplace Approximation though and be able to work out simpler examples. " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### ML Estimation for Discriminative Classification \n", " \n", "- Rather than the computationally involved Laplace approximation for Bayesian inference, in practice, discriminative classification is often executed through maximum likelihood estimation. " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- With the usual 1-of-K encoding scheme for classes ($y_{nk}=1$ if $x_n \\in \\mathcal{C}_k$, otherwise $y_{nk}=0$), the log-likelihood for a $K$-dimensional discriminative classifier is \n", "\n", " $$\\begin{align*}\n", " \\mathrm{L}(\\theta) &= \\log \\prod_n \\prod_k {p(\\mathcal{C}_k|x_n,\\theta)}^{y_{nk}} \\\\\n", " &= \\log \\prod_n \\prod_k \\Bigg(\\underbrace{\\frac{e^{\\theta_k^T x_n}}{ \\sum_j e^{\\theta_j^T x_n}}}_{\\text{softmax function}}\\Bigg)^{y_{nk}} \\\\\n", " &= \\sum_n \\sum_k y_{kn} \\log \\big( \\frac{e^{\\theta_k^T x_n}}{ \\sum_j e^{\\theta_j^T x_n}} \\big)\n", " \\end{align*}$$\n", "\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ " \n", "- Computing the gradient $\\nabla_{\\theta_k} \\mathrm{L}(\\theta)$ leads to (for [proof, see optional slide below](#ML-for-LG)) \n", "\n", "$$\n", "\\nabla_{\\theta_k} \\mathrm{L}(\\theta) = \\sum_n \\underbrace{\\big( \\underbrace{y_{nk}}_{\\text{target}} - \\underbrace{\\frac{e^{\\theta_k^T x_n}}{ \\sum_j e^{\\theta_j^T x_n}}}_{\\text{prediction}} \\big)}_{\\text{prediction error}}\\cdot x_n \n", "$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ " \n", "- Compare this to the [gradient for _linear_ regression](https://nbviewer.jupyter.org/github/bertdv/BMLIP/blob/master/lessons/notebooks/Regression.ipynb#regression-gradient):\n", "\n", "$$\n", "\\nabla_\\theta \\mathrm{L}(\\theta) = \\sum_n \\left(y_n - \\theta^T x_n \\right) x_n\n", "$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- In both cases\n", "\n", "$$\n", "\\nabla_\\theta \\mathrm{L} = \\sum_n \\left( \\text{target}_n - \\text{prediction}_n \\right) \\cdot \\text{input}_n \n", "$$" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- The parameter vector $\\theta$ for logistic regression can be estimated through iterative gradient-based adaptation. E.g. (with iteration index $i$),\n", "$$\n", "\\hat{\\theta}^{(i+1)} = \\hat{\\theta}^{(i)} + \\eta \\cdot \\left. \\nabla_\\theta \\mathrm{L}(\\theta) \\right|_{\\theta = \\hat{\\theta}^{(i)}}\n", "$$\n", " - Note that, while in the Bayesian approach we get to update $\\theta$ with [**Kalman-gain-weighted** prediction errors](https://nbviewer.jupyter.org/github/bertdv/BMLIP/blob/master/lessons/notebooks/The-Gaussian-Distribution.ipynb#precision-weighted-update) (which is optimal), in the maximum likelihood approach, we weigh the prediction errors with **input** values (which is less precise)." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Code Example: ML Estimation for Discriminative Classification\n", "\n", "- Let us perform ML estimation of $w$ on the data set from the introduction. To allow an offset in the discrimination boundary, we add a constant 1 to the feature vector $x$. We only have to specify the (negative) log-likelihood and the gradient w.r.t. $w$. Then, we use an off-the-shelf optimisation library to minimize the negative log-likelihood.\n", "\n", "- We plot the resulting maximum likelihood discrimination boundary. For comparison we also plot the ML discrimination boundary obtained from the [code example in the generative Gaussian classifier lesson](https://nbviewer.jupyter.org/github/bertdv/BMLIP/blob/master/lessons/notebooks/Generative-Classification.ipynb#code-generative-classification-example)." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "slideshow": { "slide_type": "slide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "P(C1|x•,θ) = 0.4016963543791772\n" ] }, { "data": { "image/png": "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", "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "text/html": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "using Optim # Optimization library\n", "\n", "y_1 = zeros(length(y))# class 1 indicator vector\n", "y_1[findall(y)] .= 1\n", "X_ext = vcat(X, ones(1, length(y))) # Extend X with a row of ones to allow an offset in the discrimination boundary\n", "\n", "# Implement negative log-likelihood function\n", "function negative_log_likelihood(θ::Vector)\n", " # Return negative log-likelihood: -L(θ)\n", " p_1 = 1.0 ./ (1.0 .+ exp.(-X_ext' * θ)) # P(C1|X,θ)\n", " return -sum(log.( (y_1 .* p_1) + ((1 .- y_1).*(1 .- p_1))) ) # negative log-likelihood\n", "end\n", "\n", "# Use Optim.jl optimiser to minimize the negative log-likelihood function w.r.t. θ\n", "results = optimize(negative_log_likelihood, zeros(3), LBFGS())\n", "θ = results.minimizer\n", "\n", "# Plot the data set and ML discrimination boundary\n", "plotDataSet()\n", "p_1(x) = 1.0 ./ (1.0 .+ exp(-([x;1.]' * θ)))\n", "boundary(x1) = -1 ./ θ[2] * (θ[1]*x1 .+ θ[3])\n", "\n", "generative_boundary = buildGenerativeDiscriminationBoundary(X, y)\n", "\n", "\n", "x_test = [3.75;1.0]\n", "println(\"P(C1|x•,θ) = $(p_1(x_test))\")\n", "plot!([-2., 10.], boundary.([-2., 10.]), label=\"Discr. boundary\", linewidth=2)\n", "plot!([-2.,10.], generative_boundary.([-2,10]), label=\"Gen. boundary\", linewidth=2)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "- The generative model gives a bad result because the feature distribution of one class is clearly non-Gaussian: the model does not fit the data well. \n", "\n", "- The discriminative approach does not suffer from this problem because it makes no assumptions about the feature distribution $p(x)$. Rather, it just estimates the conditional class distribution $p(y|x)$ directly." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Why be Bayesian?\n", "\n", "- Why should you embrace the Bayesian approach to logistic regression? After all, Maximum Likelihood for logistic regression seems simpler.\n", "\n", "- Still, consider the following:\n", " - Bayesian logistic regression with the Laplace approximation ultimately leads to very simple analytic rules. Moreover, modern probabilistic programming languages and packages are able to automate the above inference derivations. (We just do them here to gain insight in difficult inference processes.)\n", " - Bayesian logistic regression offers the option to compute model evidence. \n", " - Bayesian logistic regression processes uncertainties, e.g., in places where almost no data is observed, the posterior class probability will pull back to the prior class probability rather than predicting some arbitrary probability.\n", " \n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Recap Classification\n", "\n", "\n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "
Generative Discriminative (ML)
1Like density estimation, model joint prob.\n", "$$p(\\mathcal{C}_k) p(x|\\mathcal{C}_k) = \\pi_k \\mathcal{N}(\\mu_k,\\Sigma)$$ Like (linear) regression, model conditional\n", "$$p(\\mathcal{C}_k|x,\\theta)$$
2Leads to softmax posterior class probability\n", "$$ p(\\mathcal{C}_k|x,\\theta ) = e^{\\theta_k^T x}/Z$$\n", "with structured $\\theta$ Choose also softmax posterior class probability\n", "$$ p(\\mathcal{C}_k|x,\\theta ) = e^{\\theta_k^T x}/Z$$\n", "but now with 'free' $\\theta$
3For Gaussian $p(x|\\mathcal{C}_k)$ and multinomial priors,\n", "$$\\hat \\theta_k = \\left[ {\\begin{array}{c}\n", " { - \\frac{1}{2} \\mu_k^T \\sigma^{-1} \\mu_k + \\log \\pi_k} \\\\\n", " {\\sigma^{-1} \\mu_k } \\\\\n", "\\end{array}} \\right]$$\n", "in one shot. Find $\\hat\\theta_k$ through gradient-based adaptation\n", "$$\\nabla_{\\theta_k}\\mathrm{L}(\\theta) = \\sum_n \\Big( y_{nk} - \\frac{e^{\\theta_k^T x_n}}{\\sum_{k^\\prime} e^{\\theta_{k^\\prime}^T x_n}} \\Big)\\, x_n$$
" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "##
OPTIONAL SLIDES
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Proof of gradient and Hessian for Laplace Approximation of Posterior\n", "\n", "- We will start with the posterior\n", "$$\\begin{align*}\n", "\\underbrace{p(w | D)}_{\\text{posterior}} \\propto \\underbrace{\\mathcal{N}(w \\,|\\, m_0, S_0)}_{\\text{prior}} \\cdot \\underbrace{\\prod_{n=1}^N \\sigma\\big( \\underbrace{(2y_n-1) w^T x_n}_{a_n}\\big)}_{\\text{likelihood}} \\tag{B-4.142}\n", "\\end{align*}$$\n", "from which it follows that\n", "$$\\begin{align*}\n", "\\log p(w | D) \\propto -\\frac{1}{2}\\log |S_0| -\\frac{1}{2} (w-m_0)^T S_0^{-1} (w-m_0) +\\sum_n \\log \\sigma\\left( a_n\\right) \n", "\\end{align*}$$\n", "and the gradient\n", "$$\\begin{align*}\n", "\\nabla_{w}\\log p(w | D) &\\propto \\underbrace{S_0^{-1} (m_0-w)}_{\\text{SRM-5b}} +\\sum_n \\underbrace{\\frac{1}{\\sigma(a_n)}}_{\\frac{\\partial \\log \\sigma(a_n)}{\\partial \\sigma(a_n)}} \\cdot \\underbrace{\\sigma(a_n) \\cdot (1-\\sigma(a_n))}_{\\frac{\\partial \\sigma(a_n)}{\\partial a_n}} \\cdot \\underbrace{(2y_n-1)x_n}_{\\frac{\\partial a_n}{\\partial w} \\text{ (see SRM-5a)}} \\\\\n", "&= S_0^{-1} (m_0-w) + \\sum_n (2y_n-1) (1-\\sigma(a_n)) x_n \\quad \\text{(gradient)}\n", " \\end{align*}$$\n", "where we used $\\sigma^\\prime(a) = \\sigma(a)\\cdot (1-\\sigma(a))$.\n", "\n", "- For the Hessian, we continue to differentiate the transpose of the gradient, leading to\n", "$$\\begin{align*}\n", "\\nabla\\nabla_{w}\\log p(w | D) &= \\nabla_{w} \\left(S_0^{-1} (m_0-w)\\right)^T - \\sum_n (2y_n-1) x_n \\nabla_{w}\\sigma(a_n)^T \\\\ &= -S_0^{-1} - \\sum_n (2y_n-1) x_n \\cdot \\underbrace{\\sigma(a_n)\\cdot (1-\\sigma(a_n))}_{\\frac{\\partial \\sigma(a_n)^T}{\\partial a_n^T}}\\cdot \\underbrace{(2y_n-1) x_n^T}_{\\frac{\\partial a_n^T}{\\partial w}} \\\\\n", "&= -S_0^{-1} - \\sum_n \\sigma(a_n)\\cdot (1-\\sigma(a_n))\\cdot x_n x_n^T \\quad \\text{(Hessian)}\n", "\\end{align*}$$\n", "since $(2y_n-1)^2=1$ for $y_n \\in \\{0,1\\}$.\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "\n", "### Proof of Derivative of Log-likelihood for Logistic Regression\n", "\n", "\n", "- The Log-likelihood is $\n", " \\mathrm{L}(\\theta) = \\log \\prod_n \\prod_k {\\underbrace{p(\\mathcal{C}_k|x_n,\\theta)}_{p_{nk}}}^{y_{nk}} = \\sum_{n,k} y_{nk} \\log p_{nk}$\n", "\n", " \n", "- Use the fact that the softmax $\\phi_k \\equiv e^{a_k} / {\\sum_j e^{a_j}}$ has analytical derivative:\n", "\n", "$$ \\begin{align*}\n", " \\frac{\\partial \\phi_k}{\\partial a_j} &= \\frac{(\\sum_j e^{a_j})e^{a_k}\\delta_{kj}-e^{a_j}e^{a_k}}{(\\sum_j e^{a_j})^2} = \\frac{e^{a_k}}{\\sum_j e^{a_j}}\\delta_{kj} - \\frac{e^{a_j}}{\\sum_j e^{a_j}} \\frac{e^{a_k}}{\\sum_j e^{a_j}}\\\\\n", " &= \\phi_k \\cdot(\\delta_{kj}-\\phi_j)\n", " \\end{align*}$$\n", "\n", "\n", "\n", " - Take the derivative of $\\mathrm{L}(\\theta)$ (or: how to spend a hour ...)\n", "$$\\begin{align*} \n", "\\nabla_{\\theta_j} \\mathrm{L}(\\theta) &= \\sum_{n,k} \\frac{\\partial \\mathrm{L}_{nk}}{\\partial p_{nk}} \\cdot\\frac{\\partial p_{nk}}{\\partial a_{nj}}\\cdot\\frac{\\partial a_{nj}}{\\partial \\theta_j} \\\\\n", " &= \\sum_{n,k} \\frac{y_{nk}}{p_{nk}} \\cdot p_{nk} (\\delta_{kj}-p_{nj}) \\cdot x_n \\\\\n", " &= \\sum_n \\Big( y_{nj} (1-p_{nj}) -\\sum_{k\\neq j} y_{nk} p_{nj} \\Big) \\cdot x_n \\\\\n", " &= \\sum_n \\left( y_{nj} - p_{nj} \\right)\\cdot x_n \\\\\n", " &= \\sum_n \\Big( \\underbrace{y_{nj}}_{\\text{target}} - \\underbrace{\\frac{e^{\\theta_j^T x_n}}{\\sum_{j^\\prime} e^{\\theta_{j^\\prime}^T x_n}}}_{\\text{prediction}} \\Big)\\cdot x_n \n", "\\end{align*}$$" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "slideshow": { "slide_type": "skip" } }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "open(\"../../styles/aipstyle.html\") do f\n", " display(\"text/html\", read(f,String))\n", "end" ] } ], "metadata": { "@webio": { "lastCommId": null, "lastKernelId": null }, "anaconda-cloud": {}, "celltoolbar": "Slideshow", "kernelspec": { "display_name": "Julia 1.9.3", "language": "julia", "name": "julia-1.9" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "1.9.3" } }, "nbformat": 4, "nbformat_minor": 4 }