| 选课类别:计划内与自由选修 | 教学类型:理论实验课 |
| 课程类别:本科计划内课程 | 开课单位:人工智能与数据科学学院 |
| 课程层次:专业核心 | 学分:4.0 |
何向南和王翔老师的《机器学习概论》以贴合当前时代趋势为主,课程内容广泛涵盖从线性模型到强化学习(MDP、RL、Gaming)等多个方面。根据反馈,这门课适合作为机器学习的入门课程,但深入程度较浅,许多内容只是导论性质,给予学生启发。王老师的数学推导清晰,而何老师的计算机相关内容也具有挑战性,整体授课内容丰富且条理分明。
课程实验数量减少到四个,包括线性模型、神经网络、聚类与降维以及强化学习。实验部分虽能为学生提供实际操作能力的提升机会,但存在一定难度和bug,尤其是lab1受到了较多关注。作业风格呈现理论与实践结合,有助于学生编码能力和理论知识的双提升。然而,部分学生反映作业题目表述不清,较难理解。总体上,作业和实验需要投入大量时间和精力。
期末考试设计为半开卷,涉及神经网络、MDP、Q-learning等内容,综合性较强,但与日常作业题目联系较弱。大多数学生对给分方式表示满意,低分段同学的分数有提升,高分段保持不变。王翔老师在给分方面表现出善解人意和积极帮助学生的一面,得到了广泛赞誉。
对于大数据和计算机相关专业的同学,尤其是对机器学习领域有兴趣的人而言,该课程是一个良好的入门选择。对于希望深入某一特定领域的学生而言,可能需要结合其他课程学习。同学们需充分评估课程需求的学习精力,如果倾向于理论可选修其他算法课程。
助教团队总体积极负责,注释和实验反馈及时,有助于学生理解和完成作业。但实验框架的强制性和评分方式引发了一些不便。实验的设计也强调了学生代码阅读和调试能力的重要性,这为未来的科研和工作奠定了良好的基础。
总体而言,《机器学习概论》是一门内容丰富、考核合理、给分宽松但仍需学生投入较多精力的课程。对于机器学习初学者来说,是一次完整的知识启发和实践体验。
我于2023年修读这门课(连老师班), 这是当时的评课: https://icourse.club/course/19042/#review-83442。
2024年的课程内容相比往年删去了贝叶斯和概率图, 新增了强化学习(MDP, RL, Gaming)。目前来看是符合当前时代趋势的, 今年的o1,o3还有最近的DeepSeek-R1都展示了RL的强大能力, 感觉后面做Post-Training或者Alignment的同学最好还是多了解一些RL知识。
特别提醒: 今年课堂上没讲ELBO推导(变分推断),我们在课后补充了这一部分内容(考试没考),但是如果你将来要从事生成模型的研究,请务必认真学习这部分内容,以及保研面试时可能会考到这个…大家自行评估吧。
2024秋季我担任本课程编外助教, 负责lab1、lab3和lab4,相比往年,今年实验数量减少到4个(Linear Model, NN, Clustering & Dimension Reduction, RL) 。 我出的几个实验应该都不算太容易,而且初版都多少有点bug,这里特别感谢同学们及时提issue帮助修复。原本计划是要给每个实验做好分段测试的,可惜最后助教精力能力有限,只能给整个实验写一个评分脚本,给同学们做实验带来不便还请谅解。下面回答一些大家可能比较关心的问题:
我们的实验应该和同学们之前任何一门课的实验风格都不相同,刚开始同学们可能不太适应,不过坚持了一个学期, 后面同学们再接触pytorch和HuggingFace生态库以及作为可选项的wandb时才不会那么痛苦,希望同学们做完实验都能有所收获。
一个有趣的发现: 期末考试除了最后一题以外得分率最低的题是MDP和Q-learning那道题,看起来同学们考前都没怎么做lab4啊。
选课建议:
如果你是必修: 认真对待这门课, 对于大数据的同学来说,这门课绝对当得起“专业核心”这四个字。
如果你是选修: 请充分评估学习这门课需要花费的精力,理论和实验部分都不轻松。如果你想更理论一点, 请选择春季学期的大数据算法,如果你想要更多的code, 感觉科大还没有这种课(
后续学习建议:
我们实验框架的设计参考:https://github.com/addtt/variational-diffusion-models
大数据算法:大数据算法(丁虎) - USTC评课社区 (icourse.club)
深度学习导论:深度学习导论(王皓) - USTC评课社区 (icourse.club)(这门课似乎换老师了)
如果你和我当初一样遇到了多卡并行的debug困难,推荐选择:并行计算(孙经纬) - USTC评课社区 (icourse.club)(现在似乎改名了)
对于想做理论的同学,有一门不错的数学课:https://www.bilibili.com/video/BV1CK411W7Ep
推荐在这里选一门你感兴趣的课学习HuggingFace生态:Hugging Face - Learn
最后,感谢各位同学对课程实验的积极反馈,如果今后有什么学习科研上的问题也欢迎与我交流!
作业表述有点迷惑,难道只有我一个人看不懂题目想让我干什么吗┭┮﹏┭┮
另外反向传播不就一个链式法则的事情吗,感觉这辈子只会在上课和作业里手算😅 有必要讲这么久吗?我已经是人肉计算机的形状了
感觉不是一门适合数院宝宝体质的机器学习😭 我怎么只学到了一堆名词😭
其实讲的东西挺多的,这也导致了很多东西没有深究,只学到了一个朴素的想法,感觉很多都是启发式的。占个坑,出分细评一下
给分非常不错😋内容深度不是很大,导致像我摸一个学期也能拿个不错的成绩。以下先说说我Email给老师的一些建议:
这门课正如其名是概论,很多内容只是导论性质,导致虽然广度很大,但是很多内容我并没有真正学懂,很多启发式的内容对我来说只会留下一个这样做确实挺好的想法而已。既然只是导论性质的课的话,我认为还可以再增加一些内容,这几天看到了交大的ML课程CS420 ML,感觉真包含机器学习概论。唉,学完导论性质的课后,发现对某块内容有点兴趣,看看中科大的课程库,结果发现查无此课,这是何等悲哀😭
提供一点书面作业参考,一些比较困难的作业题可以找找这里有没有CS229/Problem Set Solutions/ps1-sol.pdf at master · kumi123/CS229
半开卷好啊
自己算的总评没法及格, 被捞到2.7了, 大四还要啥自行车
王老师何老师助教是我爹orz
按照公式算是73.1总评80 ???????
已经被管院给分PUA的菜鸡不敢相信这个世界上会有这样的给分(;><;)
自报家门:大四管统摆烂人(python零基础)(但是数学不好hh)水专选学分
关于课程:
选课的初衷就是水学分但是意外地学到了很多东西
关于老师&助教:
wx老师的数学推导深入浅出特别清晰,hxn老师讲的计算机相关内容(虽然可能是因为没有学过前序课程有不少听不太懂)但是也学得到东西;助教水平很高&炒鸡认真负责
关于作业:
(因为老师&助教水平很高所以)作业&实验都很有挑战性,从零开始配环境学python无数次想退课(x),但是真的有收获

关于考试&给分:
考试感觉还是有难度的,题量比较大,比较数学(不知道是因为真的有难度还是我大四太摆烂没好好学习)
(不过大多数PPT上都有&上课讲过&作业练习过,只要好好听课做作业应该是问题不大?)
按照平时50%+期末50%算出来的是73.1
总评80(这不是给分好那什么是给分好啊啊啊啊啊)
(怎么大四摆烂学的课比大二的时候认认真真学习的专业课分还要高,这个世界上竟然会有这样的给分)
总结:符合我对信智学部课程的所有美好想象
课倒是还行
就是助教解压不了我的zip直接给我实验判0了,教务系统登分了才发现。。。也不知道跟我说声
数院摆烂人,几乎没有去上课全靠回放续命
这门课的内容基本上是各个方面都有涉及,但是并不深入,适合作为方向入门。
作业次数不多(4次),但是每次作业时间较长(>15h),时间是需要有所协调。
给分可以说特别好,书面作业avg=99.75,实验avg=97,期末77总评奶到了92,王老师和何老师是神()
本学期作业和实验的个人版本以及课程ppt放在https://github.com/Intelligent114/ML24了,有需要可以参考。
数院大四概统人表示,这学期上这个课写作业写代码次次写破防,现在复习更破防,ppt信息密度低的离谱,但看回放感觉听课体验也许还行,给个8分观望,考试要是跟作业一样逆天我就直接开喷了。
以及正在准备cheatpaper,然而并不知道往上写什么…
我只是想混个专业选修学分好让我毕业😫
考试后更新:难度还行。神经网络相关的有三道题,基本上把能考到的点都给考了(第一题单层网络算几个梯度、第三题多层算一个很简单的反向传播、第四题softmax还是算几个梯度);第二题是Markov决策和强化学习;第五题是线性回归,作业题改编;第六题是K-means聚类的核方法的应用,第一小问构造个高斯核,第二问其实我没太看懂要我干什么,可能是在问核化时把什么东西换成核函数?感觉和第一小问没啥关系。
比较难的EM、集成学习、KL散度和变分推断都没考,唯一的槽点就是好多地方都用了这个矩阵求导公式:
\(\frac{\partial tr(XBX^TC)}{\partial X}=CXB+C^TXB^T\)
这是我cheatpaper上唯一用到的东西。
最后,依然不推荐概统人选修这门课…整门课给我的感觉是上课开开心心划过,结果作业逼着我又花大量时间查资料,那我为什么要选课,看看西瓜书自学就好了。
“在王翔老师的强烈要求下,低分段同学的分数有了明显的提高,高分段同学的分数保持不变。”
伟大,无需多言。
数院大四人,国庆期间赶来评课。
目前来讲王老师授课还是非常清楚的,授课内容也很丰富,课件也非常清晰。
内容和难度方面,数院的同学如果学过回归分析以及运筹学的话理解起来会轻松一些。如果是大三刚开始接触数理统计的同学可能会稍微感觉有一点难。(这里吐槽一下数院概统方向的培养方案,如果说不提前修课完全按照培养方案走的话大三上几乎选不了什么课,因为如果只学过概率论没有学过数理统计的话刚开始上手回归分析或者机器学习都会有一定程度的不适应,可能选陈士祥老师的运筹学刚开始的时候上手会舒服一些)
本课程的几位助教也是非常负责任,和同学的沟通做的非常好,充分考虑了同学们的需求。
不过这个第一次上机作业是真的难。对于数院的同学(特别是像我这种Python编程水平很低的同学)还是有较高的挑战性的。另一个角度来看这也是数院希望走统计方向的同学锻炼coding能力的一次机会。
2025-09-09 机器学习Aの后日谈
因为我本人没有在24秋修读这门课,因此取消评分,仅发表一点个人看法。
学过了jjm的人工智能基础后,主包还是感觉自己对人工智能一无所知,于是从暑假开始陆陆续续补了这门课的录课、作业和实验,刚刚正好结束了本门课“云学习”的ML部分,还剩RL部分,遂写一点简评。
公平公正的来说,这门课的理论课深度适中(连我都能听懂,除了EM算法有点难),整体而言注重广度,能起到一个很好的机器学习(乃至于人工智能的learning部分)入门作用,有与时俱进的部分(提了一嘴Transformer),对于一些现在较常用乃至于活跃在论文中的机器学习算法(是的,你爷爷还是你爷爷,有的场景还是可能会用机器学习的算法,比如说著名的XGBOOST)做了简短介绍,我的评价是可以作为被Arch和Sys课程养育长大的计科人的第一门ML课。
可惜的是,今年二位老师选择不继续上这门课了,因此本评课或许对今年机器学习A课程的参考价值有限。
作业和实验方面,由于本人在暑假摆大烂只写了一次,还是等我跟完之后再评价吧(真的会有这一天吗)。
现在想来最后悔的事大概就是在大三上的时候没敢选这门课也没敢旁听,而是在某门神必课上浪费了绝大多数精力+肝力吧,,,
第一节课上完了,抢个首评。
今年的“机器学习概论”改名叫“机器学习A”了,以后就没有机器学习概论这门课了。
第一节课是王翔老师上的,PPT很有梗,梳理了一遍人工智能的发展史,还提前下课了,并且提出这门课会参考CS229的设计。
可以说,个人估计这门课会和连德富老师时代的机器学习概论不太一样,不过具体怎么不一样还是要看何老师和王老师以及助教天团的发挥~
毕竟学期伊始,诸君不妨拭目以待。
非常硬核的一门课,硬核到我这样的计算机小白有点高攀不起。
王老师是我见过讲课最清楚最有条理的老师之一,上课跟着走一遍,听懂不成问题。收获非常大的一门课,但是作业和实验真的写到怀疑人生了,计科人被各种数学折磨得痛不欲生,代码更是一调就是好几天(除了10分钟就能写完的lab2的神经网络+鸢尾花dataset)
PPT基本是中英双语的,细节非常到位但是自学还是有点小困难。复习过程非常痛苦,18周的课全部上满,量大管饱。但是因为没有任何往年卷子参考(这门课的风格据说都和往年很不一样),只能硬瞪作业题上的各种奇妙数学小公式(数学还是太高雅了)
无点名无小测有回放。考试是半开卷。
本学期课程大纲:
真的复习到破防了,,,希望考试题不会像作业一样离谱。
考完啦,总体感觉还是偏概念理解和推导实操,应该还算友好(?),考试有6个大题,分别是神经网络,MDP和Q-learning算法,(第三题忘了,好像也是推公式),反向传播计算,线性回归梯度计算,kernel方法的运用。除了最后一题其他都还算基础,而且第五题的线性回归和作业一的第4题相似度还蛮高的,大概是是作业的一个简单浅显一点的版本
作业实验都挺多的,还是得早点做实验写作业啊
PPT有点混乱,但是老师很耐心,讲的很好,作业比较难,实验的难度不平均,但是确实能学到东西
老师和助教都很善解人意替大家考虑,最后给分也超级好,谢谢你们,谢谢😭
咱就说能不能别一直手算梯度了,在这样要退课了捏