令我惊讶的是下面的回答几乎都是与应用相关的,很少有人从纯数学的角度来讲矩阵的用处的。我在这里补上一个,从纯数学角度来说,我们为什么需要矩阵?
以下内容部分来自Linear Algebra Done Right以及我的笔记。
大家都知道线性代数的研究对象是线性变换。简单来说,对于 (一个域,可以想象成 或者 ),以及两个向量 (一个向量空间),如果 有以下性质:
那么就称 是一个线性变换。或者等价的,需要有 。我们现在深入来研究一下这个线性变换。对于这两个向量空间 ,我们可以引入两组基: 是 的一组基, 是 的一组基。那么现在 中的所有向量都可以用其基向量的线性组合表示,且这个表示是唯一的。
我们要怎么样才能算“很了解”这个线性变换 呢?理想的情况下,给定任意的 , 我可以写成 ,我希望给定任意的 ,我都可以将它被变换后的向量 用 的基向量的线性组合表示出来。为了达到这个目的,我最少需要什么信息?根据线性变换的性质,我知道 ,也就是说我只要知道 怎么用 基向量的线性组合表示出来就行了。我们就从这里开始:
现在假设我知道这些信息:
接下来的计算就很容易了:
于是对于每一个线性变换 ,选定了基向量 定义一个方阵 ,其中第 行第 列是 用 的基的线性组合表示中, 前面的系数,也就是 ,如图所示:
相当于这个方阵中包含了 的所有信息。这就是定义矩阵的一种思路。虽然刚开始数学家是为了解方程定义的矩阵(高赞答案讲了),但是在数学上,我认为比较自然的定义是这种方式。
矩阵乘法的定义是为了符合线性变换的性质。给定一个线性变换 ,形式上我们有 ,其中 同样的,我们希望如果把 写成列向量的形式,我们有 . 如果我们把矩阵和向量的乘法定义为 的话,我们达到了目的。
如果两个矩阵相乘,对应的就是两个线性变换的复合,我们希望如果 ,那么 . 那么自然的定义就是 .
最后,知乎编辑器真的是个废物,西内。
中国高等教育的数学课都是数学系老师教的,乍一看天经地义,但实则数学系老师只会用纯数学的思维教课,只说定义、性质,再用剩下的两节课证明性质,从不说这些花花绿绿公式是干什么用的,才会催生出一大批和题主一样的对学数学产生怀疑的人。
数学是可以用并且非常实用的学科!
尤其是矩阵
先说最简单的灰度图,图像是由一个个小像素点行列排列组成的,每个像素点由数值大小代表不同颜色(黑白灰),那么图片天然就可以用一个矩阵表示。把一张黑色的图片和一张白色的图片掺杂变成灰色的图片,说白了就是(1+0)/2=0.5的过程,矩阵表示为:
如果不用矩阵:
`
`
一张图怎么也得几百个像素点吧。这还只是黑白灰图片,彩色图片是由红绿蓝三个通道组成的,那就是三维矩阵了,换成普通表达式又得翻3倍。
小米发布了一亿像素的手机,不知道题主对一亿有没有概念,如果铺成可爱的脖子长长的小动物可以绕内心一圈。
但矩阵表达式永远都是简单的(再写一遍):
老师肯定讲过特征值分解后,较大的几个特征值包含了原矩阵更多的信息,剩下的几个特征值越小,对原矩阵贡献越小。
基于此,对于一张一亿像素的图片,应该可以理解保存在磁盘上是非常大的一个文件,进行奇异值(只有方阵才有特征值,非方阵叫奇异值)分解后,只留下特征值较大的,以及对应的特征向量,剩下的全部扔掉,就可以完成图像压缩,减小磁盘占用,而不影响图片的辨识度。
如果不用矩阵。。。想不出来了,大概就像按元素写SVD分解吧,可能类似给一亿只小动物逐个起名字吧。
机器人坐标变换尽管烂大街了,鉴于读者专业不同,说个容易理解的:卫星在太空把天线朝向从西安转移对准北京(这里只是用来说明旋转变换的容易理解的例子,真实航空航天是怎样算的并不知道):
其中R是旋转矩阵, 为卫星当前朝向向量(对准西安), 为目标朝向向量(对准北京)。
在这里不严格推导了,我们定性分析一下,绕空间三个自由度旋转,每个坐标旋转后都会影响下一个坐标位置的选取,所以数学上就是一大堆三角函数相乘,类似于:
x、y、z为朝向向量v的三个方向分量。
线性回归常用公式,表面看似简单的公式,但里面包含了数个求和符号:和的平均、平方和的平均、和的平方的平均、积的和的平均,和的积的平均,当时为了算这个公式内心不知跑过多少长脖子的小动物。之后有了多元函数、高次函数拟合同样是基于最小二乘原理,更加mmp。但他的矩阵形式:
内心的小动物瞬间安静了。
这个在优化问题比较常见,比如初中就学过开口向上的二次函数最小值在槽底,但如果限定x取值范围的话,槽底可能根本不在所规定的可行域范围内。
如果不是初中的二次函数,而是高维空间,自变量有上百个,他的可行域空间约束:
`
`
写成矩阵:
搞定。
卡尔曼滤波是控制理论对系统状态估计最常用的方法,矩阵形式:
其中中有一个求增益K的公式,也就是第三个公式,注意分母也是矩阵(众所周知矩阵不存在除法,分母实际是右乘他的逆)
如果不用矩阵,其他几个公式尚且可以按元素乘开,但唯独这个K,总不能把矩阵求逆按元素展开写进代码里吧,那样心里可就不止几只可爱的小动物那么简单了。。。
此处,本人尚且不知道如何不用矩阵来表达卡尔曼滤波,欢迎交流。
===========
作者开始学线代的时候也在怀疑矩阵有什么用,依稀记得书上说特征值在工、医、化、生、经等各个学科有极其广泛的应用,但无论是课本还是数学系老师对这个''极其广泛''到底怎么广泛却只字不提。等到后来实践接触越多,才发现矩阵理论真如王八拳一样可以打遍天下无敌手,但因为数学系老师当初的填鸭教育,好多东西必须回头再学一遍。
因此在此对矩阵理论产生怀疑的读者们保证一句:矩阵理论,绝对有用,绝对好用。
数学有一个特点,它可以完成数学体系内的自洽而不与外部世界发生交集,其他学科诸如物理化学计算机医学生物历史经济等,则必须依靠现实世界进行推演,马克思说万物都是物质的,但数学除了要写在物质上要人理解以外,好像真的可以完全脱离物质。
数学系老师也有一个特点,他们追求纯数学里的自洽,沉浸在数学性质证明上,而完全脱离数学性质在现实世界的应用。
小学学数学,是和小明小红一起度过的。
大学学数学,只能和内心的脖子长长的小动物一起度过了。
希望工科数学改革,让工科系老师教数学。哪怕让小明和小红回来也好哇。
=========
哈哈哈哈,已经越来越多的人开始同情背锅的数学系老师了。我必须澄清一下,我认为理论数学是极其具有前瞻性的学科,量子物理的发展就以早就存在但当时看似无用的理论数学为基础的。研究理论数学的人更是这个星球上最聪明的人的集合。我吐槽的是高等教育数学课的教学模式,毕竟教学大纲里没有数学应用人家老师自然也不必讲。
张跃辉老师那本《矩阵理论与应用》每一章最后一节都在写本章内容的实际应用,可上课的老师只会背对讲台在那里证明性质123而绝口不提应用123。不能说数学系老师不懂工科应用,因为考试大纲里没有啊,正课都讲不完还拓展什么?应用书上有写你自己去看就好了啊?
话说回来,雪崩前没有一片雪花是无辜的。但前边性质推导我也能自己看也不用讲啊?正是因为学生缺乏实践经验,所以应用部分才需要有经验的人来讲啊?
我计算方法那门课老师是工科背景的,微分方程旁征博引,希望数学系老师都去听一听。
==================
祈求喜欢无脑喷的知友提升一下阅读理解能力 T_T,帮这类人概括一下中心思想:
当然绝大部分知友都是能够理解的,毕竟数学课不提原因就讲性质转眼就考试太有共鸣了。
===============
哈哈哈哈哈,数学系教学只做定义、性质证明,绝不画图、绝不讲应用、绝不用正常逻辑的万人吐槽现场: