RIKEN R-CCS Spring School 2025 体验: well, it's complicated
上周从一月15号到17号,我去神户参加了理化学研究所计算科学研究中心 (R-CCS) 的 Spring School. 虽说线上线下都可参与,但我既然人在日本,不如趁此契机去远一点的地方散散心。 线下参与的大概十个人,全职学生都可报销差旅费用,我可能是其中唯一一个远离校园的上班族(遴选标准是学生/企业工作的 Scientist/ Engineer, 然后选大概四十人),因此无缘这些福利了。
R-CCS位于靠近神户机场的人工岛上,交通而言出差非常方便,到市区的三ノ宮駅也才二十分钟左右的电车车程。 但周围只有一些研究所,大学机构等,餐厅商店什么的一概都无,午餐只能去附近的 cafeteria 解决。 不过,在建筑物中的一些地方可以远眺远处的神户塔和明石海峡大桥。
接下来说说内容。
R-CCS 对于 Spring School 的定位大概是讲一个具体的课题和介绍大家体验 Fugaku Super Computer. 今年的主讲人是 Dr.Suzuki Atsushi,汉字大致是写作铃木厚,他的研究方向是有限元方法。 第一天讲解系数矩阵的Krylov subspace method, 第二天讲Schwarz preconditioner如何加快计算速度,第三天则是讲在有限元方法中的应用。 每天上午讲理论,下午讲计算的代码,最后时间是HandsOn,也就是在Fugaku上运行这些数值方法。
优点是尽管只是一个Spring School,但并没有开成小学生春游的感觉,而是围绕一个核心内容进行讲解。 而且三天的内容都是连贯的,make it work, make it fast and apply to research. 更不用说,Slides上无数的数学公式都一丝不苟,无懈可击。
但是考虑到大家的背景不一,不得不说难度和内容的量有些过大了。 硬要解释的话,可以认为他们并不指望你当下完全理解,但是可以在日后的研究中发挥种子的作用。 但问题是,如今具体的知识并不是一个难以access的东西,只要能总结出适当的关键词,有无数的大学公开课视频和课件可以看,更不用说AI让模糊搜索变得更容易。
理想的私以为应当花更多时间在背景和最基础结论的推导,然后后面具体的case只讲一个或者两个就行。 以第一天的 Krylov Subspace Method为例:
- 重点的特性比如Coercive Matrix,显然除了定义之外应该举出更多的例子加深理解,而不是紧锣密鼓地进行下一步。
- 对于$Ax = b$, 不同性质的 A 有不同的方法:
- symmetric,positive definite
- symmetric, indefinite
- unsymmetric, coercive
- unsymmetric, general
- 但显然,没有必要针对每种方法都拉出来讲一遍算法,把特殊的两种,比如对称且正定,非对称且coercive这两种拿出来详细讲解,练习应当有最好的效果。
另外,HandsOn的安排和设置我认为并不合理。 长达一天的讲课之后,末尾出现一个半到两个小时的HandsOn,而且是给了写好的代码,只是让每个人去运行,这更是没什么意义。
这里的问题更多了:
- HandsOn应该在每个小的知识点之后,比如对称矩阵的CSR表示,Conjugate Gradient算法显然值得在讲完之后迅速分别来一个半个小时和一个小时的Coding HandsOn
- 我记得其中一份代码是GMRES方法。我的建议是应当选择一个非常简单的矩阵,给出文档,写好框架,在HandsOn的时间大家去把剩下的核心部分补全就好。
- HandsOn的部分可考虑复用(比如之后的Spring School之类)和开源, should make it a project to learn from and document the benchmark, rather than just giving a plain CPP code without detailed comment.
- 因为每个人都带了计算机,因此可以让大家在本地运行一个较小的矩阵,在Fugaku上跑更大的矩阵;
- 一方面实现算法本身就是学习的过程,小的例子利于大家理解
- Fugaku上运行更大的矩阵也方便大家认识Fugaku的性能
注意到参加Spring School的绝大多数人都是PhD Student,而且大多数都不是计算科学和应用数学的PhD Student, 很多人的研究领域充其量只需要一些运用,根本不需要做算法研究,因此我并不认为大家的数学水平显著地高于我,我不会觉得我的建议只是因为我太菜了。
尽管以前在国内上学的时候,大家常常抱怨基本靠自学,这一点在我的经验中是对的。 以我在日本上学的经验,日本大学的教学质量也可以说乏善可陈,我上过的计算机科学的课程中(我现在说的并不是那一类Theoretical Computer Science)有良好作业和Lab的课比例小得可怜,绝大多数就是写一写essay。 我的修士导师曾说他觉得日本的学生高中不比美国学生弱,但大学之后成就就不如美国学生了。 我想至少教学上是个问题,我们暂不谈产业的问题和投入资金的问题,我想至少同样的资源下完全可以做得更好。
至于这次的Spring School HandsOn部分,我觉得思路还是没有转变过来。 上课的时候应该默认大家什么都不懂而不是默认大家每天都浸淫在Numerical Linear Algebra之中,完全弄懂一个部分比什么都没有弄清楚要好。
尽管有这么多不足,但这些不足我觉得是日本共通的问题。 具体到这次活动,总体而言是well organized活动,流程清晰,no surprise. RIKEN的Staff们还有Suzuki Sensei都nice得不可思议,尽管不是学生的我享受不到免费车票和住宿的福利,但我还是想对它们表示感谢。
今年的Summer School会在葡萄牙举行,Staff还鼓励我去报名,我说我是一个可悲的Salary Man (well, I might not be eligible and will not be selected).
Staff说,啊那工作很忙,可能没有时间吧。
I really want to be a full-time student, 我想。
FYI: 讲义内容是公开的,you can access to it here.