阅读翻译Mathematics for Machine Learning之2.5 Linear Independence

关于:

  • 首次发表日期:2024-07-18
  • Mathematics for Machine Learning官方链接: https://mml-book.com
  • ChatGPT和KIMI机翻,人工润色
  • 非数学专业,如有错误,请不吝指出

2.5 线性无关( Linear Independence)

接下来,我们将仔细看看如何操作向量(向量空间的元素)。特别是,我们可以将向量相加并用标量相乘。闭合性(closure property)保证了我们最终得到的还是同一向量空间中的另一个向量。我们可以找到一组(set)向量,通过相加和缩放这些向量,我们可以表示向量空间中的每一个向量。这组向量称为基(base),我们将在第2.6.1节讨论它们。在此之前,我们需要介绍线性组合和线性无关的概念。

定义 2.11(线性组合)。考虑一个向量空间 \(V\) 和有限数量的向量 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k \in V\)。那么,每一个 \(\boldsymbol{v} \in V\) 形式如下的向量

\[\boldsymbol{v}=\lambda_1 \boldsymbol{x}_1+\cdots+\lambda_k \boldsymbol{x}_k=\sum_{i=1}^k \lambda_i \boldsymbol{x}_i \in V
\tag{2.65}
\]

其中 \(\lambda_1, \ldots, \lambda_k \in \mathbb{R}\) 是向量 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k\) 的线性组合。

零向量 \(\mathbf{0}\) 总是可以写成 \(k\) 个向量 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k\) 的线性组合,因为 \(\mathbf{0}=\sum_{i=1}^k 0 \boldsymbol{x}_i\) 总是成立的。接下来,我们对一组向量的非平凡(non-trivial)线性组合表示 \(\mathbf{0}\) 感兴趣,即向量 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k\) 的线性组合,其中不是所有系数 \(\lambda_i\) 在 (2.65) 中都为 0。

定义 2.12(线性(不)相关性)。让我们考虑一个向量空间 \(V\) 以及 \(k \in \mathbb{N}\) 和 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k \in V\)。如果存在一个非平凡的线性组合,使得 \(\mathbf{0}=\sum_{i=1}^k \lambda_i \boldsymbol{x}_i\) 且至少有一个 \(\lambda_i \neq 0\),则向量 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k\) 是线性相关的。如果只存在零解,即 \(\lambda_1=\ldots=\lambda_k=0\),则向量 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k\) 是线性无关的。

线性无关是线性代数中最重要的概念之一。直观上,一组线性无关的向量由没有冗余的向量组成,即,如果我们从集合中移除任何一个向量,我们将失去一些东西。在接下来的章节中,我们将更正式地讨论这一直觉。

注释 以下性质对于判断向量是否线性无关是有用的:

  • \(k\) 个向量要么线性相关,要么线性无关,没有第三种可能。

  • 如果向量 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k\) 中至少有一个是零向量 \(\mathbf{0}\),那么它们是线性相关的。如果有两个向量相同,也成立。

  • 向量 \(\left\{\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k : \boldsymbol{x}_i \neq \mathbf{0}, i=1, \ldots, k\right\}, k \geqslant 2\) 是线性相关的,当且仅当(至少)其中一个是其他向量的线性组合。特别地,如果一个向量是另一个向量的倍数,即 \(\boldsymbol{x}_i=\lambda \boldsymbol{x}_j, \lambda \in \mathbb{R}\),那么集合 \(\left\{\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k : \boldsymbol{x}_i \neq \mathbf{0}, i=1, \ldots, k\right\}\) 是线性相关的。

  • 检查向量 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k \in V\) 是否线性无关的一种实用方法是使用高斯消元法:将所有向量作为矩阵 \(\boldsymbol{A}\) 的列,并进行高斯消元,直到矩阵处于行阶梯形态(这里不需要行简化阶梯形态(reduced row-echelon form)):

    • 枢轴列(pivot columns)表示与其左边的向量线性无关的向量。注意,在构建矩阵时向量是有顺序的。
    • 非枢轴列可以表示为左边枢轴列的线性组合。例如,行阶梯形态
    \[\left[\begin{array}{lll}
    1 & 3 & 0 \\
    0 & 0 & 2
    \end{array}\right]
    \]

    告诉我们第一列和第三列是枢轴列。第二列是非枢轴列,因为它是第一列的三倍。

所有列向量是线性无关的当且仅当所有列都是枢轴列。如果至少有一个非枢轴列,则这些列(因此,相应的向量)是线性相关的。

注释 考虑一个向量空间 \(V\),其中有 \(k\) 个线性无关的向量 \(\boldsymbol{b}_1, \ldots, \boldsymbol{b}_k\) 和 \(m\) 个线性组合

\[\begin{gathered}
\boldsymbol{x}_1=\sum_{i=1}^k \lambda_{i1} \boldsymbol{b}_i, \\
\vdots \\
\boldsymbol{x}_m=\sum_{i=1}^k \lambda_{im} \boldsymbol{b}_i .
\end{gathered}
\tag{2.7.0}
\]

定义 \(\boldsymbol{B}=\left[\boldsymbol{b}_1, \ldots, \boldsymbol{b}_k\right]\) 为一个矩阵,其列是线性无关的向量 \(\boldsymbol{b}_1, \ldots, \boldsymbol{b}_k\),我们可以更紧凑地写成

\[\begin{gathered}
\boldsymbol{x}_j=\boldsymbol{B} \boldsymbol{\lambda}_j, \quad \boldsymbol{\lambda}_j=\left[\begin{array}{c}
\lambda_{1j} \\
\vdots \\
\lambda_{kj}
\end{array}\right], \quad j=1, \ldots, m,\\
\end{gathered}
\tag{2.7.1}
\]

我们想要检验 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_m\) 是否线性无关。为此,我们遵循检验 \(\sum_{j=1}^m \psi_j \boldsymbol{x}_j=\mathbf{0}\) 的一般方法。通过 (2.71),我们得到

\[\sum_{j=1}^m \psi_j \boldsymbol{x}_j=\sum_{j=1}^m \psi_j \boldsymbol{B} \boldsymbol{\lambda}_j=\boldsymbol{B} \sum_{j=1}^m \psi_j \boldsymbol{\lambda}_j .
\tag{2.7.2}
\]

这意味着当且仅当列向量 \(\left\{\boldsymbol{\lambda}_1, \ldots, \boldsymbol{\lambda}_m\right\}\) 是线性无关的, \(\left\{\boldsymbol{x}_1, \ldots, \boldsymbol{x}_m\right\}\) 是线性无关的。

注释:在一个向量空间 \(V\) 中,\(m\) 个由 \(k\) 个向量 \(\boldsymbol{x}_1, \ldots, \boldsymbol{x}_k\) 线性组合而成的向量是线性相关的,如果 \(m>k\)。

阅读翻译Mathematics for Machine Learning之2.5 Linear Independence的更多相关文章

  1. How do I learn mathematics for machine learning?

    https://www.quora.com/How-do-I-learn-mathematics-for-machine-learning   How do I learn mathematics f ...

  2. machine learning(14) --Regularization:Regularized linear regression

    machine learning(13) --Regularization:Regularized linear regression Gradient descent without regular ...

  3. Note for video Machine Learning and Data Mining——Linear Model

    Here is the note for lecture three. the linear model Linear model is a basic and important model in ...

  4. Machine Learning - week 2 - Multivariate Linear Regression

    Multiple Features 上一章中,hθ(x) = θ0 + θ1x,表示只有一个 feature.现在,有多个 features,所以 hθ(x) = θ0 + θ1x1 + θ2x2 + ...

  5. Andrew Ng 的 Machine Learning 课程学习 (week2) Linear Regression

    这学期一直在跟进 Coursera上的 Machina Learning 公开课, 老师Andrew Ng是coursera的创始人之一,Machine Learning方面的大牛.这门课程对想要了解 ...

  6. 【机器学习|数学基础】Mathematics for Machine Learning系列之线性代数(1):二阶与三阶行列式、全排列及其逆序数

    @ 目录 前言 二阶与三阶行列式 二阶行列式 三阶行列式 全排列及其逆序数 全排列 逆序数 结语 前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出-   自我介绍 ...

  7. Machine Learning 学习笔记2 - linear regression with one variable(单变量线性回归)

    一.Model representation(模型表示) 1.1 训练集 由训练样例(training example)组成的集合就是训练集(training set), 如下图所示, 其中(x,y) ...

  8. [Machine Learning] 单变量线性回归(Linear Regression with One Variable) - 线性回归-代价函数-梯度下降法-学习率

    单变量线性回归(Linear Regression with One Variable) 什么是线性回归?线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方 ...

  9. 【机器学习Machine Learning】资料大全

    昨天总结了深度学习的资料,今天把机器学习的资料也总结一下(友情提示:有些网站需要"科学上网"^_^) 推荐几本好书: 1.Pattern Recognition and Machi ...

  10. 机器学习(Machine Learning)&深度学习(Deep Learning)资料

    <Brief History of Machine Learning> 介绍:这是一篇介绍机器学习历史的文章,介绍很全面,从感知机.神经网络.决策树.SVM.Adaboost到随机森林.D ...

随机推荐

  1. linux file命令查看文件类型

    在linux系统中,linux是不根据后缀名识别文件类型的,所以使用file命令查看文件的类型. [root@node5 ~]# file /etc/shadow /etc/shadow: ASCII ...

  2. 使用SQL语句完成数据表的去重工作

    引入问题 可能大家都遇到过这样一种情况,一张表存在若干行数据,只是主键值相同,但是其它字段都是相同的,这就是我们通常所说的数据库重复数据,那我们是如何将这些数据删除呢?现在我们就介绍一种方法来实现数据 ...

  3. WPF之单例模式

    项目 2019/10/09   问题 2019年10月9日星期三 上午2:46 1.为了实现单例模式,在App类中添加了如下代码,使用了信号量,但是为什么返回;isNew一直为true public ...

  4. linux ssh key 登录

    vim /etc/ssh/sshd_config #禁用root账户登录,非必要,但为了安全性,请配置 PermitRootLogin no # 是否让 sshd 去检查用户家目录或相关档案的权限数据 ...

  5. MAPJOIN中无法使用UDF

    今天在写SQL时,遇到了一个异常,提示semantic exception generate map join error unable to find class,udf编写的没毛病,其他SQL也有 ...

  6. Mysql联合索引生效、失效条件

    引言 联合索引又叫复合索引.两个或更多个列上的索引被称作复合索引. 对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分.例如索引是key inde ...

  7. golang reflect 反射机制的使用场景

    Go语言中的 reflect 包提供了运行时反射机制,允许程序在运行时检查和操作任意对象的数据类型和值. 以下是 reflect 包的一些典型使用场景: 1. 动态类型判断与转换:当需要处理多种类型的 ...

  8. Java正则表达式语法及简单示例

    import java.util.regex.Matcher; import java.util.regex.Pattern; public class TestMatcher { public st ...

  9. java rabbitmq模拟生产者,消费者demo

    1.exchange类型,rabbitmq交换机类型 exchange类型fanout 扇形交换机,它会把所有发送到该交换机的消息路由到所有与该交换机绑定的队列中.direct 直连交换机,它会把消息 ...

  10. Prometheus监控系统(二)Prometheus部署与使用

    1. Prometheus安装 官网:https://prometheus.io/ 下载地址:https://prometheus.io/download/ Prometheus基于Golang编写, ...