核方法总结(三)———核主成分(kernel PCA)学习笔记

一、核主成分

    1.1 和PCA的区别

         PCA (主成分分析)对应一个线性高斯模型(参考书的第二章),其基本假设是数据由一个符合正态分布的隐变量通过一个线性映射得到,因此可很好描述符合高斯分布的数据。然而在很多实际应用中数据的正态性不能保证,这时用PCA建模通常会产生较大偏差。这时可以设计一个合理的非线性映射,将原始数据映射到特征空间,使数据在该空间的映射具有高斯性,在这个基础可进行有效的PCA建模。即通过核函数间接映射到特征空间再间接进行建模,所以称为核主成分分析;

       1.2 推导过程

         定义原始数据空间样本为\left \{ x_{n} \right \},非线性映射为\phi \left ( x \right ),且在原始空间和特征空间满足如下归一化条件。

           \sum _{n}{x_{n}} = 0 \sum _{n}{\phi (x_{n})} = 0   1------(1)

      在映射空间的协方差矩阵可写作:

  1----(2)

上式中,假设\phi \left ( x_{n} \right )有m维,则\phi \left ( x_{n} \right )\phi \left ( x_{n} \right )^{T}有m*m维。其中,在特征空间中求主成分v等价于求S^{\phi }的特征向量:

S^{\phi }v = \lambda v   1----(3)

整理以上两式可得:

1-----(4)

其中:\alpha = \frac{1}{N\mu }\Phi ^{T}\nu , 是一个N维向量,其中每一维对应一个数据点与特征向量v的内积,同时,上式说明在特征空间的特征向量v由所有数据样本的向量加权平均得到,权重为\alpha,转化为对偶问题。将 v = \Phi \alpha 代回式 1 ----(4)  :

                                1----(5)、1-----(6)、1----(7)

其中 K为gram阵, 上式1—(7)右项左移,可以看出K选择合适的核函数,会使K不等于空矩阵,因而可以推出:

K\alpha = \lambda N\alpha   1——(8) 为1——(7)式的必要条件

考虑特征向量v应满足v^{T}v =1 ,而 v=\Phi \alpha,有:

1-----(9)

将1---(8)式左乘\alpha ^{T}并代入上式,有:

\lambda N\alpha ^{T}\alpha =1   1----(10)

    \alpha可以通过下式求解:

   1------(11)

    上式求解特征向量的方法是,求解左式的特征向量,再取\alpha =  \alpha \sqrt{\frac{1}{\lambda N}} 就可以求得满足约束的特征向量。解出\alpha后,即可基于1—(4)式得到在特征空间的主成分向量。和标准PCA类似,我们可以求得多个主成分,组成主成分向量集{v_{i}}。

    基于{v_{i}}可对任意测试样本x降维,且等价于在特征空间中计算\phi \left ( x_{} \right )在各个主成分v_{i}上的投影,计算如下:

   1———(12)

上式 \alpha _{i,n} 表示特征向量v_{i}对应的权重的第n维(n=1.....N)。

        虽然我们的目的是在特征空间进行主成分提取并给予得到的主成分对数据进行降维,但不需要在特征空间进行操作,所有计算都在原始空间中以核函数方式进行,计算得到的结果等价于在特征空间中进行。这使得可以在非常复杂的特征空间中对数据进行PCA建模,从而解决了原始数据的非高斯化问题,使PCA具有灵活性和可扩展性。

二、总结

      本文是学习《机器学习导论》(清华大学出版社,中文版,王东,2021年)的摘录总结或笔记。

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

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

相关文章

ViewBinding的使用(因为kotlin-android-extensions插件的淘汰)

书籍: 《第一行代码 Android》第三版 开发环境: Android Studio Jellyfish | 2023.3.1 问题: 3.2.4在Activity中使用Toast章节中使用到了kotlin-android-extensions插件,但是该插件已经淘汰,根据网上了解,目前使用了新的技术VewBinding替…

UE4_材质_材质节点_DepthFade

一、DepthFade参数 DepthFade(深度消退)表达式用来隐藏半透明对象与不透明对象相交时出现的不美观接缝。 项目说明属性消退距离(Fade Distance)这是应该发生消退的全局空间距离。未连接 FadeDistance(FadeDistance&a…

【数据分析“三剑客”】—— Pandas

Pandas Pandas 是基于NumPy的一种工具,该工具是为解决数据分析任务而创建的, Pandas提供了大量能使我们快速便捷地处理数据的函数和方法。Pandas与出色的 Jupyter工具包和其他库相结合,Python中用于进行数据分析的环境在性能、生产率和协作能力方面都是…

光照老化试验箱:材料耐久性的“时间加速器”

光照老化试验箱:材料耐久性的“时间加速器”概述 光照老化试验箱是一种模拟自然光照条件下材料老化过程的设备,广泛应用于材料科学领域的耐久性能评估。通过模拟日光中的紫外线、热辐射等环境因素,加速材料老化过程,以此来验证材…

redhawk:tech file与lefdef layer name不匹配问题

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧? 拾陆楼知识星球入口 一些工艺厂商给的redhawk tech file是加密的,读完tech file再读lef/def会报错,根本不知道问题在哪,他们一般会搭配给一个layer map&#xff…

分解+降维+预测!多重创新!直接写核心!EMD-KPCA-Transformer多变量时间序列光伏功率预测

分解降维预测!多重创新!直接写核心!EMD-KPCA-Transformer多变量时间序列光伏功率预测 目录 分解降维预测!多重创新!直接写核心!EMD-KPCA-Transformer多变量时间序列光伏功率预测效果一览基本介绍程序设计参…

【简单讲解神经网络训练中batch的作用】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…

Maven依赖解析过程详细讲解

Maven依赖解析是一个递归的过程,涉及从项目的POM文件开始,逐步解析直接依赖和传递依赖。以下是详细的解析过程: 读取项目的POM文件: Maven首先读取项目的POM文件 (pom.xml),该文件定义了项目的直接依赖。 解析直接依赖…

STM32第十五课:LCD屏幕及应用

文章目录 需求一、LCD显示屏二、全屏图片三、数据显示1.显示欢迎词2.显示温湿度3.显示当前时间 四、需求实现代码 需求 1.在LCD屏上显示一张全屏图片。 2.在LCD屏上显示当前时间,温度,湿度。 一、LCD显示屏 液晶显示器,简称 LCD(Liquid Cry…

node_sqlite3.node is not a valid win32 application

electron打包报错 使用electron在linux平台打包含有sqlite3的项目为win32应用时在运行阶段,有时会遇到下面的错误 node_sqlite3.node is not a valid win32 application出现该错误的原因主要是在64bit的linux环境中,sqlite3默认build出来的二进制文件不…

【Windows】Visual Studio Installer下载缓慢解决办法

【Windows】Visual Studio Installer下载缓慢解决办法 1.背景2.分析3.结果 1.背景 使用visual studio在线安装包进行IDE安装,发现下载几乎停滞,网速几乎为零。 经过排查并不是因为实际网络带宽导致。 这里涉及DNS知识; DNS(Dom…

消防认证-防火卷帘

一、消防认证 消防认证是指消防产品符合国家相关技术要求和标准,且通过了国家认证认可监督管理委员会审批,获得消防认证资质的认证机构颁发的证书,消防产品具有完好的防火功能,是住房和城乡建设领域验收的重要指标。 二、认证依据…

TP8 JS(html2canvas) 把DIV内容生成二维码并与背景图、文字组合生成分享海报

方法一:前端JS生成(推荐) 注意: 1.这个网页只能截图图片效果代码,其它任何html效果都不能有,不然截图就不准确 2.如果要生成的图片DIV内容中引用了第三个方的图片,就是不使用同一个域名下的图片,需要把后…

Python爬取淘宝商品评价信息实战:从零到一的高效教程

引言:揭秘淘宝数据金矿 在电商领域,用户评价是衡量产品优劣的金标准。作为Python爬虫工程师,掌握从淘宝这座数据金矿中挖掘宝贵评价信息的技能至关重要。本文将带你手把手实操,用Python爬虫技术获取淘宝商品的评价信息&#xff0…

Docker多阶段构建Node.js应用程序

Node.js 应用程序 创建一个目录来存放你的项目文件,然后在该目录下创建以下文件。 package.json {"name": "docker-node-test","version": "1.0.0","description": "A simple Node.js app for Docker mu…

【折腾笔记】使用 PicList + Lsky Pro 对图片进行双重压缩

前言 因为服务器的带宽比较小,为了提高网站的访问速度,网站内的图片进行压缩是必不可少的。另外将图片转换成WebP的格式可以减小文件大小、加快加载速度、支持高级特性(如透明度和动画),以及减少存储需求,为网站提供了显著的性能。需要提前安装好PicList客户端和Lsky Pr…

最快33天录用!一投就中的医学4区SCI,几乎不退稿~

【SciencePub学术】今天小编给大家推荐2本生物医学领域的SCI,此期刊为我处目前合作的重点期刊!影响因子0-3.0之间,最重要的是审稿周期较短,对急投的学者较为友好! 医学医药类SCI 01 / 期刊概况 【期刊简介】IF&…

那些好用的 Vue3 的工具搭子!!【送源码】

2020 年 9 月 18 日 Vue3 的正式发布已经过去了大约 3 年 9 个月左右!!! 随着 Vue3 版本的逐渐成熟,我们的前端世界也迎来了一系列令人振奋的更新和工具。Vue 生态圈的持续扩大,无疑为前端开发人员带来了前所未有的便…

通过pycharm使用git和github的步骤

一、在Pycharm工具中配置集成Git和GitHub。 1.集成Git。 打开Pycharm, 点击File-->Settins-->Version Control-->Git 然后在 Path to Git executable中选择本地的git.exe路径。如下图: 2.集成GitHub 打开Pycharm, 点击File-->Settins-->Version…

探索未来远程调试新纪元——《串口网口远程调试软件》:无缝连接,高效调试

文章目录 前言一、无缝连接,突破距离限制二、高效调试,提升工作效率三、安全可靠,保护数据安全四、用户友好,简化操作流程五、软件地址六、远程调试软件 七、基本操作1、订阅主题2、连接3、串口调试4、网口调试 八、软件地址结束语…