(转载)—— Logistic Regression(逻辑回归)模型实现二分类和多分类
————————————————————————————————————————————
**
本文转载于https://blog.csdn.net/u011734144/article/details/79717470,如有侵权,请联系我删除!
**
————————————————————————————————————————————
一、逻辑回归
二、判定边界
当将训练集的样本以其各个特征为坐标轴在图中进行绘制时,通常可以找到某一个判定边界去将样本点进行分类。例如:
线性判定边界:
非线性判定边界:
三、二分类和sigmoid函数
sigmoid函数图像如下:
四、损失函数
1. 定义
2. 极大似然估计
上面是一种求损失函数的方式,我们也可以换一种方式来求损失函数,即极大似然估计。用极大似然估计来作为损失函数
3. 正则化
五、最小化损失函数
同样,上式中的a为学习率(下山步长)。将上式的偏导展开,可得:
非正则化的损失函数的偏导:
含正则化项的损失函数的偏导:
其中 λ 为正则化的强度。
同线性回归般,可以通过学习率a对特征系数向量中的元素不断进行迭代,直到元素值收敛到某一值即可,这时可以得到损失函数较小时的特征向量系数Θ。
六、从二分类过渡到多分类
在上面,我们主要使用逻辑回归解决二分类的问题,那对于多分类的问题,也可以用逻辑回归来解决?
1. one vs rest
由于概率函数 hΘ(X) 所表示的是样本标记为某一类型的概率,但可以将一对一(二分类)扩展为一对多(one vs rest):
- 将类型class1看作正样本,其他类型全部看作负样本,然后我们就可以得到样本标记类型为该类型的概率p1;
- 然后再将另外类型class2看作正样本,其他类型全部看作负样本,同理得到p2;
- 以此循环,我们可以得到该待预测样本的标记类型分别为类型class i时的概率pi,最后我们取pi中最大的那个概率对应的样本标记类型作为我们的待预测样本类型。
2. softmax函数
使用softmax函数构造模型解决多分类问题。
softmax回归分类器需要学习的函数为 : (这里下面的公式有问题,括号中的每一项应该都是以e为底的)
其中
可看作样本 X 的标签 为 第 j 个 类别的概率,且有
与 logistic回归 不同的是,softmax回归分类模型会有多个的输出,且输出个数 与 类别个数 相等,输出为样本 X 为各个类别的概率 ,最后对样本进行预测的类型为 概率最高 的那个类别。
我们需要通过学习得到 这里写图片描述 和 这里写图片描述 ,因此建立目标损失函数为:
上式的代价函数也称作:对数似然代价函数。
在二分类的情况下,对数似然代价函数 可以转化为 交叉熵代价函数。
继续展开:
通过 梯度下降法 最小化损失函数 和 链式偏导,使用 这里写图片描述 对 这里写图片描述 求偏导:
化简可得:
再次化简可有:
因此由 梯度下降法 进行迭代:
同理 通过梯度下降法最小化损失函数也可以得到 这里写图片描述 的最优值。
同逻辑回归一样,可以给损失函数加上正则化项。
3. 选择的方案
当标签类别之间是互斥时,适合选择softmax回归分类器 ;当标签类别之间不完全互斥时,适合选择建立多个独立的logistic回归分类器。
(转载)—— Logistic Regression(逻辑回归)模型实现二分类和多分类相关推荐
- Tensorflow【实战Google深度学习框架】—Logistic regression逻辑回归模型实例讲解
文章目录 1.前言 2.程序详细讲解 环境设定 数据读取 准备好placeholder,开好容器来装数据 准备好参数/权重 拿到每个类别的score 计算多分类softmax的loss functio ...
- 【李宏毅机器学习】Logistic Regression 逻辑回归(p11) 学习笔记
李宏毅机器学习学习笔记汇总 课程链接 文章目录 Logistic Regression Step 1: Function Set Step 2: Goodness of a Function Step ...
- 【机器学习】Logistic Regression逻辑回归原理与java实现
[机器学习]Logistic Regression逻辑回归原理与java实现 1.基于概率的机器学习算法 2.逻辑回归算法原理 2.1.分离超平面 2.2.阈值函数 2.3.样本概率 2.4.损失函数 ...
- Logistic Regression逻辑回归的损失函数与梯度下降训练
有一篇博文提到logistic regression的简单理解(Logistic Regression逻辑回归的简单解释).逻辑回归实际上是odds取对数后的反函数,其函数形式也称为sigmoid f ...
- Logistic Regression 逻辑回归数学原理、python代码实现、实际应用
说在前面 第一次写博客,主要目的是再梳理一下学到东西的逻辑,如果可以帮助到其他在学习的人就更好啦.本篇主要参考的:<机器学习>西瓜书.博主文章:文章链接.以及知乎.百度等大神们的解惑文章 ...
- Logistic Regression逻辑回归
参考自: http://blog.sina.com.cn/s/blog_74cf26810100ypzf.html http://blog.sina.com.cn/s/blog_64ecfc2f010 ...
- Logistic Regression逻辑回归的简单解释
Logistic Regression也叫Logit Regression,在机器学习中属于参数估计的模型.逻辑回归与普通线性回归(Linear Regression)有很大的关系.在应用上,它们有所 ...
- Logistic Regression(逻辑回归) +python3.6(pycharm)实现
数学基础知识略过,可自行查询探究. 遇到的bugs: 1.AttributeError: module 'scipy' has no attribute '__version__' 解决办法:inst ...
- 机器学习-非线性回归( Unlinear Regression) -逻辑回归(Logistic Regression)算法
学习彭亮<深度学习基础介绍:机器学习>课程 概率 定义 概率(Probability): 对一件事情发生的可能性的衡量 范围 0 <= P <= 1 计算方法 根据个人置信 根 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 6_Logistic Regression 逻辑回归
Lecture6 Logistic Regression 逻辑回归 6.1 分类问题 Classification 6.2 假设表示 Hypothesis Representation 6.3 决策边 ...
最新文章
- js过滤HTML标签以及空格
- SSL/TLS抓包出现提示Ignored Unknown Record
- 时间与字符串之间的转换
- MySQL 分库分表与分区的区别和思考
- Seata 是什么?
- Oracle Controlfile控制文件中记录的信息片段sections
- 英语口语 week13 Monday
- oracle 01013 02063,Oracle11g dblink用户密码大写限制-ORA-02063: preceding line from FOR244_DBLINK...
- java 写文件filewriter_使用FileWriter写文件
- 服务器响应速度是上行速度吗,服务器带宽与速度之间的关系
- NOIP模拟题 栅栏
- 增广拉格朗日 matlab,大连理工优化方法增广拉格朗日方法MATLAB程序
- Model/ModelAndView
- 使用Riverbed SteelCentral NetProfiler,大海捞针不再难
- 在线java编译器 api_代码在线编译器(上)- 编辑及编译
- 中新时评:中国经济亮红灯 宏观调控“下猛药
- 概率论与数理统计之随机试验与随机时间样本空间与事件的集合表示
- xtrabackup 实现mysql的全量备份与增量备份
- 通证网:一建的报考条件
- html往WPS粘贴格式乱,wps表格无法粘贴信息,原因是复制区域形状不同怎么解决?...
热门文章
- NGINX SSL配置之设置HTTPS服务器
- MinIO GCS 网关 ​​​​​​​
- Docker-Oracle和物理机Oracle数据库性能测试
- C 语言实例 - 二进制与十进制相互转换
- C#开发笔记之20-如何用C#深克隆一个对象(优雅方案)?
- C#设计模式之13-职责链模式
- 跳转点算法_跳转搜索算法介绍
- zuul集成cloud_如何在具有持续集成的Google Cloud Run上运行Laravel-分步指南
- css一行点点点_如何通过一点点创意使CSS成为不可能
- dubbo配置参考手册