当前位置: 首页 > news >正文

机器学习 | 线性判别分析(Linear Discriminant Analysis)

1 机器学习中的建模

1.1 描述性建模

以方便的形式给出数据的主要特征,实质上是对数据的概括,以便在大量的或有噪声的数据中仍能观察到重要特征。重在认识数据的主要概貌,理解数据的重要特征。

  • Task:聚类分析,数据降维,流形学习,密度估计,异常分析,可视化

1.2 预测性建模

以函数的形式给出感兴趣量(预测量)与可观测量之间的数量关系,实质上是根据观测到的对象特征来预测对象的其他特征。重在把握协变关系,据此进行预测。

  • Task:分类(类别预测),回归(数值预测),评分(排名预测)
1.2.1 预测性建模方法

概率方法:生成式建模方法,借助训练数据对同类数据的生成机制(概率分布)进行估计,基于概率关系对变量取值进行概率预测。把模式视为随机变量的抽样,利用统计决策理论(贝叶斯统计)成熟的判决准则与方法,对模式样本进行分类

如:贝叶斯分类器、贝叶斯网络(概率图模型)、高斯混合模型、隐马尔可夫模型、受限玻尔兹曼机、生成对抗网络,变分自动编码器

代数方法:判别式建模方法,借助训练数据对观测量和预测量的函数关系进行直接建模,基于函数关系对变量取值进行数值预测。利用向量空间的直观概念,使用代数方程方法,对模式进行分类

如:KNN,感知机,判别分析,决策树,随机森林,支持向量机、逻辑回归,神经网络

1.3 判别函数

1.3.1 线性可分概念与线性分类算法

一个分类问题是否属于线性可分,取决于是否有可能找到一个点、直线、平面或超平面来分离开两个相邻的类别。如果每个类别样本的分布范围本身是全连通的单一凸集,且互不重叠,则这两个类别一定是线性可分的,如图所示。线性分类算法主要有线性判别函数、Fisher判别分析、单层感知器、逻辑回归等

image.png

1.3.2 判别函数的定义

直接用来对模式进行分类的决策函数,若分属于ω1,ω2两类的n维模式在空间中的分布区域,可以用一代数方程d(X) =0决定的超平面作为分隔面,两类样本分布在分隔面的两侧,那么就称d(X)为判别函数(discriminant function)或称决策函数(decisionfunction)。代数方程d(X) =0表示的是n维空间的(n-1)维判决面 {或超平面(hyperplane)或超曲面(hypersurface) ,视d(x)形式而定}。

Note:这里的模式或许可以直接理解成数学里的自变量。

为了清晰地了解d(x)的含义,应该画出判别函数值d(x)这一轴,在没有画出的时候,就在自变量(模式)空间中画出d(x)取正负值的区域——这就是所谓判别面的正侧、负侧。

image.png|375

1.3.3 确定判别函数的两个因素
  1. 判决函数d(X)的函数形式:它可以是特征的线性非线性的函数。
  2. 判决函数d(X)的系数:用所给的模式样本,通过优化准则确定。

主要关注线性判别函数,一个一般的n元线性函数应该具有什么的性质才适合做两分类和多分类的判别函数

2 线性判别函数

2.1 两类问题

在两类别情况下,判别函数 g (x) 具有以下性质:

image.png|475

这是二维情况下判别由判别边界分类。情况如图:

image.png
在n维情况下:
image.png|475

2.2 区别分类与回归两个概念

回顾:一元/多元线性回归(Multivariate linear regression)

image.png|475

w参数学习/训练出来之后,所确定的g(x)模型也叫预测模型。

若用g(x)预测的是离散值,此类学习任务称为“分类(Classification)” ;若用g(x)预测的是连续值,此类学习任务称为“回归(regression)”。由于这里g(x)是线性的,故称为多元线性回归

离散值预测->分类, 连续值预测->回归

2.3 多类问题

对于多类问题,模式有 ω1 ,ω2 , … , ωm 个类别。可分三种情况讨论:

2.3.1 ω i / ω ˉ i \omega_i / \bar{\omega}_i ωi/ωˉi多类情况1 (是非两分法)

每一模式类与其他模式类间可用单个判别平面把一个类分开。这种情况,M类可有M个判别函数,且具有以下性质:
image.png|525
理解:
每一类别可用单个判别边界与其他类别分开。若一模式X属于ω1,则由图可清楚看出:这时g1(x) >0而g2(x) <0 , g3(x) <0 。 ω1 类与其他类之间的边界由g1(x)=0确定。模式属于哪一类,对应的那一类的判别函数值就大于0。

image.png|475
特殊情况:
image.png|475

2.3.2 ω i / ω j \omega_i / {\omega}_j ωi/ωj多类情况2(成对两分法)

每两个模式类间可用判别平面分开(即模式类成对可分)。

image.png|525

2.3.3 多类情况3: ω i / ω j \omega_i / {\omega}_j ωi/ωj 成对两分法(无IR区)

image.png|500

多类情况3下的一个示例:不存在IR区域,IR不确定区没有了,所以这种是最好的情况。

image.png|375

2.4 线性判别函数的性质

  1. 模式空间与加权空间:由于假设权向量W与模式向量X的内积为零(g(x)=0),故W与分界面H正交

image.png

相关文章:

机器学习 | 线性判别分析(Linear Discriminant Analysis)

1 机器学习中的建模 1.1 描述性建模 以方便的形式给出数据的主要特征&#xff0c;实质上是对数据的概括&#xff0c;以便在大量的或有噪声的数据中仍能观察到重要特征。重在认识数据的主要概貌&#xff0c;理解数据的重要特征。 Task&#xff1a;聚类分析&#xff0c;数据降…...

TypeScript-数组、函数类型

1.数组类型 1.1类型 方括号 let arry:number[][5,2,0,1,3,1,4] 1.2 数组泛型 let arry2:Array<number>[5,2,0,1,3,1,4] 1.3接口类型 interface makeArryRule{[index:number]:number }let arry3:makeArryRule[5,2,0,1,3,1,4] 1.4伪数组 说明&#xff1a; argument…...

Python深度学习034:cuda的环境如何配置

文章目录 1.安装nvidia cuda驱动CMD中看一下cuda版本:下载并安装cuda驱动2.创建虚拟环境并安装pytorch的torch_cuda3.测试附录1.安装nvidia cuda驱动 CMD中看一下cuda版本: 注意: 红框的cuda版本,是你的显卡能装的最高的cuda版本,所以可以选择低于它的版本。比如我的是11…...

【论文笔记】Text2QR

论文&#xff1a;Text2QR: Harmonizing Aesthetic Customization and Scanning Robustness for Text-Guided QR Code Generation Abstract 二维码通常包含很多信息但看起来并不美观。stable diffusion的出现让平衡扫描鲁棒性和美观变为可能。 为了保证美观二维码的稳定生成&a…...

【ReadPapers】A Survey of Large Language Models

LLM-Survey的llm能力和评估部分内容学习笔记——思维导图 思维导图 参考资料 A Survey of Large Language Models论文的github仓库...

站群CMS系统

站群CMS系统是一种用于批量建立和管理网站的内容管理系统&#xff0c;它能够帮助用户快速创建大量的网站&#xff0c;并实现对这些网站的集中管理。以下是三个在使用广泛的站群CMS系统&#xff0c;它们各具特色&#xff0c;可以满足不同用户的需求。 1. Z-BlogPHP Z-BlogPHP是…...

landsat8数据产品说明

1、下载数据用户手册 手册下载网址&#xff0c;搜索landsat science关键词&#xff0c;并点击到官网下载。 2、用户手册目录 3、landsat8数据产品说明 具体说明在手册的第四章&#xff0c;4.1.4数据产品章节&#xff0c;具体描述如下&#xff1a; 英文意思&#xff1a; L8 的…...

Golang 内存管理和垃圾回收底层原理(二)

一、这篇文章我们来聊聊Golang内存管理和垃圾回收&#xff0c;主要注重基本底层原理讲解&#xff0c;进一步实战待后续文章 垃圾回收&#xff0c;无论是Java 还是 Golang&#xff0c;基本的逻辑都是基于 标记-清理 的&#xff0c; 标记是指标记可能需要回收的对象&#xff0c…...

OpenHarmony:全流程讲解如何编写ADC平台驱动以及应用程序

ADC&#xff08;Analog to Digital Converter&#xff09;&#xff0c;即模拟-数字转换器&#xff0c;可将模拟信号转换成对应的数字信号&#xff0c;便于存储与计算等操作。除电源线和地线之外&#xff0c;ADC只需要1根线与被测量的设备进行连接。 一、案例简介 该程序是基于…...

计算机学生求职简历的一些想法

面试真的是一件非常难的事情&#xff0c;因为在短短的半小时到一个小时&#xff0c;来判断一个同学行不行&#xff0c;其实是很不全面的。作为一个求职的同学应该怎么办呢&#xff1f;求职的同学可以提前做一些准备&#xff0c;其中比较重要的要数简历的编写。 简历的作用 简…...

网工内推 | 售前专场,需熟悉云计算技术,上市公司,提成高

01 神州数码 招聘岗位&#xff1a;售前工程师 职责描述&#xff1a; 1.负责所在区域华为IT产品线&#xff08;服务器、存储、云、虚拟化&#xff09;的售前技术支持工作&#xff0c;包括客户交流、方案编写、配置报价、投标支持、测试等&#xff1b; 2.与厂商相关人员建立和保…...

excel匹配替换脱敏身份证等数据

假如excel sheet1中有脱敏的身份证号码和姓名&#xff0c;如&#xff1a; sheet2中有未脱敏的数据数据 做法如下&#xff1a; 1、在sheet2的C列用公式 LEFT(A2,6)&REPT("*",8)&RIGHT(A2,4) 做出脱敏数据&#xff0c;用来与sheet1的脱敏数据匹配 2、在sheet…...

[技术笔记] Flash选型之基础知识芯片分类

1、按照接口分类 分为 Serial串口Flash 和 Parallel并口Flash&#xff1b; 市场大量使用Serial Flash&#xff1b;价格便宜&#xff1b;已满足系统对数据读写速度的要求&#xff1b; Serial Flash已经可以代表 NOR Flash&#xff1b; 小知识&#xff1a; 1&#xff09;在…...

Jenkins常用插件安装及全局配置

Jenkins常用插件安装及全局配置 前言 ​ Jenkins是一个流行的持续集成工具&#xff0c;通过安装适用的插件&#xff0c;可以扩展Jenkins的功能&#xff0c;并与其他工具和系统集成。本文将介绍一些常用的Jenkins插件以及安装和配置的步骤。通过安装和配置这些常用插件&#xf…...

C++初学者:如何优雅地写程序

我喜欢C语言的功能强大&#xff0c;简洁&#xff0c;我也喜欢C#的语法简单&#xff0c;清晰&#xff0c;写起来又方便好用。 一、为什么不用C语言写程序。 C语言用来做题目&#xff0c;考试研究是很方便的&#xff0c;但是用来写程序做软件&#xff0c;你就会发现&#xff0c…...

图论- 最小生成树

一、最小生成树-prim算法 1.1 最小生成树概念 一幅图可以有很多不同的生成树&#xff0c;比如下面这幅图&#xff0c;红色的边就组成了两棵不同的生成树&#xff1a; 对于加权图&#xff0c;每条边都有权重&#xff08;用最小生成树算法的现实场景中&#xff0c;图的边权重…...

LeetCode刷题记(一):1~30题

1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现。 你可以…...

芒果YOLOv5改进89:卷积SPConv篇,即插即用,去除特征图中的冗余,FLOPs 和参数急剧下降,提升小目标检测

芒果专栏 基于 SPConv 的改进结构,改进源码教程 | 详情如下🥇 👉1. SPConv 结构、👉2. CfSPConv 结构 💡本博客 改进源代码改进 适用于 YOLOv5 按步骤操作运行改进后的代码即可 即插即用 结构。博客 包括改进所需的 核心结构代码 文件 YOLOv5改进专栏完整目录链接:…...

Linux:详解TCP报头类型

文章目录 温习序号的意义序号和确认序号报文的类型 TCP报头类型详解ACK: 确认号是否有效SYN: 请求建立连接; 我们把携带SYN标识的称为同步报文段FIN: 通知对方, 本端要关闭了PSH: 提示接收端应用程序立刻从TCP缓冲区把数据读走RST: 对方要求重新建立连接; 我们把携带RST标识的称…...

【Leetcode】top 100 二分查找

35 搜索插入位置 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。 基础写法&#xff01;&#xff01;&#xff01;牢记…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外&#xff0c;K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案&#xff0c;全安装在K8S群集中。 具体可参…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

JVM垃圾回收机制全解析

Java虚拟机&#xff08;JVM&#xff09;中的垃圾收集器&#xff08;Garbage Collector&#xff0c;简称GC&#xff09;是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象&#xff0c;从而释放内存空间&#xff0c;避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量&#xff0c;这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中&#xff0c;提示一个依赖外部头文件的cpp源文件需要同步&#xff0c;点…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状&#xff1a;装配工作依赖人工经验&#xff0c;装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书&#xff0c;但在实际执行中&#xff0c;工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...

Linux 中如何提取压缩文件 ?

Linux 是一种流行的开源操作系统&#xff0c;它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间&#xff0c;使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的&#xff0c;要在 …...

MacOS下Homebrew国内镜像加速指南(2025最新国内镜像加速)

macos brew国内镜像加速方法 brew install 加速formula.jws.json下载慢加速 &#x1f37a; 最新版brew安装慢到怀疑人生&#xff1f;别怕&#xff0c;教你轻松起飞&#xff01; 最近Homebrew更新至最新版&#xff0c;每次执行 brew 命令时都会自动从官方地址 https://formulae.…...

【深度学习新浪潮】什么是credit assignment problem?

Credit Assignment Problem(信用分配问题) 是机器学习,尤其是强化学习(RL)中的核心挑战之一,指的是如何将最终的奖励或惩罚准确地分配给导致该结果的各个中间动作或决策。在序列决策任务中,智能体执行一系列动作后获得一个最终奖励,但每个动作对最终结果的贡献程度往往…...