PCA详解-并用scikit-learn实现PCA压缩红酒数据集

在这篇文章中,我会介绍一些PCA背后的数学概念,然后我们用Wine数据集作为实例,一步一步地实现PCA。最后,我们用更加强大的scikit-learn方便快速地实现PCA,并用逻辑回归来拟合用PCA转换后的数据集。为了让大家更好地理解PCA,整篇文章都贯穿着实例,现在,让我们享受这篇文章吧。
摘要由CSDN通过智能技术生成

引言

在这篇文章中,我会介绍一些PCA背后的数学概念,然后我们用Wine数据集作为实例,一步一步地实现PCA。最后,我们用更加强大的scikit-learn方便快速地实现PCA,并用逻辑回归来拟合用PCA转换后的数据集。为了让大家更好地理解PCA,整篇文章都贯穿着实例,现在,让我们享受这篇文章吧。

标准差(Standard Deviation)

在引入标准差之前,我先介绍一下平均值,假设我们有个样本集X,其中的样本为 X=[1,2,3,4,5,6] ,求平均值的公式如下:

X¯=ni=1Xin

  • X¯ :平均值
  • n :样本的个数
  • Xi :第 i 个样本

X的平均值为:

X¯=6i=1Xi6=1+2+3+4+5+66=3.5

求平均值的python代码如下:

import numpy as np
X=np.array([1,2,3,4,5,6])
np.mean(X)

不幸的是平均值并没有告诉我们关于样本集的很多信息。比如[0,8,12,20]和[8,9,11,12]的平均值都是10,但是它们的数据分散程度有着明显的不同。因此,我们并不满足于仅仅求出一个小小的平均值,它只是一个我们到达伟大目标的一个垫脚石。下面让我们引入标准差,它度量着数据的分散程度。它的公式如下:

s=ni=1(XiX¯)2n1

上面的公式测量着样本到样本均值的平均距离。你可能会想,分母为什么不是

  • 9
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值