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

深圳做外贸网站营销软文广告

深圳做外贸网站,营销软文广告,甘肃交通工程建设监理有限公司网站,哈尔滨seo搜索排名优化一、概述 主成分分析(Principal Component Analysis,PCA)是一种用于数据降维的方法,其核心目标是在尽可能保留原始数据信息的前提下,将高维数据映射到低维空间。该算法基于方差最大化理论,通过寻找数据的主…

一、概述

  主成分分析(Principal Component Analysis,PCA)是一种用于数据降维的方法,其核心目标是在尽可能保留原始数据信息的前提下,将高维数据映射到低维空间。该算法基于方差最大化理论,通过寻找数据的主要变化方向(即主成分),将原始数据投影到这些方向上,从而实现降维。

二、算法过程

1.数据中心化

  指将数据的每个特征减去其均值,使得数据的均值为 0。这样做的目的是将数据的分布中心移到原点,便于后续计算协方差矩阵等操作,因为协方差矩阵的计算对于数据的中心位置比较敏感,中心化后可以更好地反映数据的内在结构和相关性。

值得说明的是,在某些情况下,特别是当不同特征的量纲差异较大或者数据的分布比较复杂时,除了数据中心化外,还会进行数据标准化。数据标准化是指将数据的每个特征减去对应特征列的均值再除以标准差,这样可以进一步消除不同特征在尺度上的差异,使得不同特征在后续的分析中具有相同的重要性,避免因特征尺度不同而导致的结果偏差。

2. 计算协方差矩阵

  对中心化后的数据矩阵计算协方差,协方差矩阵描述了数据特征之间的相关性。
    总体协方差矩阵计算公式为 C o v = 1 n X c T X c Cov=\frac{1}{n}X_{c}^{T}X_c Cov=n1XcTXc
    样本协方差矩阵计算公式为 S = 1 n − 1 X c T X c S=\frac{1}{n-1}X_{c}^{T}X_{c} S=n11XcTXc

  其中 n n n是样本数量。实际计算中通常使用样本协方差,其中的 1 n − 1 \frac{1}{n-1} n11是总体协方差的无偏估计。

3. 计算协方差矩阵的特征值和特征向量

  通过求解协方差矩阵 S S S的特征方程 ∣ S − λ I ∣ = 0 \left| S-\lambda I \right|=0 SλI=0 ,得到特征值 λ i \lambda_i λi和对应的特征向量 v i v_i vi。特征值反映了数据在对应特征向量方向上的方差大小,特征值越大,说明数据在该方向上的变化程度越大,包含的信息越多。

4. 选择主成分

  将特征值按照从大到小的顺序排列,对应的特征向量也随之重新排序。选择前 k k k 个最大的特征值及其对应的特征向量,这些特征向量构成了新的低维空间的基向量。 k k k 的选择通常基于一个阈值,例如保留能够解释原始数据方差累计百分比达到一定比例(如 80%、90% 等)的主成分。

5.数据投影

  将原始数据投影到由选定的 k k k 个特征向量构成的低维空间中,得到降维后的数据。投影的计算公式为
Y = X c W Y=X_cW Y=XcW
  其中, X c X_c Xc是中心化后的数据矩阵, W W W是由前 k k k个特征向量组成的投影矩阵, Y Y Y 是降维后的数据矩阵。​

三、示例

  现有一组二维数据 X = [ 1 2 2 3 3 4 4 5 5 6 ] X= \begin{bmatrix} 1 & 2 \\ 2 & 3 \\ 3 & 4 \\ 4 & 5 \\ 5 & 6 \end{bmatrix} X= 1234523456 ,下面使用PCA方法进行降维,将其从二维降至一维。

1.数据标准化

  首先,计算每列的均值:
    第一列均值: x ˉ 1 = 1 + 2 + 3 + 4 + 5 5 = 3 \bar x_1=\frac{1+2+3+4+5}{5}=3 xˉ1=51+2+3+4+5=3
    第二列均值: x ˉ 2 = 2 + 3 + 4 + 5 + 6 5 = 4 \bar x_2=\frac{2+3+4+5+6}{5}=4 xˉ2=52+3+4+5+6=4
  然后,对矩阵 X X X进行中心化,得到矩阵 X c X_c Xc

     X c = X_c= Xc= [ 1 − 3 2 − 4 2 − 3 3 − 4 3 − 3 4 − 4 4 − 3 5 − 4 5 − 3 6 − 4 ] \begin{bmatrix} 1-3 & 2-4 \\ 2-3 & 3-4 \\ 3-3 & 4-4 \\ 4-3 & 5-4 \\ 5-3 & 6-4 \end{bmatrix} 13233343532434445464 = = = [ − 2 − 2 − 1 − 1 0 0 1 1 2 2 ] \begin{bmatrix} -2 & -2 \\ -1 & -1 \\ 0 & 0 \\ 1 & 1 \\ 2 & 2 \end{bmatrix} 2101221012

2. 计算协方差矩阵

  协方差矩阵 S S S的计算公式为 S = 1 n − 1 X c T X c S=\frac{1}{n-1}X_{c}^{T}X_{c} S=n11XcTXc,其中 n n n是样本数量。

     X c T X c = X_c^TX_c= XcTXc= [ − 2 − 1 0 1 2 − 2 − 1 0 1 2 ] \begin{bmatrix} -2 & -1 &0 & 1 & 2 \\ -2 & -1 &0 & 1 & 2 \end{bmatrix} [2211001122] [ − 2 − 2 − 1 − 1 0 0 1 1 2 2 ] \begin{bmatrix} -2 & -2 \\ -1 & -1 \\ 0 & 0 \\ 1 & 1 \\ 2 & 2 \end{bmatrix} 2101221012 = = = [ 10 10 10 10 ] \begin{bmatrix} 10 & 10 \\ 10 & 10 \end{bmatrix} [10101010]

  则协方差矩阵 S S S

     S = 1 5 − 1 S=\frac{1}{5-1} S=511 [ 10 10 10 10 ] \begin{bmatrix} 10 & 10 \\ 10 & 10 \end{bmatrix} [10101010] = = = [ 2.5 2.5 2.5 2.5 ] \begin{bmatrix} 2.5 & 2.5 \\ 2.5 & 2.5 \end{bmatrix} [2.52.52.52.5]

3. 计算协方差矩阵的特征值和特征向量

  对于矩阵 S S S,其特征方程为 ∣ S − λ I ∣ = 0 \left| S-\lambda I \right|=0 SλI=0 ,其中 I I I 是单位矩阵。

     ∣ 2.5 − λ 2.5 2.5 2.5 − λ ∣ \begin{vmatrix} 2.5-\lambda & 2.5 \\ 2.5 & 2.5-\lambda \end{vmatrix} 2.5λ2.52.52.5λ = = = ( 2.5 − λ ) 2 − 2. 5 2 {(2.5-\lambda)}^{2}-2.5^2 (2.5λ)22.52 = = = 0 0 0

  展开可得 λ 2 − 5 λ = 0 \lambda^2-5\lambda=0 λ25λ=0 ,解得特征值为 λ 1 = 5 \lambda_1=5 λ1=5 λ 2 = 0 \lambda_2=0 λ2=0

求特征向量:
  对于 λ 1 = 5 \lambda_1=5 λ1=5 求解 ( S − 5 I ) v 1 = 0 (S-5I)v_1=0 (S5I)v1=0

     [ 2.5 − 5 2.5 2.5 2.5 − 5 ] \begin{bmatrix} 2.5-5 & 2.5 \\ 2.5 & 2.5-5 \end{bmatrix} [2.552.52.52.55] [ v 11 v 12 ] \begin{bmatrix} v_{11} \\ v_{12} \end{bmatrix} [v11v12] = = = [ − 2.5 2.5 2.5 − 2.5 ] \begin{bmatrix} -2.5 & 2.5 \\ 2.5 & -2.5 \end{bmatrix} [2.52.52.52.5] [ v 11 v 12 ] \begin{bmatrix} v_{11} \\ v_{12} \end{bmatrix} [v11v12] = = = [ 0 0 ] \begin{bmatrix} 0 \\ 0 \end{bmatrix} [00]

v 11 = 1 v_{11}=1 v11=1 ,则 v 12 = 1 v_{12}=1 v12=1 ,单位化后得到特征向量 v 1 = [ 1 2 1 2 ] v_1= \begin{bmatrix} \frac{1}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} \end{bmatrix} v1=[2 12 1]

  对于 λ 2 = 0 \lambda_2=0 λ2=0 ,求解 ( S − 0 I ) v 2 = 0 (S-0I)v_2=0 (S0I)v2=0

     [ 2.5 2.5 2.5 2.5 ] \begin{bmatrix} 2.5 & 2.5 \\ 2.5 & 2.5 \end{bmatrix} [2.52.52.52.5] [ v 21 v 22 ] \begin{bmatrix} v_{21} \\ v_{22} \end{bmatrix} [v21v22] = = = [ 0 0 ] \begin{bmatrix} 0 \\ 0 \end{bmatrix} [00]

v 21 = 1 v_{21}=1 v21=1 ,则 v 22 = − 1 v_{22}=-1 v22=1 ,单位化后得到特征向量 v 2 = [ 1 2 − 1 2 ] v_2= \begin{bmatrix} \frac{1}{\sqrt{2}} \\ -\frac{1}{\sqrt{2}} \end{bmatrix} v2=[2 12 1]

4. 选择主成分

  按照特征值从大到小排序,选择前 k k k 个特征值对应的特征向量作为主成分。这里我们选择最大特征值 λ 1 = 5 \lambda_1=5 λ1=5

  对应的特征向量 v 1 = [ 1 2 1 2 ] v_1= \begin{bmatrix} \frac{1}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} \end{bmatrix} v1=[2 12 1] 作为主成分。

5. 数据投影

  将中心化后的数据 X c X_c Xc 投影到主成分上,得到降维后的数据

     Y = X c v 1 = Y=X_cv_1= Y=Xcv1= [ − 2 − 2 − 1 − 1 0 0 1 1 2 2 ] \begin{bmatrix} -2 & -2 \\ -1 & -1 \\ 0 & 0 \\ 1 & 1 \\ 2 & 2 \end{bmatrix} 2101221012 [ 1 2 1 2 ] \begin{bmatrix} \frac{1}{\sqrt{2}} \\ \frac{1}{\sqrt{2}} \end{bmatrix} [2 12 1] = = = [ − 2 2 − 2 0 2 2 2 ] \begin{bmatrix} -2\sqrt{2} \\ -\sqrt{2} \\ 0 \\ \sqrt{2} \\ 2\sqrt{2} \end{bmatrix} 22 2 02 22

四、Python实现

scikit-learn实现:
import numpy as np
from sklearn.decomposition import PCA# 数据
data = np.array([[1, 2],[2, 3],[3, 4],[4, 5],[5, 6]])# 创建PCA对象,指定降维后的维度为1
pca = PCA(n_components=1)# 使用PCA对数据进行降维
reduced_data = pca.fit_transform(data)# 降维后的数据
print("降维后的数据:")
print(reduced_data)

在这里插入图片描述



函数实现:
import numpy as npdef pca(X, n_components):# 数据中心化X_mean = np.mean(X, axis=0)X_centered = X - X_mean# 计算协方差矩阵cov_matrix = np.cov(X_centered, rowvar=False)# 计算协方差矩阵的特征值和特征向量eigenvalues, eigenvectors = np.linalg.eig(cov_matrix)# 对特征值进行排序,获取排序后的索引sorted_indices = np.argsort(eigenvalues)[::-1]# 选择前n_components个最大特征值对应的特征向量top_eigenvectors = eigenvectors[:, sorted_indices[:n_components]]# 将数据投影到选定的特征向量上X_reduced = np.dot(X_centered, top_eigenvectors)return X_reduced# 数据
X = np.array([[1,2],[2,3],[3,4],[4,5],[5,6]])# 降至1维
n_components = 1
X_reduced = pca(X, n_components)# 降维后的数据
print("降维后的数据:")
print(X_reduced)

在这里插入图片描述

End.



下载

http://www.dtcms.com/wzjs/489228.html

相关文章:

  • 长沙网页长春网站seo
  • flash网站建设公司网页开发
  • 网站建设销售西安seo外包公司
  • 怎么做网站可以注册的免费推广软件平台
  • 建筑公司企业愿景范文seo软件工具箱
  • 网站底部备案信息网站推广技术
  • app开发公司架构seo链接优化建议
  • 个人做网站需要资质吗肇庆疫情最新消息
  • 网站建设佰首选金手指五如何进行网络推广和宣传
  • 是什么网站建设企业推广软文
  • soho需要建网站吗优化设计六年级下册语文答案
  • 义务教育标准化建设网站网站分析工具
  • 淮安新网站制作东莞优化排名推广
  • 手机商城网站设计南城网站优化公司
  • 济南网站建设询问企优互联价低淘宝seo排名优化软件
  • 学做ps的网站有哪些百度服务
  • 做游戏网站用什么系统做网络营销方案如何写
  • 网站建设 图片优化网站搜索
  • 暴雪战网官方网站入口app下载推广平台
  • 怎么查找网站的根目录百度下载app下载
  • 如何做ps4游戏视频网站做网页怎么做
  • 做网站找哪家又便宜又好中国搜索引擎市场份额
  • 网站制作与建设与网页制作网络推广团队哪家好
  • 给别人做网站多少钱百度q3财报2022
  • 免费网络空间搜索引擎百度爱采购关键词优化
  • 网站建设的渠道策略优秀营销软文100篇
  • 余姚网站推广策划案网站查询ip地址查询
  • 淘宝支持做微交易网站吗重庆森林为什么不能看
  • 提交网站引擎优化seo是什么
  • 同城购物网站怎么做长尾关键词排名工具