机器学习4-PCA降维

1 降维

在数据处理过程中,会碰到维度爆炸,维度灾难的情况,为了得到更精简更有价值的信息,我们需要进一步处理,用的方法就是降维。

降维有两种方式:特征抽取、特征选择

  • 特征抽取:就是特征映射,它的思想是把高纬空间的数据映射到低维空间,比如PCA降维、基于神经网络的降维
  • 特征选择:
    • 过滤式(打分机制):过滤,指的是通过某个阈值进行过滤,比如经常会看到但可能并不会去用的,根据方差、信息增益、互信息、相关系数、卡方检验、F检验来选择特征。

      (什么是互信息?在某个特定类别出现频率高,但其他类别出现频率比较低的词条与该类的互信息比较大。通常互信息作为特征词和类别之间的测度,如果特征词属于该类的话,他们的互信息就大)

      image.png

    • 包裹式:每次迭代产生一个特征子集,评分

    • 嵌入式:先通过机器学习模型训练来对每个特征得到一个权重值,接下来和过滤式相似,通过设定某个阈值来筛选特征。区别在于,嵌入式采用机器学习训练,过滤式采用统计特征

    • 过滤式方法运用统计指标来为每个特征打分并筛选特征,其聚焦于数据本身的特点。其优点是计算快,不依赖与具体的模型,缺点是选择的统计指标不是为特定模型定制的,因而最后的准确率可能不高,而且因为进行的是单变量统计检验,没有考虑特征间的相互关系

    • 包裹式方法使用模型来筛选特征,通过不断地增加或删除特征,在验证集上测试模型准确率,寻找最优的特征子集。包裹式方法因为有模型的直接参与,因而通常准确性较高,但是因为每变动一个特征都要重新训练模型,因而计算开销大,其另一个缺点是容易过拟合

    • 嵌入式方法利用了模型本身的特性,将特征选择嵌入到模型的构建过程中。典型的如Lasso和决策树模型等。准确率较高,计算复杂度介于过滤式和包裹式方法之间,但缺点是只有部分模型有这个功能

Principal Components Analysis 主成分分析在压缩消除冗余和数据噪音消除等有广泛应用

2 特征值和特征向量

A ξ = λ ξ A\xi=\lambda\xi Aξ=λξ

首先要理解矩阵线性变换,即矩阵乘法:矩阵乘法对应了一个变换,是把任意一个向量变成另一个方向或长度都大多不同的新向量。在变换过程中,原向量主要发生旋转、伸缩变化。如果矩阵对某一向量或某些向量只发生伸缩变换,不对这些向量产生旋转效果,那么这些向量就称为这个矩阵的特征向量,伸缩的比例就是特征值

在数据挖掘中,就会直接用特征值来描述对应特征向量方向上包含的信息量,而某一特征值除以所有特征值的和得到的值:该特征向量的方差贡献率。(在该维度下蕴含的信息的比例)

经过特征向量变换下的数据称为变量的主成分,当前m各主成分累计的方差贡献率达到85%以上就保留这m个的主成分数据,实现对数据进行降维的目的。

3 PCA的目标

PCA的目标是实现最小投影距离,最大投影方差。降维后不同维度的相关性为0。(也就是向量之间正交)

image.png

显然数据离散性最大,代表数据在所投影的维度有越高的区分度,这个区分度就是信息量。

应该考虑新的坐标轴,将坐标轴进行旋转就能正确降维,这个旋转的操作就要用到线性变换—奇异值分解

image.png

通过矩阵A对坐标系X进行旋转,经过一些数学推导,其实就可以得知,特征值对应的特征向量就是理想中想取得的正确坐标轴,而特征值就等于数据在旋转后的坐标上对应维度的方差(沿对应的特征向量的数据的方差)。而A其实即为我们想求得的那个降维特征空间,Y则使我们想要的降维后的数据。

4 PCA过程

4.1 中心化

采用了中心化,均值为0,如果不进行中心化,可能第一主成分的方向有误

image.png

这里可以看出主成分分析的目的是最小化投影距离,最大化投影方差。如果不中心化就达不到上述目的。

image.png

4.2 标准化数据

为什么要标准化,因为等下要算特征值和特征向量,特征值对应的特征向量就是理想中想取得的正确坐标轴,而特征值就等于数据在变换后的坐标上对应维度的方差(沿对应的特征向量的数据的方差)。

考虑这样一个例子,一个特征表示对象的长度(米为单位),而第二个特征表示对象的宽度(厘米为单位)。如果数据没有被标准化,那么最大方差及最大特征向量将隐式地由第一个特征定义。

4.3 算协方差矩阵

为什么要算协方差矩阵?我们之前的目的是在降维后的每一维度上,方差最大。而方差最大,则容易想到的就是协方差矩阵,去中心化后,协方差矩阵的对角线上的值正好就是各个数据维度的方差。原始数据的协方差矩阵X【n * n】,对应的就是降维后的数据的方差。而我们的目的,这是使方差最大,这就又想到另一个概念,迹(trace),因为迹是对角线上所有元素之和,则协方差矩阵的迹,就是方差之和,这样我们就可以构建损失函数,即argmax(协方差矩阵X的迹)

4.4 过程

  1. 首先设新的坐标系为W【n×n】

[ w 1 , w 2 , w 3 , . . . , w n ] [w_1,w_2,w_3, ...,w_n] [w1,w2,w3,...,wn]

	显然w为标准正交基

∣ ∣ w ∣ ∣ 2 = 1 , w i T w j = 0 ||w||_2 =1, w_i^Tw_j=0 ∣∣w2=1,wiTwj=0

  1. 在新的坐标系的投影为

    Z = W T X Z=W^TX Z=WTX

    其中Z为{z1,z2,z3,…,zn}

  2. 向量Xi在w上的投影坐标可以表示为

    ( x i , w ) = x i T w (x_i,w)=x_i^Tw (xi,w)=xiTw

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

探秘沃尔什-哈达玛变换(WHT)原理

沃尔什-哈达玛变换(WHT)起源 起源与命名(20世纪早期) 数学基础:该变换的理论基础由法国数学家雅克哈达玛(Jacques Hadamard)在1893年提出,其核心是哈达玛矩阵的构造。扩展与命名&…

使用 vxe-table 导出 excel,支持带数值、货币、图片等带格式导出

使用 vxe-table 导出 excel,支持带数值、货币、图片等带格式导出,通过官方自动的导出插件 plugin-export-xlsx 实现导出功能 查看官网:https://vxetable.cn gitbub:https://github.com/x-extends/vxe-table gitee:htt…

uniapp实现的个人中心页面(仿小红书)

采用 uniapp 实现的一款仿小红书个人中心页面模板,支持vue2、vue3, 同时适配H5、小程序等多端多应用。 简约美观大方 可到插件市场下载尝试: https://ext.dcloud.net.cn/plugin?id22516 示例

步进电机软件细分算法解析与实践指南

1. 步进电机细分技术概述 步进电机是一种将电脉冲信号转换为角位移的执行机构,其基本运动单位为步距角。传统步进电机的步距角通常为 1.8(对应 200 步 / 转),但在高精度定位场景下,这种分辨率已无法满足需求。细分技术…

tauri-plugin-shell插件将_blank的a标签用浏览器打开了,,,解决办法

不要使用这个插件,这个插件默认会将网页中a标签为_blank的使用默认浏览器打开,但是这种做法在我的程序里不是很友好,我需要自定义这种行为,当我点击我自己的链接的时候,使用默认浏览器打开,当点击别的链接的…

ESP8266 NodeMCU 与 Atmega16 微控制器连接以发送电子邮件

NodeMCU ESP8266 AVR 微控制器 ATmega16 的接口 Atmega16 是一款低成本的 8 位微控制器,比以前版本的微控制器具有更多的 GPIO。它具有所有常用的通信协议,如 UART、USART、SPI 和 I2C。由于其广泛的社区支持和简单性,它在机器人、汽车和自动化行业有广泛的应用。 Atmega1…

C++查看动态库导出哪些函数以及动态库导出形式

1、查看动态库导出哪些函数 1.1、在 Windows 和 Linux 上,可以使用不同的方法来查看动态库(.dll 或 .so)导出的函数 Windows:使用 dumpbin:Windows 提供了 dumpbin 工具(Visual Studio 自带)&…

【使用hexo模板创建个人博客网站】

使用hexo模板创建个人博客网站 环境准备node安装hexo安装ssh配置 使用hexo命令搭建个人博客网站hexo命令 部署到github创建仓库修改_config.yml文件 编写博客主题扩展 环境准备 node安装 进入node官网安装node.js 使用node -v检查是否安装成功 安装成功后应该出现如上界面 …

【Linux】http 协议

目录 一、http协议 (一)http 协议的概念 (二)URL的组成 (三)urlencode 和 urldecode 二、http 的协议格式 (一)http 请求方法 (二)http 响应状态码 &a…

什么是时序数据库?有哪些时序数据库?常见的运用场景有哪些?

时序数据库 什么是时序数据库? 时序数据库(Time Series Database, TSDB)是专门针对时间序列数据(按时间顺序记录的数据点)进行存储和管理的数据库。这类数据通常包含时间戳(Timestamp)和对应的…

【Linux】冯诺依曼体系与操作系统理解

🌟🌟作者主页:ephemerals__ 🌟🌟所属专栏:Linux 目录 前言 一、冯诺依曼体系结构 二、操作系统 1. 操作系统的概念 2. 操作系统存在的意义 3. 操作系统的管理方式 4. 补充:理解系统调用…

Unity HDR颜色、基础颜色、强度强度、HDR面板Intensity之间的相互转换

目录 前言: 一、UnityHDR面板的规律 二、HDR与基础颜色转换,HDR强度获取,输入设置强度获取 1.基础色->HDR颜色 2.HDR颜色->基础色 3.获取HDR颜色在面板中的强度 4.获取HDR颜色在面板设置输入时的强度 前言: HDR&#…

c++进阶--map和set的使用

大家好,昨天我们学习了二叉搜索树,今天我们来学习一下map和set容器的使用。 目录 1. map和set的使⽤ 1.1 序列式容器和关联式容器 2. set系列的使⽤ 2.1 参考文档 2.2 set类的介绍 2.3 set的构造和迭代器 2.4 set的增删查 2.5 insert和迭代器…

Kylin麒麟操作系统服务部署 | NFS服务部署

以下所使用的环境为: 虚拟化软件:VMware Workstation 17 Pro 麒麟系统版本:Kylin-Server-V10-SP3-2403-Release-20240426-x86_64 一、 NFS服务概述 NFS(Network File System),即网络文件系统。是一种使用于…

FPGA之USB通信实战:基于FX2芯片的Slave FIFO回环测试详解

FPGA之Usb数据传输 Usb 通信 你也许会有疑问,明明有这么多通信方式和数据传输(SPI、I2C、UART、以太网)为什么偏偏使用USB呢? 原因有很多,如下: 1. 高速数据传输能力 高带宽:USB接口提供了较高的数据传…

生活反思公园散步与小雨遇记

《公园散步与小雨遇记》(一) 总收录于《生活小事灵感反思》与《生活小美好》 最近又新增一个习惯:每天至少走一小时 那天天气有雨,软件上显示在下雨,但是外面没雨,心想着大不了淋湿回来洗个头,…

夏门大学DeepSeek 手册:从社会大众到高校及企业的全面应用实践研究(附 PDF 下载)

这 3 份手册分别从 DeepSeek 大模型概念、技术与应用实践、DeepSeek 大模型赋能高校教学和科研、DeepSeek 大模型及其企业应用实践-企业人员的大模型宝典几个角度进行全面分析,可以结合着清华、北大系列相互对照着学习。 清华北大推出的 DeepSeek 教程(…

微服务保护:Sentinel

home | Sentinelhttps://sentinelguard.io/zh-cn/ 微服务保护的方案有很多,比如: 请求限流 线程隔离 服务熔断 服务故障最重要原因,就是并发太高!解决了这个问题,就能避免大部分故障。当然,接口的并发…

工作学习笔记:HarmonyOS 核心术语速查表(v14 实战版)

作为在 HarmonyOS 开发一线摸爬滚打的工程师,笔者在 v14 版本迭代中整理了这份带血的实战术语表。 一、架构基础术语速查 A 系列术语 术语官方定义笔者解读(v14 实战版)开发陷阱 & 解决方案abc 文件ArkCompiler 生成的字节码文件打包时…

驾校与无人机飞手培训机构合作开展低空业务技术详解

驾校与无人机飞手培训机构合作开展低空业务是一个创新的举措,旨在结合双方的资源和专业优势,为学员提供多元化的技能培训和业务拓展机会。以下是对这种合作模式下低空业务技术的详细解析: 一、合作背景与意义 1. 市场需求增长:随…