我并非所谓非常优秀,非常聪明的人,到目前为止我都是这么给自己定位的。正因为我 们不是天才,我们需要用自己堆砌的学习时间、做过的题目、大量的思考、虚心的请教与熬 过的夜,来达到强者可能轻而易举就能达到的高度。但请不要放弃。 我大一读的是英语专业,我是省内的考生,高中学的是政治、历史与技术。我高中对于 数学这门科目是敬而远之,亦或是蹒跚前行,每当遇到解析几何题目、导数题目我便觉得我 是生来不懂数学的人,我高考数学也刚刚过百。但还是,请不要放弃。我大二转到了计算机 专业,迎接我的是大量的补课,高等数学、线性代数、大学物理、C 语言、数据结构、离散 数学、Python……转来的第一个学期,我选择了补修了线代,可惜这与我原本的课程冲突了, 因此无法听老师讲课,完完全全只能靠自己。有幸的是,我遇到了对于补修同学非常关心, 讲课也非常细心的曹老师。虽然我只去了最后一堂复习课,但能感受到老师把我所学的东西 串了起来,做了非常好的总结。
自学一方面是迫于无奈,然而,对于大学生而言,自学也是非常重要的能力,甚至可以 说是大学四年一直需要培养的能力。对于线性代数,大家都说他简单,但是当我学习时候, 我却觉得它比高数还要难。以下是我学习线性代数的心得。 9 月份开学,在第二周的时候 21 级新生结束了军训,教务处也通知我们转专业的同学 去申请补修课程。想着数学是必修课,并且对于计算机专业也非常重要,我第一个学期便申 请了这门课。由于课程多,任务紧,我并没有一开始就着手学习线性代数,真正的开始,是 在十月份国庆节期间。这段时间,我只带了《线性代数》的书回家,打算期间 1.5 倍速过了 一遍 b 站上面宋浩老师的视频(总计 29 小时 41 分),国庆七天从早上起床一直看到睡觉。期 间也会有闷,不想学的情绪,这时候我会出门散散步,或者刷刷微博调节一下。我的策略是 七天内先过一遍整本书,假期结束后开始做题熟悉考试题目,最后跟着曹老师学习通上的总 结视频进行总结。但知道假期结束我也没有完成,开学后又抽空看完了最后一章特征值与特 征向量,才开始着手做题目。一共 9 次课后练习,题目并不难,大多是很寻常的基础题目, 我每天完成白天的学习任务后会从 11 点钟熄灯开始做线性代数,每天晚上一套。刚开始时 计算初等变化、行列式、求解线性方程组会非常慢,由于计算量大,其中一步出错便会步步 错,因此我在计算完一个小阶段之后会看答案对不对,如果不对会从头检查,直到对了才继 续往下做。到了后来,我变成了每一步都计算两次,两次对照可以大幅度减少答案出错的概 率。
此外,要学会利用课本以外的资源。线性代数不比高数、概率论,它在空间几何层面有 非常良好的展现。虽然一开始它是用来求解方程的工具,但将它放在线性空间中你会有非常 惊讶的发现,甚至感叹数学简直是神造学科。在这里,就要推荐 3Blue1Brown 的视频了,这 是曹老师一开始就推荐的,也是知乎上普遍推荐的一门课。它时间不长,十几个视频一集十 几分钟,从空间的角度解释线性代数中的矩阵的概念、行列式的几何意义、特征值与特征向 量……认真看完他的视频将会从空间角度理解线性代数中的许多概念,在后来的做题中我也 会从空间角度思考这么做的意义,思考如何把全是字母的题面解释成空间意义。但是这么做 并不会提高你的计算能力,实际的计算还要动笔算,空间理解只能说是帮助你理解它的内涵, 辅助更好地理解这门学科。此外,多阅读一些其他资料也会有很大的帮助,比如一开始我并 不理解何谓特征值,何谓特征向量。在 Gilbert Strang 所著的《Introduction to Linear Algebra》 中有这么一段话:
“To explain eigenvalues, we first explain eigenvectors. Almost all vectors change direction, when they are multiplied by A. Certain exceptional vectors x are in the same direction as Ax. Those are the "eigenvectors". Multiply an eigenvector by A, and the vector Ax is a number λ times the original x. The basic equation is Ax=λx. The numberλis an eigenvalue of A.”
这段话很清楚地解释了这一概念:当对一个向量做线性变化后(在这里是左乘一个矩阵), 这个向量通常会改变它的方向,而当它左乘一个特定的矩阵后,它并没有改变方向,而是还 在原来的位置,只不过被拉伸或收缩了λ倍,也就是说新向量 = λX。公式也解释了这个现 象: AX(向量左乘矩阵 A), 等于λ倍的 x。当你理解了之后会觉得这很浅显,但没有人告 诉你这个现象时这会犹如天书,毕竟我们都不是数学天才。
总而言之,学好线性代数并不是很困难,困难的是在这条路上能坚持走下去,自己的热 情不被消磨。 如果你是计算机专业或数学相关专业,想学习计算机视觉、游戏制作、机器学习等方向, 线性代数会非常重要,学好它是你的职责。比如你在概率论的最后一章会学到一元线性回归, 你会学习用直线去拟合数据。可惜我们学校不会考察你回归方程参数的计算,也不考你代码 实现,甚至不会考你多变量的回归(实际问题几乎都是多元的),此时解决多变量回归问题 的正规方程做法便是计算样本值组成的矩阵方程,其中会涉及矩阵的逆、转置、求导等等, 我也还在学习的路途当中。你会理解在实践运用中,若你的矩阵出现了先线性相关的向量, 那么这个向量对于你的模型建立没有任何帮助,此时需要对你的数据进行处理。学习线性代 数,并且运用它,是让你的知识永葆新鲜的一个重要途径,才不会让你的知识考完试便还给老师。
若你今后不从事相关职业或对于线性代数丝毫提不起兴趣,那也没关系,毕竟不是所有 人都要掌握这门课。你只需要跟着老师好好听课,好好做作业,通过线性代数锻炼自己的数 理思维,这些隐性的思维会在你需要的时候默默帮助你。如果你追求绩点就好好学考一个高 分(通常来说平时认真学了期末是完全不用担心的)。如果你不追求绩点,那么你可以去做 自己喜欢的事,把时间放在你认为重要的专业课上面,不要让你的线性代数拖你的后腿,期 末不要挂科。正常来讲,线性代数你只要掌握它的基本计算,计算不出错,期末都能拿到一 个很可观的成绩。
最后,一定要看曹老师的总结视频或者认真听复习课程。网络上有很多优质的资源,但 是能像曹老师一样面面俱到,把整本书知识串联起来讲得非常清楚的课却不多。计算细心, 态度端正,目标明确,我相信每个人都能学好这门课,哪怕你是个恐惧数学的学生。
XXX
二〇二二年一月二十二日晚
时XX依畔细雨潺潺