逻辑回归数学过程整理(1) | 您所在的位置:网站首页 › 1:05配货什么意思 › 逻辑回归数学过程整理(1) |
一、sigmoid函数及其求导 Z=ωT+b 一个函数是不是复合函数是你的主观判断,就连一次函数y=ax+b你都可以判断成复合函数即y=u+b,u=a*x,你判断这些的标志是你知不知道这个函数怎么求导;当然复合函数要和导数的四则运算分开(这句话的意思:函数是复合函数,你就用复合函数的求导法则.而如果函数是和,差,积,商的形式,你就用四则运算.比如我给你y=x^2+2x+1,明显是y=x^2,y=2x,y=1三个函数之和,所以你用四则运算.但我给你y=(x+1)2,明显是y=u2,u=x+1两个函数复合得到,所以你用复合函数求导法则.),当你能把y写成u的函数(此时y的式子里面不应该再有x)那么就可以看成复合函数举个例子吧:(以下的exp表示以e为底数的指数函数)y=exp(sin(a*x)+c)这个函数,当你令u=sin(a*x)+c之后你发现y=exp(u)里面再也没有X了,也就是说你成功把它转换成复合函数的形式了y'=dy/dx=(dy/du)*(du/dx)=(这是y对u求导,即y=exp(u)这个式子求导)*(u对x求导)=(exp(u)) * (a*cos(a*x))就是这样喵,y'的式子里面含有u和x怎么办,把u直接带入u=sin(a*x)+c就行了你如果觉得直接u对x求导你算不出来,那么令v=a*x一般也可以解出来,(如果还是有困难就令v=sin(a*x),w=a*x)需不需要,需要多少个中间变量就要看你自己的能力了(能力越强越不需要中间变量)如果不知道怎么令u那么就在y=f(x)式子里面(或者化简过后的式子)里面找就行了 (说明: 不要将sigmoid函数求导时看成是复合函数,而是看成导数的商运算: 在无法利用导数的加减乘除法的情况下,才不得不用复合函数的情况下,才看成复合函数求导; 另外不要把单纯的x的n次或单纯的n的x次看成是复合函数 ) 即σ′(z)=σ(z)(1−σ(z)) 在σ(z)=0或σ(z)=1时,σ′(z)=0; 根据极值条件:因为σ(z)是单调递增函数σ(z)=0有最小极为0,而σ(z)=1时有最大值1 二、逻辑回归成本函数意义: Loss function的原则和目的就是要衡量预测输出y^与真实样本输出y的接近程度。平方错误其实也可以,只是它是non-convex的,不利于使用梯度下降算法来进行全局优化。因此,我们可以构建另外一种Loss function,且是convex的,如下所示: 我们来分析一下这个Loss function,它是衡量错误大小的,Loss function越小越好。 三、单个样本逻辑回归的求导过程: 四、如果有m个样本,其Cost function表达式如下: 这样,每次迭代中w和b的梯度有m个训练样本计算平均值得到。其算法流程图如下所示: J=0; dw1=0; dw2=0; db=0; for i = 1 to m z(i) = wx(i)+b; a(i) = sigmoid(z(i)); J += -[y(i)log(a(i))+(1-y(i))log(1-a(i)); dz(i) = a(i)-y(i); dw1 += x1(i)dz(i); dw2 += x2(i)dz(i); db += dz(i); J /= m; dw1 /= m; dw2 /= m; db /= m;经过每次迭代后,根据梯度下降算法,w和b都进行更新: 这样经过n次迭代后,整个梯度下降算法就完成了。 (参考: 【机器学习】【逻辑回归】Logistic函数/Sigmoid函数的详细公式推导_logistic函数求导_CV_ML_DP的博客-CSDN博客 吴恩达《神经网络与深度学习》课程笔记(2)– 神经网络基础之逻辑回归-红色石头的个人博客 ) |
CopyRight 2018-2019 实验室设备网 版权所有 |