18 回归算法 - Softmax回归 - 信贷审批案例

简介:

前两章介绍了logistic回归,logistic模型能够解决二分类的问题。虽然logistic本身只能解决二分类的问题,但是增加一些操作,也能从算法层面实现多分类的问题。

本章开始介绍另一种回归模型:softmax回归
softmax回归: 是logistic回归的一般化,适用于K分类的问题,第k类的参数与向量θk,组成的二维矩阵为 θk*n;

先想明白以下几个问题:
1、θk是什么?
θk是一个向量,即第k个分类所对应的一组θ值。

2、n是什么?
n是特征的个数。

3、二维矩阵θk*n是什么?:
第一类分类的θ值: θ11, θ12, ... , θ1n
第二类分类的θ值: θ21, θ22, ... , θ2n
....
第 K类分类的θ值: θk1, θk2, ... , θkn

可见,在softmax回归中,需要求解的参数非常多。
softmax函数的__本质__是:将一个k维的任意实数向量,映射成另一个k维的实数向量,其中向量的每个元素取值都介于0~1之间。

softmax回归__概率函数__为:

属于第k类的概率

演绎:
在Logistic中,属于第一类的概率是p,属于第二类的概率是1-p。
同理,在softmax回归中,若K=3,三种分类的概率之和必然也等于1。
数学公式如下:

接下来我们看看,softmax回归__概率函数__是如何推导出来的。
推导思路和Logistic回归类似,但现在的分类个数 K ≥ 2。
回顾一下Odds的概念:15 回归算法 - Logistic回归 - Logit函数

首先,根据Odds Ration定义,将构造函数写出来:

很多书上的推导公式最终都到上一步为止,经过统一化转换后可以得到我们一开始讲到的softmax回归__概率函数__:

属于第k类的概率
先看明白以上的推导过程,并记住这个结论,以后有时间再进一步解释。

softmax算法的原理:
h(θ) 即预测的概率 p
p的构成:
在logistic中:分类属于0的概率 p,分类属于1的概率1-p ;最终预测结果构成的也是一个向量 [p, 1-p]
在softmax中:

现在思考,让我们获取到了概率矩阵后,如何求解θ?

构造损失函数:
![第i个样本,j从第1分类到第k分类的概率连乘(右),
再把i个样本,i从第1个样本到第m个的上述结果连乘(左)。](https://upload-images.jianshu.io/upload_images/3153092-ea00e02d3a932c67.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

示性函数,如果满足(y^i=j),即第i个观测值是第j分类的情况,那么I=1

多分类对数似然函数

考虑 j 取1~k的时候连乘的问题:
当 j=1时,连乘的是箭头中的内容,只有当样本 i 属于第1类的时候,I=1,箭头内的内容才需要被计算。否则当样本i 不属于第1类时,I=0,箭头内的内容乘以0还是等于0。

Softmax算法梯度下降求解θ:

最后手写一部分推导公式:
www.dlbhyy.cc
www.bhbyby.com
www.84239650.com
www.bhbyby.net
rl.84211111.cn
www.dlbhyy.org
www.0411fk.com
www.dlbhnk.com
www.dlbhyy.cn
www.dlrlyy.com
www.dlbhrlyy.com
www.120bhnk.com
www.39552222.net
www.dlbhnkyy.com
www.bhwtrl.com
www.dl403yy.com
www.dlrlyy.cn
image

目录
相关文章
|
4月前
|
数据采集 机器学习/深度学习 算法
|
2月前
|
存储 分布式计算 算法
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
66 0
|
4月前
|
搜索推荐 前端开发 数据可视化
【优秀python web毕设案例】基于协同过滤算法的酒店推荐系统,django框架+bootstrap前端+echarts可视化,有后台有爬虫
本文介绍了一个基于Django框架、协同过滤算法、ECharts数据可视化以及Bootstrap前端技术的酒店推荐系统,该系统通过用户行为分析和推荐算法优化,提供个性化的酒店推荐和直观的数据展示,以提升用户体验。
166 1
【优秀python web毕设案例】基于协同过滤算法的酒店推荐系统,django框架+bootstrap前端+echarts可视化,有后台有爬虫
|
4月前
|
数据采集 机器学习/深度学习 算法
【优秀设计案例】基于K-Means聚类算法的球员数据聚类分析设计与实现
本文通过K-Means聚类算法对NBA球员数据进行聚类分析,旨在揭示球员间的相似性和差异性,为球队管理、战术决策和球员评估提供数据支持,并通过特征工程和结果可视化深入理解球员表现和潜力。
144 1
【优秀设计案例】基于K-Means聚类算法的球员数据聚类分析设计与实现
|
2月前
|
存储 算法 搜索推荐
这些算法在实际应用中有哪些具体案例呢
【10月更文挑战第19天】这些算法在实际应用中有哪些具体案例呢
39 1
|
2月前
|
算法 数据可视化 新制造
Threejs路径规划_基于A*算法案例完整版
这篇文章详细介绍了如何在Three.js中完整实现基于A*算法的路径规划案例,包括网格构建、路径寻找算法的实现以及路径可视化展示等方面的内容。
70 0
Threejs路径规划_基于A*算法案例完整版
|
2月前
|
存储 算法 机器人
Threejs路径规划_基于A*算法案例V2
这篇文章详细介绍了如何在Three.js中使用A*算法进行高效的路径规划,并通过三维物理电路的实例演示了路径计算和优化的过程。
70 0
|
4月前
|
机器学习/深度学习 人工智能 算法
【人工智能】传统语音识别算法概述,应用场景,项目实践及案例分析,附带代码示例
传统语音识别算法是将语音信号转化为文本形式的技术,它主要基于模式识别理论和数学统计学方法。以下是传统语音识别算法的基本概述
83 2
|
4月前
|
机器学习/深度学习 算法 数据可视化
决策树算法介绍:原理与案例实现
决策树算法介绍:原理与案例实现
|
5月前
|
算法
Raid5数据恢复—Raid5算法简介&raid5磁盘阵列数据恢复案例
Raid5算法也被称为“异或运算”。异或是一个数学运算符,它应用于逻辑运算。异或的数学符号为“⊕”,计算机符号为“xor”。异或的运算法则为:a⊕b = (¬a ∧ b) ∨ (a ∧¬b)。如果a、b两个值不相同,则异或结果为1。如果a、b两个值相同,异或结果为0。 异或也叫半加运算,其运算法则相当于不带进位的二进制加法。二进制下用1表示真,0表示假。异或的运算法则为:0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0(同为0,异为1),这些法则与加法是相同的,只是不带进位。 异或略称为XOR、EOR、EX-OR,程序中有三种演算子:XOR、xor、⊕。使用方法如下z = x ⊕ y z
Raid5数据恢复—Raid5算法简介&raid5磁盘阵列数据恢复案例