大白话5分钟带你走进人工智能-第十八节逻辑回归之交叉熵损失函数梯度求解过程(3)

                                               第十八节逻辑回归之交叉熵损失函数梯度求解过程(3)

上一节中,我们讲解了交叉熵损失函数的概念,目标是要找到使得损失函数最小的那组θ,也就是l(θ)最大,即预测出来的结果在训练集上全部正确的概率最大。那我们怎么样找到我们的最优解呢?上节中提出用梯度下降法求解,本节的话我们对其具体细节展开。

先来看下我们用梯度下降求解最优解,想要通过梯度下降优化L(θ)到最小值需要几步?

第一步,随机产生w,随机到0附近会比较好一点,w随机到0附近就意味着不管用L1还是L2正则的时候,可以使w的整体比较小。L1和L2正则同样可以用到逻辑回归里面去,来使得逻辑回归的损失函数obj相对比较小,然后使得我们模型具有推广能力和泛化能力。其实任何算法,都可以去使用L1和L2来提高模型的泛化能力,本质上就是减少模型的复杂度。所以以后未来碰到任何的算法,w在随机的过程当中,我们最好用期望为0的正态分布,来随机产生n+1个w。

第二步是求梯度,对于逻辑回归来说,如果用SGD求梯度,我们得用交叉熵的损失函数来得到它的导函数,然后才可以知道某一个值的时候它的梯度是多少。

第三步是,它本质是一阶泰勒展开近似。

第四步是判断收敛,其实就是第二第三步循环往复来执行。

四步里面第二步求解交叉熵损失函数的导函数求得其梯度是最关键的。我们对其展开来说。我们再来看下我们的目标函数:

把负号提出来再加上1/m就是:

至于求导梯度时为什么要加-1/m,可以参考第六节梯度下降之从单元函数理解梯度下降过程(1)

我们要对损失函数里每个w求偏导,也就是对每一部分求偏导。w在pi里面,pi=1/(1+e-w^Tx),也可写成h(θ)x。上面可拆成左右两部分求导,先对左半部分yi*log pi求导,我们是对wj即(θj)求偏导,跟yi没关系,因为(lnx)‘=1/x ,并且log pi是复合函数,需要对里外分别求导,即:

后半部分同理复合函数求导,

即 :

又因为求导结果为。而p(xi;w) 实际上就是关于θ的函数,可以写成h(θ)x。所以

左右两部分求导结合起来后损失函数表示成:

hθ(x)=1/(1+e-θ^Tx),是关于θ^Tx的Sigmoid函数.所以可以用g(θTx)表示,所以损失函数推导部分又可以写成:

又因为(1/x)‘=-1/x2,(ex)‘= ex,(-z)‘=-1,所以实际上展开就是:

好吧看到这是不是很晕眩,实际上耐心下来,跟着我的思路去走,就会很好理解上面的公式。我们继续吧,很快就结束了,也快大功告成了。我们对上面展开后的公式继续展开,整理即:

因为z就是θTx,hθ(x)=1/(1+e-θ^Tx)是关于θ^Tx的Sigmoid函数.同样可以用g(θTx)表示。所以上面展开后的公式最后可以表示成:

所以损失函数可以推导成:

而θTx就是θ1x1+θ2x2+……+θjxj+……+θnxn,如果对θj求偏导,只剩xj。即

xij这种表达方式大家应该已经习惯了,因为i代表第i行,j代表第j列,因为损失函数前面有一个加和符号,所以它实际上还是每一行的事。接下来就是把损失函数式子拆开,正负相消即:

最后一步是把前面的负号放进去得到的。到此我们推导成功,擦擦汗,真不容易!!!。它就是逻辑回归的导函数,你会发现它推导之后和mse的导函数是一样的,都是(hθ(x)-y)*xj这种形式。只不过在多元线性回归的时候,hθ(x)是wTx,在逻辑回归里面,hθ(x)是1/(1+e-θTx)。hθ(x)不一样,但是整体形式一样。所以这也是它叫逻辑回归的一个很大原因。

有了逻辑回归损失函数推出来的导函数,我们用梯度下降求解的时候,我们就可以把第三步中的这一部分算出来了。只要给我一组w,或者θ,w0一直到wn。有了θ,x,y,xj,我就可以把导数求出来。有了导数,继而求得梯度。然后就可以用梯度下降公式去求解了。

下一节中我们讲解逻辑回归的优化。

原文地址:https://www.cnblogs.com/LHWorldBlog/p/10797787.html

时间: 2024-09-30 16:40:48

大白话5分钟带你走进人工智能-第十八节逻辑回归之交叉熵损失函数梯度求解过程(3)的相关文章

大白话5分钟带你走进人工智能-第二十节逻辑回归和Softmax多分类问题(5)

                                                    大白话5分钟带你走进人工智能-第二十节逻辑回归和Softmax多分类问题(5) 上一节中,我们讲解了逻辑回归的优化,本节的话我们讲解逻辑回归做多分类问题以及传统的多分类问题,我们用什么手段解决. 先看一个场景,假如我们现在的数据集有3个类别,我们想通过逻辑回归建模给它区分出来.但我们知道逻辑回归本质上是区分二分类的算法模型.难道没有解决办法了吗?办法还是有的,既然想分出3类,我们姑且称这3个类

大白话5分钟带你走进人工智能-第二十八节集成学习之随机森林概念介绍(1)

                                                      第二十八节集成学习之随机森林概念介绍(1) 从本系列开始,我们讲解一个新的算法系列集成学习.集成学习其实是怎么样去应用决策树解决一些问题. 在机器学习领域集成学习是一种非常简单直接的提升分类器回归器预测效果的一种思路.决策树有一个困境,当层数太深的时候会有过拟合问题,当我不想过拟合,就通过预剪枝给它砍掉一部分深度,此时损失又容易太大了,导致在训练集上预测的又不怎么准.所以对于决策树很难去找

大白话5分钟带你走进人工智能-目录

                                                                                目录 大白话5分钟带你走进人工智能-第一节开篇介绍以及线性回归简介篇 大白话5分钟带你走进人工智能-第二节概率基础及高斯分布 大白话5分钟带你走进人工智能-第三节最大似然推导mse损失函数(深度解析最小二乘来源)(1) 大白话5分钟带你走进人工智能-第四节最大似然推导mse损失函数(深度解析最小二乘来源)(2) 大白话5分钟带你走进人工智

大白话5分钟带你走进人工智能-第十四节过拟合解决手段L1和L2正则

                                                                                                  第十四节过拟合解决手段L1和L2正则 第十三节中,我们讲解了过拟合的情形,也就是过度的去拟合训练集上的结果了,反倒让你的模型太复杂.为了去解决这种现象,我们提出用L1,L2正则去解决这种问题. 怎么把正则应用进去?我们重新审视目标函数,以前我们可以理解目标函数和损失函数是一个东西.而有正则的含义之后,目

大白话5分钟带你走进人工智能-第二十五节决策树系列之信息增益和信息增益率(4)

                                                       第二十五节决策树系列之信息增益和信息增益率(4) 上一节我们讲解了决策树的分裂条件以及评估纯度的其中一个方式,基尼系数.本节的话,我们再讲解一个评估纯度的方式,基于信息增益的方式,即ID3树使用的评估方式.它办的事跟Gini系数一样,也是评价纯度,但是它更客观一点,但它算起来比Gini系数稍慢一点,它办的事跟Gini系数一样,也是评价纯度,但是它更客观一点,算起来比Gini系数稍慢一点,

大白话5分钟带你走进人工智能-第十九节逻辑回归之优化点(4)

                                                                                      第十九节逻辑回归之优化点(4) 上一节中我们讲解了逻辑回归导函数求解的问题,一步步推导出交叉熵损失函数的梯度.很是不容易,这节中我们一起看下逻辑回归的优化有哪些点? 第一点关于逻辑回归优化:和多元性回归是一模一样.要不要设置w0?比如下图: ? 之前说多元性回归是做拟合,假如现在要分类的话,我们知道分类对于一维来说是找一个点,

大白话5分钟带你走进人工智能-第34节神经网络之多神经网络概念(2)

目录 1.回顾: 2.常见的激活函数都有哪些? 3.多层神经网络里面故事: 4.如何训练神经网络? 1.回顾: 回顾下之前学习的内容.人工神经网络里面有重要的三条内容,一个是加和,加function,把前面的输入所对应模型的权重相乘相加,第二经过一个非线性变化,第三signal out输出.如果把function设置为Sigmoid函数,它相当于是一个逻辑回归. 2.常见的激活函数都有哪些? ? 第一个叫01函数,它要么就是0,要么就是1: 第二个叫Sigmoid函数: ? 可以是linear:

大白话5分钟带你走进人工智能-第35节神经网络之sklearn中的MLP实战(3)

本节的话我们开始讲解sklearn里面的实战: 先看下代码: from sklearn.neural_network import MLPClassifier X = [[0, 0], [1, 1]] y = [0, 1] clf = MLPClassifier(solver='sgd', alpha=1e-5, activation='logistic', hidden_layer_sizes=(5, 2), max_iter=2000, tol=1e-4) clf.fit(X, y) pre

顾嘉:5分钟带你读懂《在线》逻辑

互联网成了基础设施,是创新平台:数据成了生产资料,是自然资源 :计算成了公共服务,是能源动力. ——王坚:<在线> 在我的记忆里,云计算.物联网.大数据是近年来被媒体和产业界炒得最热的几个概念了.然而时至今日,尽管有一大批创业公司以大无畏的勇气踏上了探索前路的征途,我们依然很少在现实工作和生活中真切地感受到这几个新技术带来的变化. 除了少部分出类拔萃的企业,大部分产品依旧停留在发布会的PPT中,还没来得及面世就被资本的力量洗刷殆尽.这背后自然有“物竞天择”的无常,也有市场竞争的残酷,但从主观上