机器学习常识 11: logistic 回归

news2024/12/23 3:32:35

摘要: logistic 回归是使用超平面将空间分开, 一边是正样本, 另一边是负样本. 因此, 它是一个线性分类器.

1. 线性分类器

如图 1 所示, 若干样本由两个特征描述, 对应于二维平面上的点. 它们为正样本或负样本, 由不同颜色表示. 现在需要使用一条直线将正、负样本分开. 这样, 对于新的样本, 就看它落在直线的哪一边, 由此判断正负. 这条直线就是线性分类器. 显然, 对于更高维的数据, 其线性分类器就是一个超平面.

图 1. 线性分类器

2. 方案

  • 输入: 数据矩阵 X = ( x i j ) n × m ∈ R n × m \mathbf{X} = (x_{ij})_{n \times m} \in \mathbb{R}^{n \times m} X=(xij)n×mRn×m, 二分类标签向量 Y = ( y i ) n × 1 ∈ { 0 , 1 } n \mathbf{Y} = (y_i)_{n \times 1} \in \{0, 1\}^n Y=(yi)n×1{0,1}n.
  • 输出: m m m 维空间上的一个超平面 w x = 0 \mathbf{wx} = 0 wx=0, 其中 w , x ∈ R m \mathbf{w}, \mathbf{x} \in \mathbb{R}^m w,xRm.
  • 优化目标: max ⁡ ∏ i = 1 n h ( x i ) y i ( 1 − h ( x i ) ) 1 − y i \max \prod_{i = 1}^n h(\mathbf{x}_i)^{y_i} (1 - h(\mathbf{x}_i))^{1 - y_i} maxi=1nh(xi)yi(1h(xi))1yi.

其中 x i = ( x i 1 , x i 2 , x i m ) \mathbf{x}_i = (x_{i1}, x_{i2}, x_{im}) xi=(xi1,xi2,xim), h ( x i ) = 1 1 + e − w T x i h(\mathbf{x}_i) = \frac{1}{1 + e^{-\mathbf{w}^\mathsf{T} \mathbf{x}_i}} h(xi)=1+ewTxi1 为 sigmoid 函数, 它将取值范围为 ( − ∞ , + ∞ ) (-\infty, +\infty) (,+) w T x i \mathbf{w}^\mathsf{T} \mathbf{x}_i wTxi 压缩到了取值范围为 ( 0 , 1 ) (0, 1) (0,1) h ( x i ) h(\mathbf{x}_i) h(xi).

  • y i = 0 y_i = 0 yi=0 (为负例) 时, 优化目标中的 ( 1 − h ( x i ) ) (1 - h(\mathbf{x}_i)) (1h(xi)) 起作用, 即预测值越小, 相应项越大;
  • y i = 1 y_i = 1 yi=1 (为正例) 时, 优化目标中的 h ( x i ) h(\mathbf{x}_i) h(xi) 起作用, 即预测值越大, 相应项越大.

3. 方案说明

  • 方案和问题定义相同. 这是因为问题定义成这样, 方案也就固定了.
  • 使用 sigmoid 函数的原因, 以及极大似然估计的推导, 不包含在本贴中.
  • 每个点对优化目标都有贡献 (后面讲到 SVM 会回顾这里). 如果远离分割面而且分类正确, 则相应项接近 1; 如果远离分割面而且分类错误, 则相应项接近 0.
  • 极大似然估计, 在机器学习中频繁被用到. 你值得拥有!

4. 方案求解

  • 连乘用 log ⁡ \log log 变成连加, log ⁡ \log log 是一个单调函数, 不影响最大化目标. 这也是常用招数.

5. 与线性回归的联系与区别

联系:

  • 都是线性模型, logistic 回归还被称为广义线性模型.
    区别:
  • 这个是分类, 要把两个类别的点尽可能分开. 直观上来看, logistic 回归比线性回归靠谱. 不过二分类任务的输出只有两个值, 而线性回归的输出是一个实数值, 后者更难把握.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/595668.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

比ureport好用的报表工具-VeryReport报表工具

作为一名报表开发人员,你一定知道,一个好用的报表工具是多么重要。它可以让你更快、更准确地完成报表开发任务,并且帮助你更好地展现数据。今天我想向大家介绍一款非常优秀的报表工具——VeryReport报表工具。 编辑搜图 请点击输入图片描述&…

STM32 启动文件选择

1. STM32F1xx 系列 (F1) STM32F100xB/C: startup_stm32f100xb.s STM32F100xD/E: startup_stm32f100xe.s STM32F101x6/8/B: startup_stm32f101x6.s, startup_stm32f101x8.s, startup_stm32f101xb.s STM32F101xE/F/G: startup_stm32f101xe.s, …

线程安全与互斥锁(访问控制)

线程安全问题 因为多个线程是共享地址空间的,也就是很多资源都是共享的。 优点:通信方便缺点:缺乏访问控制 因为一个线程的操作问题,给其他线程造成了不可控,或者引起崩溃,异常,逻辑不正确等这种现象:线程安全。 创…

基于Java实现农产品交易平台的设计与实现_kaic

【摘要】农业是我国国民经济的重要组成部分,随着信息化的普及,4G网络、光纤以及5G网络也日益完善,农业信息化的发展成为了必然。同时,由于本年疫情原因,导致农作物积压销售,甚至腐烂造成不必要的浪费&#…

chatgpt赋能python:Python信息抽取——帮您更好地利用数据

Python信息抽取——帮您更好地利用数据 什么是Python信息抽取? Python信息抽取是指利用Python编写程序,从大量的非结构化数据中提取有用的信息的技术。这些数据可以是网页、文本文件、PDF等各种格式,而Python信息抽取则可以帮助您快速、准确…

分享一个case when then when then end的sql语句编写用法

目录 写作背景我和若依的前一部分相同思路我的后续解决思路(不建议)若依后续解决思路(建议)若依后续解决思路举例 写作背景 平时我用case when then else end的机会也不多,之前用它来做对select结果进行计算&#xff…

chatgpt赋能python:Python代码20行,助力千万SEO从业者快速实现网站分析

Python代码20行,助力千万SEO从业者快速实现网站分析 SEO是现代数字营销的核心战略之一。对于千万从业者而言,网站分析是SEO实践的重要一环。而Python作为一门高效、简洁的编程语言,其丰富的第三方库和易学易用的语法使其成为网站分析的强大工…

【MySQL】从0到1打开数据库管理

目录 前言: 一.认识MySQL 二.安装MySQL数据库 三、启动和停止MySQL服务 3.1启动服务的两种方式 3.2停止服务的两种方式 四.链接客户端 4.1使用自带的命令行窗口 4.2使用系统自带的命令窗口 五.MySQL是存储数据的模型 六.SQL语言 结尾: 前言&a…

设计二:51单片机外部中断控制

目录 一、设计内容 二、中断相关知识 1、51单片机中断源 2、中断系统特殊功能寄存器 3、中断函数与函数调用区别 三、仿真原理图 四、程序设计 五、仿真结果 六、思考题 作者有话说 一、设计内容 本次设计使用2个按键,在无按键按下时,最下面一…

chatgpt赋能python:Python代码50行:如何使用Python进行SEO分析

Python代码50行:如何使用Python进行SEO分析 随着互联网的发展,Search Engine Optimization(SEO)已经成为企业网络营销策略中至关重要的一环。而Python作为一种全能的编程语言,已经逐渐成为许多SEO工程师的首选工具。本…

chatgpt赋能python:Python修改List的教程

Python修改List的教程 当涉及到Python编程时,对于处理和管理数据,List是一个非常常见和有用的数据结构。像大多数数据结构一样,有时需要对List进行修改,以便更好地满足程序的需求。因此,本文将向您展示如何使用Python…

数据结构与算法09:二叉树

目录 【树】 【二叉树】 二叉树的遍历 Go代码实现 二叉树的复杂度分析 【二叉搜索树】 Go代码实现 【每日一练:移除元素】 【树】 什么是树?这个不用解释了吧,马路两边种的都是树。数据结构里面的“树”和现实生活中的树类似&#…

chatgpt赋能python:Python会动的图形:如何让你的网站活力四射

Python会动的图形:如何让你的网站活力四射 如果你想让你的网站更具生命力、吸引力和互动性,一种非常有效的方式是使用动态图形。而Python有许多强大的库可以帮助你实现这一目标。在本篇文章中,我们将讨论Python会动的图形的好处、如何实现和…

过滤器JavaWeb:Filter与拦截器Spring:Intercepter

过滤器与拦截器若同时存在,先执行过滤器的放行前,再执行整个拦截器,最后再执行过滤器的放行后 过滤器会拦截所有资源(包括静态资源),拦截器只会拦截Spring环境的资源 Filter的使用 1、创建一个类implement…

深蓝学院C++基础笔记 第 1 章 C++初探

第 1 章 C初探 1&#xff0e;从Hello World 谈起 Hello World: #include <iostream> int mian() { std::cout << "Hello World!" << std::endl; }函数: 一段能被反复调用的代码&#xff0c;可以接收输入&#xff0c;进行处理并(或)产生输出-返回…

Postgres vs MySQL

主要区别及示例 简而言之&#xff0c;Postgres 和 MySQL 之间的主要区别实际上归结为主索引和辅助索引的实现方式以及数据的存储和更新方式。 让我们进一步探讨这个问题。 但首先... 基础知识 索引是一种数据结构&#xff08;主要是 B 树&#xff09;&#xff0c;允许通过…

DAY01_MySQL基础数据类型navicat使用DDL\DML\DQL语句练习

目录 1 数据库相关概念1.1 数据库1.2 数据库管理系统1.3 常见的数据库管理系统1.4 SQL 2 MySQL2.1 MySQL安装2.1.1 安装步骤 2.2 MySQL配置2.2.1 添加环境变量2.2.2 MySQL登录2.2.3 退出MySQL 2.3 MySQL数据模型2.4 MySQL目录结构2.5 MySQL一些命令2.5.1 修改默认账户密码2.5.2…

Linux 计划任务(at与crontab)

一次性计划任务 at Linux 中的【 at 】 命令是用来创建一次性计划任务的&#xff0c; at 命令有一个服务 atd 以后台的模式运行&#xff0c;通过检查当前的时间来决定是 否运行 " 计划 " &#xff0c;默认情况下&#xff0c; atd 服务每 60 秒检 查一次&#x…

【Web服务应用】Nginx服务

Nginx服务 一、Nginx概述1.1Nginx特点1.2Nginx作用1.3Nginx与Apache的差异 二、Nginx进程模型三、编译安装Nginx3.1Nginx服务的检查、启动、停止&#xff0c;重载3.2平滑升级3.3把nginx进程加入到系统服务当中 四、Nginx服务的主配置文件nginx.conf4.1补充什么是IO多路复用4.2根…

R语言:移动平均计算及绘图

问题描述 现在有一个分日期记录DAU的数据&#xff0c;现在需要绘制其360,180,90,30,7日移动平均值&#xff0c;来观测消除了波动干扰的DAU趋势 (实际移动在股价趋势图上非常常见) 原始数据格式如下&#xff1a; day &#xff08;character&#xff09; dau &#xff08;int…