机器学习课程设置
机器学习集技术、科学与艺术于一体,它有别于传统人工智能,是现代人工智能的核心。它牵涉到统计、优化、矩阵分析、理论计算机、编程、分布式计算等。因此,建议在已有的计算机专业本科生课程的基础上,适当加强概率、统计和矩阵分析等课程,下面是具体课程设置和相关教材的建议:
-
加强概率与统计的基础课程,建议采用莫里斯·德格鲁特(Morris H.DeGroot)和马克·舍维什(Mark J.Schervish)合著的第四版《概率论与数理统计》(Probability and Statistics)为教材。
-
在线性代数课程里,加强矩阵分析的内容。教材建议使用吉尔伯特·斯特朗(Gilbert Strang)的《线性代数导论》(Introduction to Linear Algebra)。吉尔伯特·斯特朗在麻省理工学院一直讲述线性代数,他的网上视频课程堪称经典。后续建议开设矩阵计算,采用特雷费森·劳埃德(Trefethen N.Lloyd)和戴维·鲍(David Bau lll)著作的《数值线性代数》(Numerical Linear Algebra)为教科书。
-
开设机器学习课程。机器学习有许多经典的书籍,但大多不太适宜做本科生的教材。最近,麻省理工学院出版的约翰·凯莱赫(John D.Kelleher)和布瑞恩·麦克·纳米(Brian Mac Namee) 等人著作的《机器学习基础之预测数据分析》(Fundamentals of Machine Learning for Predictive Data Analytics),或者安得烈·韦伯(Andrew R.Webb)和基思·科普塞(Keith D.Copsey)合著的第三版《统计模式识别》(Statistical Pattern Recognition)比较适合作为本科生的教科书。同时建议课程设置实践环节,让学生尝试将机器学习方法应用到某些特定问题中。
此外,我建议设立以下课程作为本科计算机专业的提高课程或者荣誉课程。特别是,国内有些大学计算机专业设立了拔尖人才项目,我认为以下课程可以考虑列入该项目的培养计划中。事实上,上海交通大学ACM 班就开设了随机算法和统计机器学习等课程。
-
开设数值优化课程,建议参考教材乔治·诺塞达尔(Jorge Nocedal)和史蒂芬·赖特(Stephen J.Wright)的第二版《数值优化》(Numerical Optimization),或者开设数值分析,建议采用蒂莫西·索尔的《数值分析》(Numerical Analysis)为教材。
-
加强算法课程,增加高级算法,比如随机算法,参考教材是迈克尔·米曾马克(Michael Mitzenmacher)和伊莱·阿普法(Eli Upfal) 的《概率与计算:随机算法与概率分析》(Probability and Computing:Randomized Algorithms and Probabilistic Analysis)。
-
在程序设计方面,增加或加强并行计算的内容。特别是在深度学习技术的执行中,通常需要GPU加速,可以使用戴维·柯克(David B.Kirk)和胡文美(Wen-mei W.Hwu)的教材《大规模并行处理器编程实战》(第二版)(Programming Massively Parallel Processors:A Hands-on Approach,Second Edition);另外,还可以参考优达学城(Udacity)上英伟达(Nvidia)讲解CUDA计算的公开课。
标签: ML