逻辑回归损失函数3D图

在学习逻辑回归的过程中,通过3D图像可以直接观察损失函数的收敛速度,对自行确定学习速率提供参考

损失函数公式:

Octave程序如下:

tx = linspace(100,-30,1000); %θ和X看做一个共同参数
ty = round(unifrnd(0,1,1,1000));% y的值仅仅为0或1,随机生成1000个
m=length(tx);
[xx, yy] = meshgrid (tx, ty);
tz = -1 *( yy* log( sigmoid(xx) ) + (1 - yy ) * log( (1 - sigmoid(xx)) ) )/m; %h()就是sigmoid(),tz就是J(θ)
mesh (tx, ty, tz);
xlabel ("θX");
ylabel ("y");
zlabel ("J");

从图中可以看到,J的收敛速度在开始比较大,后面越来越慢。对于学习速率的选择开始要小,后面可以适度变大

时间: 2024-08-07 11:53:37

逻辑回归损失函数3D图的相关文章

逻辑回归损失函数(cost function)

逻辑回归模型预估的是样本属于某个分类的概率,其损失函数(Cost Function)可以像线型回归那样,以均方差来表示:也可以用对数.概率等方法.损失函数本质上是衡量”模型预估值“到“实际值”的距离,选取好的“距离”单位,可以让模型更加准确. 1. 均方差距离 \[{J_{sqrt}}\left( w \right) = {\sum\limits_{i = 1}^m {{y_i}\left( {1 - p\left( {{x_i};w} \right)} \right)} ^2} + \left

为什么逻辑回归损失函数不用均方损失/二元逻辑回归的损失函数适合采用对数损失函数

逻辑回归可以用于处理二元分类问题,将输出值控制在[0,1]区间内,为确保输出值时钟若在0到1之间,采用sigmoid函数,其具有该特性,将线性回归训练得到的模型输出数据作z = x1*w1+x2*w2+...+xn*wn+b代入得到y,保证了y在0~1之间 逻辑回归中用到sigmoid函数,若用均方误差则为非凸函数,有多个极小值,采用梯度下降法容易现如局部最优解中 因此在二元逻辑回归的损失函数一般采用对数损失函数 y'是x代入得到的预测值,介于0~1之间的: 若标签值为1,我们希望预测的结果也是

逻辑回归损失函数为何取负数

这样y与^y, 差值最小,因此使用其作为损失函数. 参考: https://www.zhihu.com/question/272058718 原文地址:https://blog.51cto.com/12597095/2486137

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

                                               第十八节逻辑回归之交叉熵损失函数梯度求解过程(3) 上一节中,我们讲解了交叉熵损失函数的概念,目标是要找到使得损失函数最小的那组θ,也就是l(θ)最大,即预测出来的结果在训练集上全部正确的概率最大.那我们怎么样找到我们的最优解呢?上节中提出用梯度下降法求解,本节的话我们对其具体细节展开. 先来看下我们用梯度下降求解最优解,想要通过梯度下降优化L(θ)到最小值需要几步? 第一步,随机产生w,随机到0附近会

逻辑回归原理小结

逻辑回归是一个分类算法,它可以处理二元分类以及多元分类.虽然它名字里面有"回归"两个字,却不是一个回归算法.那为什么有"回归"这个误导性的词呢?个人认为,虽然逻辑回归是分类模型,但是它的原理里面却残留着回归模型的影子,本文对逻辑回归原理做一个总结. 1. 从线性回归到逻辑回归 我们知道,线性回归的模型是求出输出特征向量Y和输入样本矩阵X之间的线性关系系数\(\theta\),满足\(\mathbf{Y = X\theta}\).此时我们的Y是连续的,所以是回归模型.

逻辑回归--参数解释+数据特征不独热编码+训练数据分布可视话

#-*- coding: utf-8 -*- ''' 逻辑回归参数: penalty:惩罚项,str类型,可选参数为l1和l2,默认为l2.用于指定惩罚项中使用的规范.newton-cg.sag和lbfgs求解算法只支持L2规范.L1G规范假设的是模型的参数满足拉普拉斯分布,L2假设的模型参数满足高斯分布,所谓的范式就是加上对参数的约束,使得模型更不会过拟合(overfit),但是如果要说是不是加了约束就会好,这个没有人能回答,只能说,加约束的情况下,理论上应该可以获得泛化能力更强的结果. du

机器学习之逻辑回归(Logistic Regression)

"""逻辑回归中的Sigmoid函数"""   import numpy as np   import matplotlib.pyplot as plt     def sigmoid(t):   return 1/(1+np.exp(-t))     x=np.linspace(-10,10,500)   y=sigmoid(x)     plt.plot(x,y)   plt.show() 结果: 逻辑回归损失函数的梯度:   逻辑回归算法:

线性回归和 逻辑回归 的思考(参考斯坦福 吴恩达的课程)

还是不习惯这种公式的编写,还是直接上word.... 对上面的(7)式取log后并最大化即可得到最小二乘法,即 argmaxθ J(θ) 思考二:线性回归到逻辑回归的转变: 1) 引入逻辑回归,假设用线性回归来做分类问题,设为二分类,即y取0或1. 则会出现如下的情况: 这种情况下是能很好的分类的,但若数据是如下所示呢: 则分类很不好. 思考三:逻辑回归损失函数的得来(解释):     答,也是通过最大似然得到的.y的取值为0,1:则认为这是一个伯努力的分布,也称为两点的分布,则公式表示如下:

Sklearn实现逻辑回归

方法与参数 LogisticRegression类的各项参数的含义 class sklearn.linear_model.LogisticRegression(penalty='l2', dual=False, tol=0.0001, C=1.0, fit_intercept=True, intercept_scaling=1, class_weight=None, random_state=None, solver='liblinear', max_iter=100, multi_class=