复习
进行了复习。
上节课最重要的三个公式,
\[P(y=1|x;\theta)=h_{\theta}(x) = \frac{1}{1+e^{-\theta^Tx}}\]
注意这个地方\(h_{\theta}(x) = \frac{1}{1+e^{-\theta^Tx}}\) 而不是\(h_{\theta}(x)=\theta^Tx\)。
根据变形的损失函数,
\[\ell(\theta) = \sum_{i}y^{(i)}\log(h_{\theta}(x)) + (1-y^{(i)})\log(1-h_{\theta}(x))\]
最后推出梯度上升的公式,
\[\theta_j:=\theta_j + \alpha (y^{i}-h_{\theta}(x))x^{(i)}\]
牛顿法
\[f^{\prime}(\theta^{(0)}) = \frac{f(\theta^{(0)})}{\theta^{(0)}-\theta^{(1)}} =\frac{f(\theta^{(0)})}{\Delta}\]
得到\(\Delta = \frac{f(\theta^{(0)})}{f^{\prime}(\theta^{(0)})}\)。 因此得到, \(\theta^{(1)} = \theta^{(0)} - \frac{f(\theta^{(0)})}{f^{\prime}(\theta^{(0)})}\) 。 因此得到, \(\theta^{(t+1)} = \theta^{(t)} - \frac{f(\theta^{(0)})}{f^{\prime}(\theta^{(0)})}\) 。 这是一个找\(\theta\)的方法啊,哈哈。
所以,如果我们要\(\ell(\theta)最小,要求\ell^{\prime}(\theta)=0\) 所以, \(\theta^{(t+1)} = \theta^{(t)} - \frac{f^{\prime}(\theta^{(0)})}{f^{\prime\prime}(\theta^{(0)})}\) 。
所以没有什么\(\alpha\),又少了一个参数!
收敛速度会很快。所以不用梯度下降的原因。 也就是说几百个特征向量,十几次迭代就够了。 对于\(\theta\)实际上是一个向量,因此 \(\theta^{(t+1)} = \theta^{(t)} - H^{-1}\nabla_{\theta}\ell\) 其中\(H^{-1}\)是Hessian矩阵,\(H^{-1} = \frac{\partial^{2}\ell}{\partial\theta_i\partial\theta_j}\) 。 这里的\(H^{-1} \in R^{n \times n}\),\(n\)是特征数量,因此如果特征数量少的话,一次迭代的时间少。
复习
\(P(y|x;\theta)\):
- \(y \in R: Gaussian \to \downarrow \mu^2\)
- \(y \in \{0,1\}: Bernoulli \to logistic \space regression\)
exponential family
这个暂时不重要。
38分钟之前,书签。
广义线性模型GLM
假设
- \(y|x;\theta \sim \mathcal{ExpFamily}(\eta)\)
- Given \(x\), goal is to output \(E[y|x]\), want \(h_{\theta}(x)=E[T(y)|x]\),大多数时候\(T(y) = y\)
- \(\eta = \theta^{T}X\),也就是说 \(\eta_i = \theta_i^{T}X\), 但是大多数时候\(\eta\)是个实数。
\[\begin{alignat}{2} h_{\theta}(x) & = E(y|x;\theta) = P(y=1|x;\theta) \\ & = \phi \\ & = \frac{1}{1 + e^{-\eta}} \\ & = \frac{1}{1 + e^{-\theta^{T}x}} \\ \end{alignat}\]
这里是想用exponential family,推导logistic regression是适用的。
multinomial distribution, softmax regression
这个是推导。
假设\(y \in \{1,...,k\}\)。 假设参数\(\phi_1,...,\phi_k\) 根据二项分布的类似定义,假设: \(P(y = i) = \phi_i\)。 这里服从, \(\phi_1+\cdots +\phi_k = 1\) 定义 \[T(1) = \begin{bmatrix} 1 \\ 0 \\ \vdots \\ 0 \end{bmatrix}, T(2) = \begin{bmatrix} 0 \\ 1 \\ \vdots \\ 0 \end{bmatrix}, T(k-1) = \begin{bmatrix} 0 \\ 0 \\ \vdots \\ 1 \end{bmatrix}, \cdots, T(k) = \begin{bmatrix} 0 \\ 0 \\ \vdots \\ 0 \end{bmatrix}\]
定义一个函数,
\[\mathcal I\{True\} =1,\mathcal I\{False\} =1 \to \mathcal I\{y_i = i\} =1\]
所以, \(T(y)_i = \mathcal I\{y = i\}\)。
所以,
\[\begin{alignat}{2} P(y) & = \phi_1^{\mathcal I\{y = i\}}\cdot \phi_2^{\mathcal I\{y = i\}}\cdots \phi_k^{\mathcal I\{y = k\}} \\ & = \phi_1^{\mathcal I\{y = i\}}\cdot \phi_2^{\mathcal I\{y = i\}}\cdots \phi_k^{\mathcal I\{y = k-1\}}\cdot \phi_k^{1-\sum_i\mathcal I\{y = i\}} \end{alignat}\]
不失去任意性的讨论\(\mathcal I\{y = k\}\),
最后发现,
这就是softmax函数。 \(\phi_i = \frac{e^{\theta_i^Tx}}{1+\sum_j{\theta_j^Tx}}\)和 \(\phi_k = \frac{1}{1+\sum_j{\theta_j^Tx}}\)。 所以, \[\begin{alignat}{2} \phi_1 + \cdots \phi_{k-1} + \phi_k & = \frac{\sum_{h=1}^{k-1}e^{\theta_h^Tx}}{1+\sum_j{\theta_j^Tx}} + \frac{1}{1+\sum_j{\theta_j^Tx}} \\ & = 1 \end{alignat}\]