机器学习第十一章--特征选择与稀疏学习
一、子集搜索与评价
我们将属性称为 “特征”(feature),对当前学习任务有用的属性称为 “相关特征”(relevant feature)、没什么用的属性称为 “无关特征”(irrelevant feature).从给定的特征集合中选择出相关特征子集的过程,称为“特征选择”(feature selection).
有两个很重要的原因:减轻维数灾难问题、降低学习任务的难度.
“冗余特征”(redundant feature):所包含的信息能从其他特征中推演出来.冗余特征在很多时候不起作用,去除它们会减轻学习过程的负担.但有时冗余特征会降低学习任务的难度.
“子集搜索”(subset search)::
- “前向”(forward)搜索:初始将每个特征当做一个候选特征子集,然后从当前所有的候选子集中选择出最佳的特征子集;接着在上一轮选出的特征子集中添加一个新的特征,同样地选出最佳特征子集;最后直至选不出比上一轮更好的特征子集。
- “后向”(backward)搜索:初始将所有特征作为一个候选特征子集;接着尝试去掉上一轮特征子集中的一个特征并选出当前最优的特征子集;最后直到选不出比上一轮更好的特征子集。
- “双向”(bidirectional)搜索:将前向搜索与后向搜索结合起来,即在每一轮中既有添加操作也有剔除操作。
“子集评价”(subset evaluation):
给定数据集D,假定D中第i类样本所占的比例为.假定样本属性均为离散型.对属性子集A,假定根据其取值将D分成了V个子集
,每个子集中的样本在A上取值相同,属性子集A的信息增益:


将特征子集搜索机制与子集评价机制相结合,即可得到特征选择方法.
常见的特征选择方法大致可分为三类:过滤式(filter)、包裹式(wrapper)和嵌入式(embedding).
二、过滤式选择
过滤式方法先对数据集进行特征选择,然后再训练学习器.
Relief (Relevant Features)设计了一个“相关统计量”来度量特征的重要性.该统计量是一个向量,其每个分量分别对应于一个初始特征,最终只需指定一个阈值r,然后选择比T大的相关统计量分量所对应的特征即可;也可指定欲选取的特征个数k,然后选择相关统计量分量最大的k个特征.
Relief的关键是如何确定相关统计量.给定训练集{},对每个示例
,,Relief 先在
的同类样本中寻找其最近邻
,称为“猜中近邻”(near-hit),再从
的异类样本中寻找其最近邻
,称为“猜错近邻”(near-miss),然后,相关统计量对应于属性j的分量为
![]()
Relief是为二分类问题设计的,其扩展变体Relief-F能处理多分类问题.其相关统计量对应于属性j的分量为:
![]()
三、包裹式选择
包裹式特征选择直接把最终将要使用的学习器的性能作为特征子集的评价准则.
包裹式特征选择比过滤式特征选择更好,计算开销通常更大.
LVW (Las Vegas Wrapper)在拉斯维加斯方法(Las Vegas metnod)框架下使用随机策略来进行子集搜索,并以最终分类器的误差为特征子集评价准则.
算法描述:

若有运行时间限制,则有可能给不出解.
四、 嵌入式选择与
正则化
嵌入式特征选择是将特征选择过程与学习器训练过程融为一体,两者在同一个优化过程中完成,即在学习器训练过程中自动地进行了特征选择.
给定数据集
我们考虑最简单的线性回归模型,以平方误差为损失函数,则优化目标为
![]()
当样本特征很多,而样本数相对较少时,上式很容易陷入过拟合.为了缓解过拟合问题,可对上式引入正则化项.
若使用
范数正则化,则有“岭回归”(ridge regression)
采用
范数,则有LASSO (Least Absolute Shrinkage andSelection Operator)
范数和
范数正则化都有助于降低过拟合风险,
比
更易于获得“稀疏”(sparse)解,即它求得的w会有更少的非零分量.

L正则化问题的求解可使用近端梯度下降(Proximal Gradient Descent,简称PGD) .具体来说,令表示微分算子,对优化目标
![]()
若f(x可导,且f满足L-Lipschitz条件,即存在常数L>0使得
![]()
则在附近可将f(x)通过二阶泰勒展式近似为

![]()
推广到正则化,加一个正则项求最小值:
![]()
得到每个分量的解:

五、稀疏表示与字典学习
为普通稠密表达的样本找到合适的字典,将样本转化为合适的稀疏表示形式,从而使学习任务得以简化,模型复杂度得以降低,通常称为“字典学习”(dictionary learning)(侧重于学得字典的过程),亦称“稀疏编码”(sparse coding)(侧重于对样本进行稀疏表达的过程).下面不做区分。
给定数据集,字典学习最简单的形式为
![]()
受LASSO的启发,我们可采用变量交替优化的策略来求解式.
首先在第一步,我们固定住字典B,为每个样本找到相应的
:
![]()
在第二步,我们固定住来更新字典B:
![]()
基于逐列更新策略的KSVD:令表示字典矩阵B的第i列,
表示稀疏矩阵A的第i行,上式可重写为

六、压缩感知
现实,常对数据进行压缩,方便处理,但在传递的时候,因为各种情况会出现信息损失,通过压缩感知来解决这个问题
假定我们以远小于奈奎斯特采样定理要求的采样率进行采样,即
这个信号是无法还原出原信号的
但现在假定可以,
压缩感知关注的是如何利用信号本身所具有的稀疏性,从部分观测样本中恢复原信号.
通常认为,压缩感知分为“感知测量”和“重构恢复”这两个阶段.
- “感知测量”关注如何对原始信号进行处理以获得稀疏样本表示,这方面的内容涉及傅里叶变换、小波变换以及1字典学习、稀疏编码等,不少技术在压缩感知提出之前就已在信号处理等领域有很多研究;
- “重构恢复”关注的是如何基于稀疏性从少量观测中恢复原信号,这是压缩感知的精髓,当我们谈到压缩感知时,通常是指该部分.
“限定等距性”(Restricted Isometry Property,简称RIP):
对大小为n * m的矩阵A,若存在常数δk ∈(0,1)使得任意向量s和A的所有子矩阵Ak∈Rn*k有
![]()
则称A满足k限定等距性。通过下面优化近乎完美的从y中恢复出稀疏信号s,进而恢复x:

范数的最小化是一个NP难题,
范数最小化在一定条件下与
最小化共解,则:

该式可以转化为LASSO的等价形式通过近端梯度下降求解,即“基寻踪去噪”。
相关文章:
机器学习第十一章--特征选择与稀疏学习
一、子集搜索与评价 我们将属性称为 “特征”(feature),对当前学习任务有用的属性称为 “相关特征”(relevant feature)、没什么用的属性称为 “无关特征”(irrelevant feature).从给定的特征集合中选择出相关特征子集的过程&…...
dm 到 dm 的 HS 同步部署
一、数据库部署 完成两节点数据库部署并初始化,配置参数如下: 节点 192.168.2.132 192.168.2.133 数据库版本 DM8 DM8 实例名 DM1 DM2 端口号 5236 5236 数据文件路径 /home/dmdba/dmdata /home/dmdba/dmdata 二、 dmhs 部署 1. 部署…...
ShardingSphere、雪花算法、分布式id生成器CosID概述
ShardingSphere 用处:sharding是分片的意思,sphere是球(生态的意思)。用来做分库分表的生态的。一个订单表太大,查询会很慢,要分表,分为3个表,这样查询会快一点,所以有了…...
hive学习(四)
一、分区表的数据导入 1.静态分区(需要手动指定分区字段的值) 直接将文件数据导入到分区表 语法:load data [local] inpath filepath into table tablename partition(分区字段1分区值1, 分区字段2分区值2...); load data [local] inpat…...
UniAD_面向规划的自动驾驶
Planning-oriented Autonomous Driving 面向规划的自动驾驶 https://github.com/OpenDriveLab/UniAD Abstract Modern autonomous driving system is characterized as modular tasks in sequential order, i.e., perception, prediction, and planning. In order to perfor…...
《现代情报》
《现代情报》简介 《现代情报》(原名《情报知识》)杂志是由吉林省科学技术厅主管,吉林省科学技术信息研究所、中国科学技术情报学会联合主办的信息资源管理领域综合性学术期刊。该刊于1980年创刊,每年12期。重点报道服务于国家战略…...
2024年最新上榜的文件加密管理软件
文件加密市场风起云涌,后辈迭出,2024年安企神软件在文件加密管理软件市场中备受瞩目,凭借其强大的功能和全面的保护策略,成功上榜并受到广泛认可。以下是对它的详细介绍: 一、产品概述 安企神软件不仅是一款电脑监控…...
Matplotlib库学习之scatter(模块)
Matplotlib库学习之scatter(模块) 一、简介 Matplotlib 是 Python 中一个强大的绘图库,其中 matplotlib.pyplot.scatter 用于创建散点图。散点图在数据可视化中广泛用于展示两个变量之间的关系。 二、语法和参数 语法 matplotlib.pyplot.scatter(x, y, sNone, c…...
脑网络相似性:方法与应用
摘要 图论方法已被证明是理解、表征和量化复杂大脑网络的有效工具。然而,定量比较两个图形的方法却较少受到关注。在一些网络神经科学应用中,比较大脑网络确实是必不可少的。在这里,本研究讨论了近年来用于比较大脑网络的技术现状、挑战以及…...
【JavaEE】深入MyBatis:动态SQL操作与实战项目实现指南
目录 MyBatis的进阶操作动态SQL<if>标签<trim>标签<where>标签<set>标签<foreach>标签<include>标签 练习表白墙数据准备引⼊MyBatis 和 MySQL驱动依赖配置MySQL账号密码编写后端代码测试 图书管理系统数据库表设计引⼊MyBatis 和MySQL 驱…...
Linux 实操-权限管理:深入了解rwx的作用
😀前言 本篇博文是关于Linux文件权限管理的基本知识和实际操作,希望你能够喜欢 🏠个人主页:晨犀主页 🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是…...
Linux 系统编程 --- day3
目录 1. fileno 2.fdopen 3. 目录操作 3.1 opendir 3.2 readdir 3.3 closedir 3.4 实现 ls 命令的功能 4. chdir (相当于cd命令) 5. getcwd (相当于pwd命令) 6. mkdir 7. rmdir (相当于rm命令&a…...
centos从home分区分配空间到根分区
在安装centos系统时如果采用默认自动分区,则会默认只给根分区分配50G空间,其余多余的会被分配到home分区,而作为家用服务器或仅个人使用的话,为了方便往往根分区会不够用而home分区几乎没使用。 先看下现在的磁盘结构和容量(xfs文…...
设计模式实战:即时通讯应用的设计与实现
系统功能需求 用户管理:支持用户注册、登录、注销、个人信息更新等功能。消息传递:支持即时消息发送、接收、存储和显示,支持文本、图片、语音等多种消息类型。在线状态管理:实时跟踪和显示用户的在线状态。消息通知:在消息到达时发送推送通知给用户。聊天记录管理:支持聊…...
白骑士的C#教学实战项目篇 4.3 Web开发
系列目录 上一篇:白骑士的C#教学实战项目篇 4.2 图形用户界面(GUI)应用 在这一部分,我们将从桌面应用程序扩展到 Web 开发。Web 开发是现代软件开发的重要领域,涵盖了从前端用户界面到后端服务器逻辑的完整堆栈。在这…...
【数据分析】(交互) 延迟互信息(熵、概率密度、高斯核、带宽估计)
文章目录 一、互信息基础二、延迟互信息2.1 交互延迟互信息三、时间序列互信息中的概率计算(高斯核密度估计)四、python 示例补充 1:熵熵的定义熵的性质熵的单位和对数底数熵的最大值高熵、低熵的分辨补充 2:概率密度 和 高斯核概率密度高斯核拓展3 :核密度函数带宽估计在…...
html转vue项目
HTML是一种用于构建网页的标记语言,而Vue是一种用于构建用户界面的JavaScript框架。在HTML中使用Vue可以提供更加灵活和动态的用户界面功能。本文将介绍如何将HTML代码转换为Vue,并提供具体的代码示例。 首先,我们需要在项目中引入Vue框架。…...
.NET系列 定时器
net一共4种定时器 System.Windows.Forms.Timer 类型 》》WinForm专用System.Windows.Threading.DispatcherTime类型》》WPF专用System.Threading.Timer类型》》》它使用 ThreadPool 线程来执行定时操作System.Timers.Timer类型 》》这种很老了。 它使用基于底层计时…...
【Golang】火焰图空白部分是什么?
起因 被同事灵魂拷问:图中这块空白是什么东西? 豆包回答说是数据采样不完整,特定函数或代码段未被调用之类的原因,感觉都不太合理。 之前看过一篇文章说:Heap Profiling的采样是无时无刻不在发生的,执行…...
Web框架 --- 解析Web请求 [FromBody] [FromQuery] [FromRoute] [FromHeader]
Web框架 --- 解析Web请求 [FromBody] [FromQuery] [FromRoute] [FromHeader] [FromBody][FromQuery][FromRoute] or [FromUri][FromHeader] [FromBody] FromBody 属性在使用 application/json 内容类型并在正文中传递 JSON 时使用通常情况下,FromBody 在一个操作中只…...
【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
HBuilderX安装(uni-app和小程序开发)
下载HBuilderX 访问官方网站:https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本: Windows版(推荐下载标准版) Windows系统安装步骤 运行安装程序: 双击下载的.exe安装文件 如果出现安全提示&…...
免费数学几何作图web平台
光锐软件免费数学工具,maths,数学制图,数学作图,几何作图,几何,AR开发,AR教育,增强现实,软件公司,XR,MR,VR,虚拟仿真,虚拟现实,混合现实,教育科技产品,职业模拟培训,高保真VR场景,结构互动课件,元宇宙http://xaglare.c…...
【threejs】每天一个小案例讲解:创建基本的3D场景
代码仓 GitHub - TiffanyHoo/three_practices: Learning three.js together! 可自行clone,无需安装依赖,直接liver-server运行/直接打开chapter01中的html文件 运行效果图 知识要点 核心三要素 场景(Scene) 使用 THREE.Scene(…...
【JavaEE】万字详解HTTP协议
HTTP是什么?-----互联网的“快递小哥” 想象我们正在网上购物:打开淘宝APP,搜索“蓝牙耳机”,点击商品图片,然后下单付款。这一系列操作背后,其实有一个看不见的“快递小哥”在帮我们传递信息,…...
docker容器互联
1.docker可以通过网路访问 2.docker允许映射容器内应用的服务端口到本地宿主主机 3.互联机制实现多个容器间通过容器名来快速访问 一 、端口映射实现容器访问 1.从外部访问容器应用 我们先把之前的删掉吧(如果不删的话,容器就提不起来,因…...
鸿蒙APP测试实战:从HDC命令到专项测试
普通APP的测试与鸿蒙APP的测试有一些共同的特征,但是也有一些区别,其中共同特征是,它们都可以通过cmd的命令提示符工具来进行app的性能测试。 其中区别主要是,对于稳定性测试的命令的区别,性能指标获取方式的命令的区…...


