什么是稀疏矩阵? 它如何在机器学习中使用?

为什么重要:顾名思义,稀疏矩阵是矩阵中元素具有较少非零值的矩阵。这是机器学习中的一个重要概念

来源:人工智能+

简介

简介

顾名思义,稀疏矩阵是元素中非零值较少的矩阵。在机器学习及其应用中会遇到稀疏矩阵。在数据、数据准备和机器学习的子领域中遇到它们非常常见。将此类矩阵视为密集矩阵会导致时间和空间复杂度方面的资源浪费。

本文讨论了什么是稀疏矩阵,并解释了它们与密集矩阵的不同之处。您将了解稀疏矩阵的用途、其优点和缺点。我们将讨论什么是稀疏性以及使用这些矩阵的时间和空间复杂度。我们还将介绍使用稀疏矩阵时使用的几种不同格式的 Python 实现。

稀疏矩阵

稀疏矩阵

由大部分非零值组成的矩阵是稀疏矩阵,换句话说,它是大多数元素为零的矩阵。下面是此类矩阵的示例。

稀疏矩阵
稀疏矩阵

密集矩阵

密集矩阵

与上述矩阵相反,密集矩阵由大部分非零元素组成。下面是此类矩阵的示例。

密集矩阵
密集矩阵

稀疏性

稀疏性

使用稀疏矩阵时,应该讨论该矩阵的稀疏性。

稀疏度 = (零元素的数量) / (矩阵大小)

稀疏度 = (零元素的数量) / (矩阵大小)

在本教程的后面部分,我们将介绍用于计算该值的 Python 命令。

高稀疏度的问题

高稀疏度的问题

空间复杂度

空间复杂度

在实际场景中,每个大型矩阵主要由零组成。 如果我们将这些矩阵表示为密集的,尽管非零元素非常少,但仍需要大量内存,从而导致资源浪费。

时间复杂度

时间复杂度

另请阅读:如何使用 Pandas Melt – pd.melt() 进行人工智能和机器学习。

机器学习中的稀疏矩阵

数据

数据

数据准备