matlab中logistic多元回归,matlab实现logistic回归

Logistic回归是一个线性概率分类器。通过加权矩阵W和偏置向量b实现了参数化。通过将数据点投影到超平面集上来实现分类,其中距离反映数据点的归属概率。

其中会用到一个非常重要函数,能够将数据投影,利用数学语言表述:

0818b9ca8b590ca3270a3433284dd417.png

这是一个关于点(0,0.5)对称的奇函数。从这个意义上说来,logistic回归与线性回归有着许多相似之处。我们可以将线性回归中的数据做一下处理,即g(z) = z

在线性回归问题中,由于对于应变量y值的取值范围没有限定,所确定的分类面为

0818b9ca8b590ca3270a3433284dd417.png=0。但在实际问题中,常会遇到应变量y只取0,1两个值的情形。在这种情形下,继续使用线性回归显然是不适用的。为了实现分类,利用logistic函数或sigmoid函数将分类面投影:

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png是待估参数,此时函数的取值范围在(0,1)区间,假设

0818b9ca8b590ca3270a3433284dd417.png

y是离散型随机变量,上式是它的分布律。在具体问题中,当我们训练出参数theta后,分别计算上述概率,那个的概率大就将待预测样本划分到相应的类中。

为了以后分析方便起见,我们将它转换为如下形式:

0818b9ca8b590ca3270a3433284dd417.png

上述表达式是将随机变量的分布律写成统一的形式,其中theta是未知参数,需要对其进行估计,(x,y)相当于采自这个分布的一组样本,现在根据这些样本,求未知参数theta的极大似然估计。首先写出似然函数

0818b9ca8b590ca3270a3433284dd417.png

现在需要求使得似然函数达到最大值时的参数theta,上述形式不容易求解。因为函数与其对数函数有相同的单调性。我们求它的对数似然

0818b9ca8b590ca3270a3433284dd417.png

利用梯度下降法求上述函数的极大值点,先求其梯度

0818b9ca8b590ca3270a3433284dd417.png

最终迭代更新参数的公式为:

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

下面是logistic回归的简单实现,编程的过程与线性回归极为相似,只是价值函数和梯度略有不同

0818b9ca8b590ca3270a3433284dd417.png

你可能感兴趣的:(matlab中logistic多元回归,matlab实现logistic回归)