逻辑回归损失函数_机器学习 第61集 逻辑回归损失函数如何求解模型的参数?( 含有笔记、代码、注释 )...

逻辑回归损失函数如何求解模型的参数?

① 逻辑回归损失函数需要求解是模型的参数

,即线性模型自变量的权重系数。

② 对于线性回归模型而言,可以使用最小二乘法,对于逻辑回归而言使用传统最小二乘法求解是不合适的。

c432b1e440ef5c01fe34b23f61c1e2d7.png

注:不能使用经典最小二乘法的原因在于:逻辑回归模型的参数估计问题不能 "方便地" 定义 "误差" 或者 "残差"。

③ 考虑使用迭代类算法优化,最常见的就是 "梯度下降法"。

注:常用梯度下降还有三种:批量梯度下降 ( BGD )、随机梯度下降 ( SGD )、small batch 梯度下降。

注:梯度下降的迭代公式如下:

注:下面对如何求损失函数对参数

的梯度进行详细推导过程:

a9ef65dfdaab5acfcdd39578e32d4d74.png

07959a8b91294d9c5821e034d6e5f365.png

注:最后将求得的梯度带入迭代公式中,即为:

注:公式中,i 代表样本数,j 代表特征数。

Python基础积累(numpy)

numpy如何用布尔矩阵提取数据

import numpy as np
student_name = np.array(['Tom', 'Lily', 'Jack', 'Rose'])  # 存储学生姓名的数组
student_name

运行结果:

array(['Tom', 'Lily', 'Jack', 'Rose'], dtype='<U4')

注:<表示字节顺序,小端(最小有效字节存储在最小地址中)。

注:U表示Unicode,数据类型。

注:4表示元素位长,数据大小。

student_score = np.array([[79, 88, 80], [89, 90, 92], [83, 78, 85], [78, 76, 80]])  # 存储学生成绩的数组
student_score

运行结果:

array([[79, 88, 80],
[89, 90, 92],
[83, 78, 85],
[78, 76, 80]])

student_name == 'Jack'

运行结果:

array([False, False, True, False])

注:对矩阵名student_name和字符串“Jack”通过运算符产生一个布尔型数组。

student_score[student_name=='Jack']

运行结果:

array([[83, 78, 85]])

注:将布尔数组作为索引应用于存储成绩的数组student_score。

注:返回的数据是True值对应的行。

参考文献:

  1. 知乎/东哥起飞/从零开始学会逻辑回归

"♥每天积累一点点♥"

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值