计算机公共课面试常见问题:线性代数篇

目录

1. 特征向量和特征值代表什么含义?                                         

2. 矩阵的秩是什么?满秩代表什么?不满秩呢?                           

3. 奇异值分解是什么?                                                           

4. 正定矩阵是什么?                                                             

5. 相似矩阵是什么?                                                             

6. 什么是线性相关?什么是线性无关?                                      

7. 正交矩阵是什么?                                                             

8.线性空间是什么?                                                               

9.矩阵如何求逆?                                                                  

10.两个矩阵A、B,什么情况下AB = BA                                              

11.什么是矩阵的迹,什么是矩阵分解(奇异值分解)                     


1. 特征向量和特征值代表什么含义?                                         

 一句话解释矩阵可以看作是线性变换,那么特征值就是变换的幅度

特征向量就是变换的方向矩阵的特征向量是这样的向量:矩阵作用于该向量后,向量保持方向不变,进行某一比例的伸缩变换,而这个比例就是特征值。

 因此,特征值与特征向量的关系就是,特征值与特征向量进行数乘操作后所得的向量,和矩阵对该向量进行变换后所得向量相同。

 因此特征值的含义就是和矩阵具有同等变换效果的常数,而特征向量就是与矩阵作用之后能够保持方向不变的向量。

 应用:特征值可以用于奇异值分解(SVD)、主成分分析(PCA)。

2. 矩阵的秩是什么?满秩代表什么?不满秩呢?                           

关于矩阵的秩有很多种理解方式,下面我谈一下在我的学习过程中对矩阵的秩的一些理解。

极大线性无关组的角度出发

将矩阵按列分解为 n 个向量,组成一个向量组,则这个向量组的一个极大线性无关组中包含向量的个数 r 称为矩阵的行秩。同理可定义列秩,可证列秩 = 行秩。

线性方程组的角度出发

我们可以把矩阵构造成一个线性方程组,但是里面可能会有一些重复冗余的方程,那我们把这些没用的方程去掉之后, 后剩下的方程个数就是秩。

线性方程组中真正是干货的方程个数,就是它对应矩阵的秩。

向量空间的角度出发

秩是图像经过矩阵变换之后的空间维度。

比如原始图像是一个二维的,经过一个旋转矩阵进行变换之后,得到的图像是一个二维图形,所以旋转矩阵的秩就是2。而如果通过 [[1, -1], [1, -1]] 这个矩阵进行变换,得到的图像是一条一维直线,所以这个矩阵的秩就是1。

满秩和不满秩

线性方程组的角度出发

满秩解出的是唯一解;不是满秩的话,解出的就是集合了。

向量空间的角度出发

对于一个满秩变换来说,变换之后空间维度保持不变。

对于一个非满秩变换来说,它会把空间压缩到一个更低的维度上。

3. 奇异值分解是什么?                                                           

     SVD 的公式

如果 M 是一个实数域上的 m × n 的矩阵,那么 M 就存在奇异值分解

其中 U 是 m 阶的正交矩阵,V 是 n 阶的正交矩阵,而 Σ 是一个 m × n 的对角矩阵,它对角线上的元素就是奇异值,并且是按照从大到小的顺序排列的。

     SVD 的几何意义

在几何上看,SVD 分解就可以看作是将一个矩阵首先进行旋转,然后拉伸,然后再旋转的的操作。

SVD 的作用

在拿到了矩阵 M 的奇异值分解之后,我们可以把它展开成 $\sigma _i u_i v_i ^T$ 的形式。

其中奇异值 σ 的大小表示它所对应的矩阵在整体展开式当中的重要性,奇异值越大,就越重要。

在很多情况下,前 10%(甚至更少)的奇异值就占到总体的 99% 了,也就是说,我们也可以用 大的前 k 个的奇异值和它所对应的矩阵来近似描述原始矩阵。

SVD 的应用

图像压缩:将原始图像的矩阵进行 SVD 分解,只保留前 k 个 大的奇异值,这样的话就保留了图像的主要信息,从而大大减小图像存储的内存需求。这也可用于图像去噪,因为小的奇异值一般对应着噪声。

   PCA 降维:数据降维。在损失信息较小的情况下,降低数据存储空间,提高后续的机器学习算法速度。同时还能够把真正有用的信息和特征提取出来,便于我们进行分析。

4. 正定矩阵是什么?                                                             

判断方法

求出矩阵的所有特征值,若特征值都是 > 0,则矩阵是正定的。

计算矩阵的各阶顺序主子式,如果各阶顺序主子式都 > 0,则矩阵是正定的。

正定矩阵的应用

每一个二次型都唯一对应一个对称矩阵 A,只要 A 是正定的,那么这个函数的二阶导就是正定的,这就可以得出 f(x) 是一个凸函数,意味着 f(x) 的极值就是极小值,并且是全局的 小

值。这个在优化问题、机器学习是非常有用的性质,它可以避免我们得到了驻点,但不是全局小值的情况。

 如果 A 是半正定的,那么 小值就不唯一;如果 A 是不定的,没有 小值。所以说当 A 不是正定的情况下, 问题就会复杂一些,所以我们希望这个A是正定的,此时 小化 f(x) 的值就等价于求解一个线性方程组,而后者的理论是非常丰富的。

 从系统角度看,如果一个矩阵是正定的,那么我们可以简单理解这个系统拥有全局 小值。而绝大部分问题都可以抽象为解决一个优化问题,如果能证明或者将问题用正定矩阵表示,那么从理论上该问题便拥有全局 优解。而如果拥有全局 优解,我们就能采用很多成熟的方式来求解 优值,这也是机器学习、优化问题 喜欢去研究和解决的情况。

5. 相似矩阵是什么?                                                             

 相似矩阵的定义

设 A, B 都是 n 阶矩阵,如果存在可逆矩阵 P,使得 P^-1^AP = B,那么就说 B 是 A 的相似矩阵,或者说 A 和 B 是相似的。

相似矩阵的理解

我们知道,每一个矩阵实际上是对应于一种线性变换。

对于同一个线性变换,在不同基下进行描述的不同矩阵,彼此之间称为相似矩阵。

 假如说在基 (i, j) 下,向量 x 通过矩阵 A 的线性变换之后得到的新向量为 x'。另一方面,我们也可以先通过一个矩阵 P,把向量 x 换到基 (i', j') 下来表示,这时在新的基下,用来表示上面同一个空间变换的是另一个矩阵 B,它同样也是把向量从x 变换到了 x',只不过是在另一个坐标系下完成的。因为 终我们还是需要在原坐标系下讨论问题,所以这个时候我们再把向量从

(i', j') 这个基再换回到原来的 (i, j),也就是左乘一个 P 的逆矩阵。那么这个就是相似矩阵定义的由来。

在实际使用中,可以尝试把 普通的非对角矩阵 转换为 和它相似的对角矩阵 来进行处理,从而简化我们的计算过程。

6. 什么是线性相关?什么是线性无关?                                      

在一个向量组中,如果其中存在某个向量可以表示成其他向量的线性组合,那就称该向量组线性相关,反之称为线性无关。

通俗地说就是向量组里如果有向量可以被其他向量表示出来,说明它就是多余的,那么此时就是线性相关。

7. 正交矩阵是什么?                                                             

 正交矩阵的定义

如果 n 阶方阵 A 满足

我们就称 A 为正交矩阵。

 正交矩阵的性质

  1. 正交矩阵的每一行都是单位行向量,每一列都是单位列向量。
  2. 正交矩阵的任意两行(列)都是正交的,也就是垂直的。
  3. 正交矩阵的行列式的值为 1 

 

8.线性空间是什么?                                                               

线性空间(Linear Space)是线性代数和数学中的一个概念,通常指的是由向量构成的集合,满足一系列线性性质的数学结构。线性空间也被称为向量空间(Vector Space),它是抽象代数的一部分,用于研究线性关系和线性变换。

 

9.矩阵如何求逆?                                                                  

 

10.两个矩阵A、B,什么情况下AB = BA                                              

如果A,B互逆,则AB=BA

 

在矩阵乘法中,两个矩阵A和B满足A * B = B * A 的情况非常有限。这个等式成立的情况通常是当A和B都是对角矩阵

对角矩阵(Diagonal Matrix):

对角矩阵是指只有主对角线上的元素非零,其他元素都是零的矩阵。

如果两个矩阵A和B都是对角矩阵,并且它们的主对角线上的元素相同,那么A * B = B * A。

这是因为对角矩阵的乘法不受矩阵乘法的交换法则影响,只要主对角线上的元素相同,乘法结果是相同的。

 

11.什么是矩阵的迹,什么是矩阵分解(奇异值分解)                     

矩阵的迹(Trace)

矩阵的迹是指矩阵主对角线上元素的和。如果有一个n x n的矩阵A,其迹记为Tr(A),计算方式如下:

Tr(A) = a₁₁ + a₂₂ + a₃₃ + ... + aₙₙ

其中,a₁₁、a₂₂、a₃₃等表示矩阵A主对角线上的元素。

矩阵的迹在线性代数中具有多种应用,例如计算矩阵的行列式、计算矩阵的特征值等。它还具有一些有趣的性质,例如Tr(A + B) = Tr(A) + Tr(B)和Tr(AB) = Tr(BA),其中A和B是可相乘的矩阵。

矩阵分解(Matrix Decomposition)

矩阵分解是将一个复杂的矩阵拆分成多个较简单矩阵的过程,这些较简单的矩阵通常具有一些特殊的性质,使得它们更容易分析和处理。常见的矩阵分解方法包括:

  1. 奇异值分解(Singular Value Decomposition,SVD):将一个矩阵分解为三个矩阵的乘积,其中一个是正交矩阵,一个是对角矩阵,另一个是正交转置矩阵。SVD在数据降维、图像处理等领域广泛应用。
  2. QR分解:将一个矩阵分解为一个正交矩阵Q和一个上三角矩阵R的乘积。QR分解用于线性回归和小二乘问题的求解。
  3. LU分解:将一个矩阵分解为一个下三角矩阵L和一个上三角矩阵U的乘积。LU分解用于解线性方程组。
  4. 特征值分解(Eigenvalue Decomposition):将一个矩阵分解为一个特征向量矩阵和一个对角矩阵,其中对角矩阵的元素是矩阵的特征值。特征值分解用于寻找矩阵的特征值和特征向量。

这些矩阵分解方法有助于简化复杂矩阵的分析和处理,同时提供了一些重要的数学工具,用于解决线性代数和数值计算中的问题。它们在数据分析、信号处理、机器学习等领域都有广泛的应用。

生活有意思的点就在于未知的某些时刻,你准备去a的时候,可能会遇到b,聊到c,想到d,然后一起去找了e 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/366474.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【图像处理实战】去除光照不均(Python)

这篇文章主要是对参考文章里面实现一种小拓展: 可处理彩色图片(通过对 HSV 的 V 通道进行处理)本来想将嵌套循环改成矩阵运算的,但是太麻烦了,而且代码也不好理解,所以放弃了。 代码 import cv2 import …

Python 获取字典中的值(八种方法)

Python 字典(dictionary)是一种可变容器模型,可以存储任意数量的任意类型的数据。字典通常用于存储键值对,每个元素由一个键(key)和一个值(value)组成,键和值之间用冒号分隔。 以下是 Python 字典取值的几…

数据结构-线性表的链式表示

目录 前言一、线性表的链式表示和实现1.1 线性表的表示1.2 基本操作的实现1.3 线性表的链式表示的优缺点 总结 前言 本篇文章主要介绍线性表的链式表示 一、线性表的链式表示和实现 1.1 线性表的表示 线性表的链式表示又称为链式存储结构或链式映像 链式存储定义&#xff1…

MATLAB将两个折线图画在一个图里

界面如图 输入行数和列数,点击开始填入数据,其中第一列为x值,后面几列,每一列都是y坐标值,填好后点击画在同一张图里即可。点击置零就把所有数变成0,另外也可以选择节点样式。 .mlapp格式的文件如下 夸克…

【MotionCap】ImportError: cannot import name ‘packaging‘ from ‘pkg_resources‘

ImportError: cannot import name ‘packaging’ from ‘pkg_resources’ 降低setuptools的版本 参考大神:(ai-mocap) zhangbin@ubuntu-server:~/proj/04_mocap/third-party$ pip install -e neural_renderer

C# 验证PDF数字签名的有效性

数字签名作为PDF文档中的重要安全机制,不仅能够验证文件的来源,还能确保文件内容在传输过程中未被篡改。然而,如何正确验证PDF文件的数字签名,是确保文件完整性和可信度的关键。本文将详细介绍如何使用免费.NET控件通过C#验证PDF签…

OpenCV 车牌检测

OpenCV 车牌检测 级联分类器算法流程车牌检测相关链接 级联分类器 假设我们需要识别汽车图像中车牌的位置,利用深度学习目标检测技术可以采取基于锚框的模型,但这需要在大量图像上训练模型。 但是,级联分类器可以作为预训练文件直接使用&…

C++ 106 之 list容器

#include <iostream> #include <string> using namespace std; // #include <vector> // 容器头文件 #include <algorithm> // 标准算法头文件 #include <list>void printList(const list<int> & list1){for(list<int>::const…

【ai】ubuntu18.04 找不到 nvcc --version问题

nvcc --version显示command not found问题 这个是cuda 库: windows安装了12.5 : 参考大神:解决nvcc --version显示command not found问题 原文链接:https://blog.csdn.net/Flying_sfeng/article/details/103343813 /usr/local/cuda/lib64 与 /usr/local/cuda-11.3/lib64 完…

【C++】string类的模拟实现

文章目录 string类的存储结构默认成员函数构造函数析构函数拷贝构造函数赋值重载 容量操作size()capacity()reserve()resize()clear() 遍历与访问operator[ ]迭代器范围与for 增删查改push_back()pop_back()append()operatorinsert()erase()c_str()find()substr() 非成员函数op…

VisualRules组件功能介绍-计算表格(二)

本章内容 1、计算表格数据回写数据库 2、计算表格数据更新 3、计算表格数据汇总 4、计算表格数据追加 一、计算表格数据回写数据库 计算表格数据回写数据库表。采用遍历计算表格逐条插入数据库表。在具体操作过程可以采用向导方式操作。 先在数据库表中创建tb_user_new表。…

python-糖果俱乐部(赛氪OJ)

[题目描述] 为了庆祝“华为杯”的举办&#xff0c;校园中开展了许多有趣的热身小活动。小理听到这个消息非常激动&#xff0c;他赶忙去参加了糖果俱乐部的活动。 该活动的规则是这样的&#xff1a;摊位上有 n 堆糖果&#xff0c;第 i 堆糖果有 ai​ 个&#xff0c;参与的同学可…

让采购和工程师们既爱又恨的任务——BOM

在项目研发与生产过程中&#xff0c;有一个常常让采购经理和工程师们既爱又恨的任务&#xff0c;那就是整理BBOMB。BOM作为连接设计与制造的桥梁&#xff0c;其重要性不言而喻&#xff0c;它详细列出了产品构成所需的所有零部件、材料及其规格、数量&#xff0c;是成本估算、采…

用四个场景案例,分析使用大模型对程序员工作的帮助提升_大模型应用场景

引言 随着人工智能技术的不断发展&#xff0c;大模型在软件开发中的应用越来越广泛。 这些大模型&#xff0c;如GPT、文心一言、讯飞星火、盘古大模型等&#xff0c;可以帮助程序员提高工作效率&#xff0c;加快开发速度&#xff0c;并提供更好的用户体验。 本文将介绍我在实…

Unity海面效果——4、法线贴图和高光

Unity引擎制作海面效果 大家好&#xff0c;我是阿赵。 继续做海面效果&#xff0c;上次做完了漫反射颜色和水波动画&#xff0c;这次来做法线和高光效果。 一、 高光的计算 之前介绍过高光的光照模型做法&#xff0c;比较常用的是Blinn-Phong 所以我这里也稍微连线实现了一下 …

苍穹外卖项目 常用注解 + 动态sql

常用注解 常见的注解解析方法有两种&#xff1a; 编译期直接扫描&#xff1a;编译器在编译 Java 代码的时候扫描对应的注解并处理&#xff0c;比如某个方法使用Override 注解&#xff0c;编译器在编译的时候就会检测当前的方法是否重写了父类对应的方法。运行期通过反射处理&…

云数据中心运维新纪元:让Linux服务器如虎添翼

文章目录 一、Linux系统管理的高级技巧1. 性能调优与监控&#xff1a;2. 自动化与脚本编写&#xff1a;3. 文件系统与存储管理&#xff1a; 二、服务器配置优化的策略1. 硬件选型与配置&#xff1a;2. 网络配置与优化&#xff1a;3. 应用部署与调优&#xff1a; 三、安全策略的…

postgre事务id用完后,如何解决这个问题

在PG中事务年龄不能超过2^31 &#xff08;2的31次方2,147,483,648&#xff09;&#xff0c;如果超过了&#xff0c;这条数据就会丢失。 PG中不允许这种情况出现&#xff0c;当事务的年龄离2^31还有1千万的时候&#xff0c;数据库的日志中就会 有如下告警&#xff1a; warning:…

js获取当前浏览器地址,ip,端口号等等

前言&#xff1a; js获取当前浏览器地址&#xff0c;ip&#xff0c;端口号等等 window.location属性查询 具体属性&#xff1a; 1、获取他的ip地址 window.location.hostname 2、获取他的端口号 window.location.port 3、获取他的全路径 window.location.origin 4、获取…

【机器学习】基于层次的聚类方法:理论与实践

&#x1f308;个人主页: 鑫宝Code &#x1f525;热门专栏: 闲话杂谈&#xff5c; 炫酷HTML | JavaScript基础 ​&#x1f4ab;个人格言: "如无必要&#xff0c;勿增实体" 文章目录 基于层次的聚类方法&#xff1a;理论与实践引言1. 层次聚类基础1.1 概述1.2 距离…