机器学习——逻辑回归

机器学习——逻辑回归

一、逻辑回归
logistic回归又称logistic回归分析,常用于数据挖掘,疾病自动诊断,经济预测等领域。它是一种广义的线性回归分析模型,因此与多重线性回归分析有很多相同之处。它们的模型形式基本上相同,都具有 wx+b,其中w和b是待求参数,其区别在于他们的因变量不同,多重线性回归直接将w‘x+b作为因变量,即y =wx+b,而logistic回归则通过函数L将wx+b对应一个隐状态p,p =L(wx+b),然后根据p 与1-p的大小决定因变量的值。如果L是logistic函数,就是logistic回归,如果L是多项式函数就是多项式回归。

二、逻辑回归的作用——预测
概况的说:逻辑回归就是用现有的样本数据,设计一个模型,在将来用新的数据带入到模型里面,来预测一些我们需要的信息,例如:物体的分类、手写字体的识别等等,应用非常广泛。

三、基本原理
逻辑回归可以做二分类,也可以做多分类(逻辑回归做多分类,把多分类的问题,转化成多个二分类的问题,如果假如要分三个类别,就需要同时训练三个互相不影响的模型,比如我们n个维度,那么三分类,w参数的个数就会是(n+1)*3个参数。上面所谓的互不影响,指的是模型在梯度下降的时候,分别去训练,分别去下降,三个模型互相不需要 传递数据,也不需要等待收敛)

假如我们有一组样本数据X,样本每行代表一类,假如有多n类。我们可以根据一些模型参数W,与数据X进行处理(加减乘除、卷积、全链接等,可以自己定义),得到n个输出,可以使用激活函数(Sigmoid函数、RuLe函数、Tanh函数等)来处理这n个输出,我们把通过激活函数处理过的n个值设为arr_n[n,1]当然,也可以不使用激活函数处理,直接使用原有的值)。然后把arr_n[n,1]带入的softMax函数中进行处理,再次得到n个值,这些值都是0~1之间的数(每个类的概率),n个数和为1(这个很重要),选择概率最大的那个类,作为当前样本的分类结果。

四、逻辑回归模型示意图(这里用一个简单的模型)
下图是一个简单的逻辑回归模型示意图(不是很规范,缺少偏置输入),它是一个二分类在这里插入图片描述

1、首先这个模型有p个输入(代表每个样本有p个输入特征)。
2、b1有3个节点,这是一个全连接层,将有p个输入数据和3p个W权重分别相乘,然后再分别相加,最后我们将得到3个输出节点。
3、C里面是一个全连接层,具体里面做了什么,我也不知道(因为可能什么都不做,输出3个节点;也可能用了些激活函数,可做的操作太多了),反正最后输出了3个节点。
4、C之后又3个输出,又和一个2个节点的全连接层作用(相乘、相加),最后有2个输出节点。
5、对输出的2个节点数据,在A中进行softMax操作(一般分类问题,在最后都会加一个softMax操作),得到2个概率值
6、选择最大概率所在的类别作为最后的分类类别

五、激活函数:Sigmoid函数、RuLe函数、Tanh函数…
操作:把输出数据带入到这些函数中,得到输出之后,在输入到下一个输如里面
作用:点击链接(这里面很详细)
1、Sigmoid函数:
公式:
在这里插入图片描述
2、RuLe函数
公式:
在这里插入图片描述
3、Tanh函数
公式:
在这里插入图片描述
六、SoftMax层处理
这是很多分类模型都会用到的,目的是计算单个样本对应每个类别的概率。
**斜体样式它是怎么做的呢???????
如下路所示:
在这里插入图片描述
如图:我们有三个输出节点(z1,z2,z3),然后计算:
z1’ = ez1 z2’ = ez2 z3’ = ez3 z’=z1’+z2’+z3’
然后计算出每个类别的概率:
p1=z1’/z’ p2=z2’/z’ p3=z3’/z’
最终类别 = max(p1,p2,p3)

七、逻辑回归的损失函数——交叉熵
以上我们了解了整个逻辑回归的流程,那么我们要怎么计算,这些权重W,我们需要根据已有的数据生成一个带W参数函数式,来求解。就像做数学题一样,利用已知求未知。

在逻辑回归二分类问题中 y ={0,1},设 y^为样本类别为 y=1的概率:
y^=P(y=1∣x)
那么样本类别为 y=0的概率:
1 - y^=P(y=0∣x)

!!!重点来了!!!从极大似然的角度来看,把上述两种情况整合到一起:
在这里插入图片描述
很多人不知道极大似然,很抽象。极大似然就是按照事物最大相似度去求解、写模型等等
y^y 代表 y=1的概率出现的频率(y),那么这里出现频率要么是0,要么是1
(1-y^) (1-y) 代表 y=0的概率出现的频率(1-y),那么这里出现频率要么是0,要么是1
这样就可以求出当前的
P(y|x)

由于取自然对数不改变概率的函数的单调性,因此最大化概率等价于最大化以下的函数:
在这里插入图片描述
我们希望**logP(y∣x)logP(y∣x)越大越好,反过来,只需要logP(y∣x)logP(y∣x)的负值−logP(y∣x)−logP(y∣x)越小就可以了。
那我们就引入损失函数,令
loss=−logP(y∣x)loss=−logP(y∣x)**即可。
则得到损失函数为:
在这里插入图片描述
如果要计算所有样本的损失函数,把所有Loss叠加起来就可以了:

在这里插入图片描述
以上就是逻辑回归二分类的,交叉熵损失函数的推导!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值