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

【机器学习随笔】PCA降维与SVD

这块主要参考这个博文,写的很好:一文让你彻底搞懂主成成分分析PCA的原理及代码实现(超详细推导)
唯一的疑问是这份代码,自己跑出来的结果第二维数据的符号与原文符号正好相反。有朋友看到可以跑出来一起看下结果:

import numpy as np
from sklearn.decomposition import PCA# 3 x 5 , 3维特征,5组数据
data = np.array([[-1,-1,0,2,1],[2,0,0,-1,-1],[2,0,1,1,0]], dtype=np.float)
k = 2pca = PCA(n_components=k)
# 注意转置
new_data = pca.fit_transform(data.T)
# 降维后的数据各个维度特征 所占信息比例
ratios = pca.explained_variance_ratio_print(new_data,ratios)
# 输出
[[ 2.50856792 -0.76054613][ 0.59089386  1.31546989][ 0.19057608 -0.02787302][-1.84517782 -0.93519683][-1.44486004  0.40814608]][0.7801724  0.21479774]

自测输出:

[[ 2.50856792  0.76054613][ 0.59089386 -1.31546989][ 0.19057608  0.02787302][-1.84517782  0.93519683][-1.44486004 -0.40814608]][0.7801724  0.21479774]

———————————————————————————————————————————————————————————
额。。。找到根源,具体原因未知:在python3.11.15下是自测的结果,在python3.9.19的情况下是第一种结果,可能和变换的轴方向不一样

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【记录】大模型|Windows 下 Hugging Face 上的模型的通用极简调用方式之一
  • react + antDesignPro 企业微信扫码登录
  • Java 之反射机制详解
  • MySQL中的LIMIT与ORDER BY关键字详解
  • go/函数
  • 从IPC摄像机读取视频帧解码并转化为YUV数据到转化为Bitmap
  • DeepSeek 2.5本地部署的实战教程
  • 7--SpringBoot-后端开发、原理详解(面试高频提问点)
  • Web后端开发技术:RESTful 架构详解
  • 如何在GitHub上Clone项目:一步步指南
  • js 深入理解类-class
  • 存储系统概述
  • 移动端如何实现智能语音交互
  • Java免税商品优选商城:Spring Boot实战
  • 【在Linux世界中追寻伟大的One Piece】IP分片和组装的具体过程
  • 时间复杂度分析经典问题——最大子序列和
  • css系列之关于字体的事
  • js面向对象
  • Nginx 通过 Lua + Redis 实现动态封禁 IP
  • PHP的类修饰符与访问修饰符
  • Spring声明式事务管理之一:五大属性分析
  • vue:响应原理
  • WebSocket使用
  • 开发基于以太坊智能合约的DApp
  • 理清楚Vue的结构
  • 什么软件可以提取视频中的音频制作成手机铃声
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • ​数据链路层——流量控制可靠传输机制 ​
  • # 服务治理中间件详解:Spring Cloud与Dubbo
  • #C++ 智能指针 std::unique_ptr 、std::shared_ptr 和 std::weak_ptr
  • #Java第九次作业--输入输出流和文件操作
  • #LLM入门|Prompt#3.3_存储_Memory
  • #设计模式#4.6 Flyweight(享元) 对象结构型模式
  • (层次遍历)104. 二叉树的最大深度
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (全部习题答案)研究生英语读写教程基础级教师用书PDF|| 研究生英语读写教程提高级教师用书PDF
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。
  • (已解决)Bootstrap精美弹出框模态框modal,实现js向modal传递数据
  • (转)linux下的时间函数使用
  • (转)Linux整合apache和tomcat构建Web服务器
  • (转)visual stdio 书签功能介绍
  • (轉)JSON.stringify 语法实例讲解
  • (总结)Linux下的暴力密码在线破解工具Hydra详解
  • (最新)华为 2024 届秋招-硬件技术工程师-单板硬件开发—机试题—(共12套)(每套四十题)
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • .describe() python_Python-Win32com-Excel
  • .gitignore
  • .NET C# 使用 SetWindowsHookEx 监听鼠标或键盘消息以及此方法的坑
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • .NET企业级应用架构设计系列之开场白
  • .net通用权限框架B/S (三)--MODEL层(2)
  • /3GB和/USERVA开关
  • @DependsOn:解析 Spring 中的依赖关系之艺术
  • [ vulhub漏洞复现篇 ] ThinkPHP 5.0.23-Rce
  • [ 渗透测试面试篇 ] 渗透测试面试题大集合(详解)(十)RCE (远程代码/命令执行漏洞)相关面试题