python逻辑回归多分类问题_逻辑回归算法原理及python实现0302-2020

1.什么是逻辑回归

2.逻辑回归与多重线性回归区别

3.逻辑回归用途

4.逻辑回归算法公式计算

5.算法python实现

1.什么是逻辑回归

逻辑回归的过程可以概括为:面对一个回归或者分类问题,建立代价函数,然后通过优化方 法迭代求解出最优的模型参数,然后测试验证我们这个求解的模型的好坏。 Logistic 回归虽然名字里带“回归”,但是它实际上是一种分类方法,主要用于两分类问题(即输出只有两种,分别代表两个类别)

回归模型中,y 是一个定性变量,比如 y=0 或 1,logistic 方法主要应用于研究某些时间发生的概率

2.逻辑回归与多重线性回归区别

Logistic 回归与多重线性回归实际上有很多相同之处,最大的区别就在于它们的因变量不同,Logistic 回归的因变量是离散变量;多重线性回归的因变量是连续变量。

3.逻辑回归用途

寻找危险因素:寻找某一疾病的危险因素等;

预测:根据模型,预测在不同的自变量情况下,发生某病或某种情况的概率有多大;

判别:实际上跟预测有些类似,也是根据模型,判断某人属于某病或属于某种情况的概率有 多大,也就是看一下这个人有多大的可能性是属于某病。

4.逻辑回归算法原理

Logistic 函数(或称为 Sigmoid 函数),函数形式为:

5.算法python实现

a.Sigmoid函数

def sig(x):

'''

Sigmoid函数

:param x:

:return:

'''

return 1.0/(1.0+np.exp(-x))

b.梯度下降法求解损失函数最小值

# 梯度下降优化算法

def gradAscent(dataMatIn, classLabels):

dataMatrix = mat(dataMatIn)

labelMat = mat(classLabels).transpose()

m, n = shape(dataMatrix)

alpha = 0.001

maxCycles = 500 # 进行500次迭代

thetas = ones((n, 1))

for k in range(maxCycles):

h = sigmoid(dataMatrix * thetas)

error = (h - labelMat)

thetas = thetas - alpha * dataMatrix.transpose() * error

return thetas

使用梯度下降法最优化损失函数,进而拟合出参数θ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值