《R语言数据挖掘》----1.13 数据降维

简介:

本节书摘来自华章出版社《R语言数据挖掘》一书中的第1章,第1.13节,作者[哈萨克斯坦]贝特·麦克哈贝尔(Bater Makhabel),李洪成 许金炜 段力辉 译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.13 数据降维

在分析复杂的多变量数据集时,降低维度往往是必要的,因为这样的数据集总是以高维形式呈现。因此,举例来说,从大量变量来建模的问题和基于定性数据多维分析的数据挖掘任务。同样,有很多方法可以用来对定性数据进行数据降维。

降低维度的目标就是通过两个或者多个比原先矩阵小很多的矩阵来取代大型矩阵,但原始矩阵可以被近似重构。通常是选取这些小矩阵的乘积来重构原始的矩阵,这一般会损失一些次要信息。

1.13.1 特征值和特征向量

一个矩阵的特征向量是指该矩阵(下述方程中的A)乘以该特征向量(下述方程中的v)的结果为一个常数乘以该特征向量。这个常数就是关于该特征向量的特征值。一个矩阵可能有好几个特征向量。
Av=λv

一个特征对就是特征向量及其特征值,也就是上式中的(v, λ)。

1.13.2 主成分分析

用于降维的主成分分析(Principal Component Analysis,PCA)技术将多维空间中的点集所构成的数据视为一个矩阵,其中行对应于点,列对应于维度。

该矩阵与其转置的乘积具有特征向量和特征值,其主特征向量可以看作空间中的方向,且沿着该方向,点排成最佳的直线。第二特征向量表示的方向使得源于主特征向量的偏差在该方向上是最大的。

主成分分析降维是通过最小化表示矩阵中给定列数的均方根误差来近似数据,用其少数的特征向量来表示矩阵中的点。

1.13.3 奇异值分解

一个矩阵的奇异值分解(Singular Value Decomposition,SVD)由以下3个矩阵构成:
U
Σ
V

U和V是列正交的,其列向量是正交的且它们的长度为1。Σ是一个对角矩阵,其对角线上的值称为奇异值。原始矩阵等于U、Σ和V的转置的乘积。

当连接原始矩阵的行和列的概念较少时,奇异值分解是有用的。

当矩阵U和V通常与原始矩阵一样大时,采用奇异值分解降维。为了使用较少列的U和V,删除U、V和Σ中与最小奇异值对应的列。这样根据修正后的U、Σ和V重构原始矩阵时就最小化了误差。

1.13.4 CUR分解

CUR分解旨在将一个稀疏矩阵分解成更小的稀疏矩阵,这些小矩阵的乘积近似于原始矩阵。

CUR从一个给定的稀疏矩阵中选择一组列构成矩阵C和一组行构成矩阵R,C和R的作用就相当于奇异值分解中的U和V?T。行与列是根据一个分布随机选择的,该分布取决于元素平方和的平方根。在矩阵C和R之间有一个方阵称为U,它是由所选择的行与列的交集的伪逆(pseudo-inverse)所构造出来的。

根据CUR解决方案,3个分量矩阵C、U和R将被检索。这3个矩阵的乘积将近似于原始矩阵M。在R社区中,有一个R添加包rCUR用于CUR矩阵分解。

相关文章
|
9月前
|
机器学习/深度学习 数据采集 算法
数据挖掘:从数据堆里“淘金”,你的数据价值被挖掘了吗?
数据挖掘:从数据堆里“淘金”,你的数据价值被挖掘了吗?
438 12
|
数据采集 机器学习/深度学习 数据可视化
R语言从数据到决策:R语言在商业分析中的实践
【9月更文挑战第1天】R语言在商业分析中的应用广泛而深入,从数据收集、预处理、分析到预测模型构建和决策支持,R语言都提供了强大的工具和功能。通过学习和掌握R语言在商业分析中的实践应用,我们可以更好地利用数据驱动企业决策,提升企业的竞争力和盈利能力。未来,随着大数据和人工智能技术的不断发展,R语言在商业分析领域的应用将更加广泛和深入,为企业带来更多的机遇和挑战。
|
9月前
|
数据采集 机器学习/深度学习 算法
R语言数据挖掘:从“挖井”到“淘金”
R语言数据挖掘:从“挖井”到“淘金”
212 9
|
存储 数据采集 数据处理
R语言数据变换:使用tidyr包进行高效数据整形的探索
【8月更文挑战第29天】`tidyr`包为R语言的数据整形提供了强大的工具。通过`pivot_longer()`、`pivot_wider()`、`separate()`和`unite()`等函数,我们可以轻松地将数据从一种格式转换为另一种格式,以满足不同的分析需求。掌握这些函数的使用,将大大提高我们处理和分析数据的效率。
|
10月前
|
机器学习/深度学习 数据采集 人工智能
从数据海洋中“淘金”——数据挖掘的魔法与实践
从数据海洋中“淘金”——数据挖掘的魔法与实践
235 13
|
11月前
|
数据采集 传感器 算法
从数据中挖掘洞见:初探数据挖掘的艺术与科学
从数据中挖掘洞见:初探数据挖掘的艺术与科学
271 11
|
SQL 存储 算法
【数据挖掘】恒生金融有限公司2023届秋招数据ETL工程师笔试题解析
恒生科技2022年9月24号数据ETL工程师岗位的笔试题目及答案汇总,包括了SQL选择题、SQL编程题和业务应用SQL编程题,涵盖了数据库基础知识、SQL语句编写以及数据仓库概念等多个方面。
299 2
【数据挖掘】恒生金融有限公司2023届秋招数据ETL工程师笔试题解析
R语言基于表格文件的数据绘制具有多个系列的柱状图与直方图
【9月更文挑战第9天】在R语言中,利用`ggplot2`包可绘制多系列柱状图与直方图。首先读取数据文件`data.csv`,加载`ggplot2`包后,使用`ggplot`函数指定轴与填充颜色,并通过`geom_bar`或`geom_histogram`绘图。参数如`stat`, `position`, `alpha`等可根据需要调整,实现不同系列的图表展示。
385 9
|
数据采集 数据可视化 数据挖掘
R语言在金融数据分析中的深度应用:探索数据背后的市场智慧
【9月更文挑战第1天】R语言在金融数据分析中展现出了强大的功能和广泛的应用前景。通过丰富的数据处理函数、强大的统计分析功能和优秀的可视化效果,R语言能够帮助金融机构深入挖掘数据价值,洞察市场动态。未来,随着金融数据的不断积累和技术的不断进步,R语言在金融数据分析中的应用将更加广泛和深入。
|
数据采集 机器学习/深度学习 数据挖掘
R语言数据清洗:高效处理缺失值与重复数据的策略
【8月更文挑战第29天】处理缺失值和重复数据是数据清洗中的基础而重要的步骤。在R语言中,我们拥有多种工具和方法来有效地应对这些问题。通过识别、删除或插补缺失值,以及删除重复数据,我们可以提高数据集的质量和可靠性,为后续的数据分析和建模工作打下坚实的基础。 需要注意的是,处理缺失值和重复数据时,我们应根据实际情况和数据特性选择合适的方法,并在处理过程中保持谨慎,以避免引入新的偏差或错误。

热门文章

最新文章