在前面介绍的《逻辑回归是个什么逻辑》中,我们构建的逻辑回归模型是:

P(y=1|x;θ)=11+e−θTx

P(y = 1|x;\theta ) = \frac{1}{{1 + {e^{ - {\theta ^T}x}}}}
在模型的数学形式确定后,剩下的就是如何去求解模型中的参数 θ\theta。而在已知模型和一定样本的情况下,估计模型的参数,在统计学中常用的是极大似然估计方法。即找到一组参数 θ\theta,使得在这组参数下,样本数据的似然度(概率)最大。对于极大似然估计,可以参考下前期文章《 极大似然估计》。

对于逻辑回归模型,假定的概率分布是伯努利分布,根据伯努利分布的定义,其概率质量函数PMF为:

P(X=n)={1−pn=0pn=1

P(X = n) = \left\{ \begin{array}{l} 1 - p\;\;\;\;n = 0\\ p\;\;\;\;\;\;\;\;n = 1 \end{array} \right.
所以,似然函数可以写成:

L(θ)=∏i=1mP(y=1|xi)yiP(y=0|xi)1−yi

L(\theta ) = \prod\limits_{i = 1}^m {P{{(y = 1|{x_i})}^{{y_i}}}P{{(y = 0|{x_i})}^{1 - {y_i}}}}
对数似然函数则为:

lnL(θ)=∑i=1m[yilnP(y=1|xi)+(1−yi)lnP(y=0|xi)]

\ln L(\theta ) = \sum\limits_{i = 1}^m {[{y_i}\ln P(y = 1|{x_i}) + (1 - {y_i})\ln P(y = 0|{x_i})} ]

lnL(θ)=∑i=1m[yilnP(y=1|xi)+(1−yi)ln(1−P(y=1|xi))]

\ln L(\theta ) = \sum\limits_{i = 1}^m {[{y_i}\ln P(y = 1|{x_i}) + (1 - {y_i})\ln (1 - P(y = 1|{x_i}))} ]
而在机器学习领域,我们经常使用损失函数(loss function,或称为代价函数,cost function)来衡量模型预测的好坏。常用的有0-1损失,平方损失,绝对损失,对数损失等。其中对数损失在单个数据点上的定义为:

cost(y,p(y|x))=−ylnp(y|x)−(1−y)ln(1−p(y|x))

\cos t(y,p(y|x)) = - y\ln p(y|x) - (1 - y)\ln (1 - p(y|x))
全体样本的损失函数则可表达为:

cost(y,p(y|x))=−∑i=1m[yilnp(yi|xi)+(1−yi)ln(1−p(yi|xi))]

\cos t(y,p(y|x)) = - \sum\limits_{i = 1}^m {[{y_i}\ln p({y_i}|{x_i}) + (1 - {y_i})\ln (1 - p({y_i}|{x_i}))} ]
可以看到,这个对数损失函数与上面的极大似然估计的对数似然函数本质上是等价的。所以逻辑回归直接采用对数损失函数来求参数,实际上与采用极大似然估计来求参数是一致的。

逻辑回归为什么使用对数损失函数相关推荐

  1. 大白话5分钟带你走进人工智能-第十八节逻辑回归之交叉熵损失函数梯度求解过程(3)

                                                   第十八节逻辑回归之交叉熵损失函数梯度求解过程(2) 上一节中,我们讲解了交叉熵损失函数的概念,目标是要找到 ...

  2. 个人总结:从 线性回归 到 逻辑回归 为什么逻辑回归又叫对数几率回归?

    逻辑回归不是回归算法,是分类算法,可以处理二元分类以及多元分类. 线性回归 线性回归的模型是求出特征向量Y和输入样本矩阵X之间的线性关系系数θ,满足Y = Xθ.此时Y是连续的,所以是回归模型. 对应 ...

  3. 逻辑回归损失函数推导及其模型的推导

    注:本篇文章求解思路.过程均为原创,本文出现的文字.公式等均为对照原计算手稿逐字手敲,绝无复制粘贴学术不端之举,转载请注明URL以及出处. 1.什么是逻辑回归? Logistic−Regression ...

  4. 逻辑回归(对数几率回归)推导及python代码实现

    逻辑回归,也叫对数几率回归: import numpy as np import matplotlib.pyplot as plt from sklearn.datasets._samples_gen ...

  5. Lesson 4.1-4.2 逻辑回归模型构建与多分类学习方法逻辑回归参数估计

    Lesson 4.1 逻辑回归模型构建与多分类学习方法 首先我们来讨论关于逻辑回归的基本原理,当然,在此过程中,我们也将进一步补充机器学习数学理论基础. 逻辑回归的基本原理,从整体上来划分可以分为两个 ...

  6. 全面解析并实现逻辑回归(Python)

    本文以模型.学习目标.优化算法的角度解析逻辑回归(LR)模型,并以Python从头实现LR训练及预测. 一.逻辑回归模型结构 逻辑回归是一种广义线性的分类模型且其模型结构可以视为单层的神经网络,由一层 ...

  7. 使用鸢尾花数据集实现一元逻辑回归、多分类问题

    目录 鸢尾花数据集 逻辑回归原理 [1]从线性回归到广义线性回归 [2]逻辑回归 [3]损失函数 [4]总结 TensorFlow实现一元逻辑回归 多分类问题原理 独热编码 多分类的模型参数 损失函数 ...

  8. 机器学习笔记(三)---- 逻辑回归(二分类)

    逻辑回归基本概念 前面提到过线性模型也可以用来做分类任务,但线性模型的预测输出 y = wx + b 可能是(-∞,+∞)范围内的任意实数,而二分类任务的输出y={0,1},如何在这之间做转换呢?答案 ...

  9. 逻辑回归算法原理解读

    1.线性回归和逻辑回归的区别 线性回归是处理回归问题,而逻辑回归是处理分类问题,这是两者最本质的区别 2.逻辑回归的原理,损失函数,参数更新方式 线性回归的公式: ,此时Y和X是线性关系 逻辑回归则是 ...

最新文章

  1. python可变交换性能优化
  2. 那些为“自主”的研发“
  3. C++ vector容器类型
  4. module.js:549 throw err;
  5. Java Web-网页基础-HTML-URL
  6. FireFox中国管理者的脑袋被驴踢了。
  7. 使用Scapy进行网络扫描
  8. 相较于本地渲染,云渲染用起来感觉怎么样?
  9. 无线路由器设置里的DHCP服务是什么意思
  10. 让机器学会断句:基于词典的Bigram分词算法
  11. Vim 大小写切换快捷键
  12. 恒流恒压线性充电芯片MST4210
  13. 反相畴的基础知识和一篇论文
  14. 《寓言中的经济学》简明纪要 - Part 1
  15. js 控制输入框禁止使用输入法
  16. ios开发工具_7个基本的ios开发人员工具
  17. FDTD学习之偶极子光源的purcell值
  18. VC++钩子使用之全局键盘钩子
  19. 云linux服务器备份6,云服务器 ECS Linux 系统 MySQL 备份的导入导出
  20. python如何截长图_利用 Python + Selenium 实现对页面的指定元素截图(可截长图元素)...

热门文章

  1. Mybatis接口Mapper内的方法为啥不能重载吗?
  2. Java 8 中的流操作-基本使用性能测试
  3. Redis 过期键删除策略
  4. 类与接口(五)java多态、方法重写、隐藏
  5. windows 搭建python 虚拟环境 写程序_Windows下搭建Python虚拟环境
  6. 一次字节面试,被二叉树的层序遍历捏爆了
  7. Kafka的基本介绍和在linux的安装配置
  8. Spring Boot实现监控linux-cpu和内存使用情况,并发送邮件
  9. Spring Cloud(二) 配置Eureka Client
  10. linux 重定向 2gt;gt;,编写我自己的linux shell I / O重定向’gt;’函数