UCB本科的(应用)数学系课程介绍

avatar 757948
blzzzzzz
5163
19
看地里面cs讨论的比较多,想给大家一点数学系的课的介绍.
作为一个菜鸡应数本科生,马上将要毕业,想给大家分享一下普通学生眼中UCB的应用数学系的课大概是咋样的.
首先我们学校数学系本科提供三个方向:纯数学,应用数学,数学(教育偏向).

纯数学就是和字面上一样比较理论,基本degree要求都是MATH的课. 应用数学选修课要求非常宽松,可以选物理,统计,CS...甚至还能自己创造选修课cluster. 因为选修课可以跟其他专业重合, 而且lower div的课也跟很多其他理工科专业重合, 所以应用数学也是很多厉害的同学经常顺带minor, double major或者triple major (比如经典的CS+applied math, physics+applied math等). 菜如本人也在应用数学之余修了个Japanese minor. 教育偏向不太了解.

关于在校的同学选课情报获取,一般来说有以下这些: discord(eecs discord server(eecs的人也会经常来上数学课), 数学系的musa社团有一个server), 中国学生社团公众号, 辅导员(系里advisor), 前辈, reddit..........很多东西可能隔个几年就不一样,所以实时情报最好多问问多搜搜. 一般来说哪个教授上更重要点.

课程地图: musa.berkeley.edu
关于H开头的课程: honors的对应课程一般人数更少,内容也更深入. 当然因为报honors的同学水平也都不会太差, 根据grading的标准可能压力会大一点. 体验上来说一般会比通常的课更好.
研究生课(课号>200): 一般来说研究生的课比本科生的课简单. 内容难度未必更简单, 但是一般给分比较宽松, 考试也不会特别刁难, 甚至开卷/take-home. 对于本科生来说多上研究生的课既能显得自己实力强, gpa也一般会比选本科生的课要好, 还能认识强大的朋友们. 有能力多选. (可惜我年轻的时候并不知道这一事实......)
暑假课:挺多都是研究生博士生或者讲师在教. 强度较高. 想要正经学好的话一般建议平常学期上. 暑期建议上一些质量稳定的大课, 或者压力不大的breadth.
暑假能上多少课?:大部分人一般在1-3门. 少部分强者会上4-5门. 再多上的好像也有,但是一般5门就20学分了, 再往上要申请. 虽然可以上很多课,但是相当不建议把暑假当一个学期来使.

这里大概介绍一下本科的必修课的个人感受 (只讲应用数学). 主要从内容角度讲.
首先我们lower div有以下这几门(课号小于100):
Mathematics 1A Calculus
Mathematics 1B Calculus
Mathematics 53 Multivariable Calculus
Mathematics 54 Linear Algebra & Differential Equations
Mathematics 55 Discrete Mathematics

1A 1B就是俗称的calc1,calc2. 我入学那会儿周围大部分中国学生都用AP waive了, 对于大部分中国学生来说53,54才是大学的开始(lol).但是因为我申请的时候太偷懒,AP没考好,还是去上了MATH1B.
这些lower div的课课本也基本上是不变的, 没记错的话微积分都是用stewart, 线性代数主要是Lay的缝合一点微分方程的内容,离散数学用Rosen, Discrete Mathematics and its Application .

这里吐槽一下,我们好几本书都有"Berkeley edition". 特别点名MATH54, 微分方程匆匆忙忙讲, 在Lay的课本上缝合了Nagle. 其实本质上跟原书区别不大.

1A, 1B, 53: 从内容上来讲这三个课基本上是哪个学校都有的, 东西也差不多. 教授就算水平差, 大家自学也不太成问题.

54: 我之前上过Lin lin的, 感觉还是挺不错的. 但是伯克利的54因为他还要讲微分方程(感觉真的就一丢丢微分方程,学了勉强能生活自理的那种). 根据教授有时候课程的架构会非常奇怪. 一般来说大部分教授的课都是从线性代数的内容讲起的, 但之前有个学妹跟我吐槽她的教授从微分方程开始, 然后通过微分方程引出linear mapping, 把很多人给整晕了. 总而言之, 单单从线性代数的角度来讲, 这门课还是比较好的引入. 微分方程想要学的全面得上其他课, 或者是多自学点. 微分方程数学系还有125(ODE), 126(PDE). 126因为物理专业需求比较大而且PDE研究的人挺多,暑假也会有.

55: 离散数学. 感觉东西有点杂七杂八. 具体可以看看Rosen的书. 记得开始是逻辑符号, 然后是函数集合定义, 之后是自然数质数还有余数等等性质, 最后有排列组合概率图论的一些内容. 总的来说就是非常杂, 但是都是之后上更难的课需要的内容.

lower div的这些课都是非常大的课,一般的学期里面整个lecture hall里面都是人. 因此对很多人体验一般不太好. 一般给学弟学妹会建议这些课上的越少越好. 尽量用upper div或者研究生的课去waive掉.

好了接下来就是upper div, 也就是编号大于等于100的课:

Mathematics 104 Introduction to Analysis
Mathematics 110 Linear Algebra
Mathematics 113 Introduction to Abstract Algebra
Mathematics 128A Numerical Analysis
Mathematics 185 Introduction to Complex Analysis

104: 数分. 一般国内本科数学系也要上这个. 因为需求量大, 而且基本上数学系的研究生博士人人都会,所以暑假一般也有这门课. 从upper div开始, 基本上每个section的人就比较少了, low div的大课基本上按百为单位的, upperdiv基本是几十个到一百上下最多. 因为基本上谁都能教, 根据教授的不同, 难度也会非常不一样. 一般最简单的就是用Ross的Elementary Analysis, 难的会用Rudin. 这门课也是非常多人不喜欢的, 特别是对分析比较反感的, 这点应该国内外都一样. 105是更加进阶版的104, 会讲lebesgue积分等.

110: 线代. 我线代是夏天上的, 教的是一个grad student, 感觉上的中规中矩. 书来说Sheldon Axler的linear algebra done right是最简单的. 这门课有一点要非常注意, 虽然内容并不是特别难, 但是概念的抽象程度比较高, 实际应用计算的内容有些教授可能会教的相当之少甚至完全不提. 对理论不太感兴趣的人可能学完之后感觉啥有用的东西都没学.

113: 抽象代数, 也就是所谓近代代数. John B Fraleigh的A First Course in Abstract Algebra应该是最简单的了. 内容上就是很基础的群论,环,场. 有些教授可能会教的非常难, 建议上的话提前调查一下. 进阶版114会讲galois group, Sylow Theorems等 (当然这些内容根据113是谁在教可能已经学过一遍了).

128A: 数值分析. 应数特色的必修课, 而且是一门大课 (上的人非常多). 我上的时候是John Strain在教, 华人教授Ming Gu也是经常教这门课的. 这门课的textbook我记得奇烂(Richard的),但是据说没有更好的替代品. 然后这课要需要学matlab. 编程零基础的朋友可能会非常吃力. 另外上这个课如果lower div的知识不扎实的话很容易会跟不上. 不太建议作为第一门upper div. Ming Gu的话教学水平名声比较臭,但是很多中国同学喜欢选他因为好交流而且给分比较宽松. 进阶有128B. 这门课会给觉得学了数学不用编程的人一记打醒(没错,就是我). 感觉是在伯克利上的最难的课的. 这门课的体感难易度两极分化也比较大, 见过有些人觉得很难, 也见过有些人觉得很简单.

185: 复变函数: 数学系必修课的大boss. 基本上大多数人最后一门必修课都是它. 我上的时候用的是stein, 另外还有用gamelin的教授. 这里特别推荐Yu-wei, 我上185时的教授. 台湾人, 上的感觉非常好, 思路很清晰. 内容还是偏分析的,计算也会有一点(比如留数定理).

没讲到的非必修: 115数论, 比较适合作为第一门upperdiv, 难度的跨度并不大. 126: PDE, 比较偏分析, 不热爱分析对物理不感兴趣建议慎重考虑要不要上.

其他还有很多课,我都没上过或者不了解. 可以选的课还是非常丰富应有尽有的.

可以看到我校本科必修课其实内容还是比较少的, 数论, ODE不是必修课, 几何相关的更没有. 不主动选的话像我这种菜鸡可能学出来还没一些非数学系的人强.

非数学系的课简单列一列我上过的一些:
STAT133: 讲R语言的. 统计系的13x必修系列的编程课. 建议作业lab和project都好好做. 因为大家这些很容易能拿满分,如果有一个迟交没交扣分较多会比较伤. 13x系列都是大课
STAT134: 概率论. 用的Jim pitman. 讲概率分布, CLT, 概率密度啊这些的. 打基础的课, 建议好好学. 140可以替代134, 并且140有lab. 大部分人可能会推荐140
STAT135: 统计学. 用的Rice的书. 刚开始讲estimator的性质, MLE之类的. 后面主要讲test, 比如t-test, mann-whitney, anova等等等等. test是很大的一部分. 个人感觉test非常难, 而且比较无聊. 一般会有少量编程.
STAT150: 随机过程. 我上的时候主要用的是Durrett, 辅助用pinsky karlin. 内容比较常规, 随机游走, 离散/连续时间马尔可夫链, 泊松过程, renewal theory, 鞅, 最后讲布朗运动. 学好这门课需要134掌握的比较好. 我感觉这两本教材都挺不错的.
CS189: 机器学习. 大热门课. 我上的是Shewchuk的版本, 相对Sahai的来说要简单不少, 但是也给了我不少压力. 这门课难点不在编程上 (我作为一个61b都没上过的人也挺过来了). 主要难在理论. 印象深刻的是CNN有个作业backpropogation对tensor还有pooling layer求偏导数把我这个之前没怎么接触过tensor的人整晕了. 理论知识需要挺多线性代数,概率论,优化的知识. 特别是线代, 还有矩阵/向量微积分, 要是不扎实感觉这课非常难. Sahai的版本相对来说是更进一步侧重理论, 喜欢挑战的可以考虑Sahai.
DATAC100: 数据科学: 我上的时候教授是Fernando Pérez, 也就是IPython创始人. 会介绍jupyter(知道jupyternotebook之后我就再也不想在其他地方编程了), numpy, pandas, matplotlib, seaborn这些数据分析常用的library, 教一些基本模型比如线性回归逻辑回归. 感觉非常好用的一门课,研究生朋友也有不少来上这课的.

---
19条回复