B站学强化学习?港中文周博磊变身up主,中文课程已上线

关注上方深度学习技术前沿,选择“星标公众号”

资源干货,第一时间送达!

众所周知,B 站是一个学习网站。在看完罗翔老师的刑法课之后,是时候探索人工智能了。

新冠疫情还未退散,目前国内很多大学仍然没有返校开学的计划,不过留在家中的我们已经可以获得越来越多的线上学习内容。

此前有很多国内外学校已经把自家的 AI 课程搬到了线上。不过对于不少人来说,YouTube 和英文是个问题。有没有直接在 B 站上开课的教授呢?

最近,香港中文大学(CUHK)信息工程系助理教授周博磊就有了一个大胆的想法,他决定把自己每周的《强化学习》课程用中文在 B 站上进行直播。目前这门课程的第一课已经上线。机器之心经授权进行了整理。

周博磊老师博士毕业于麻省理工学院,现任香港中文大学信息工程系助理教授,研究方向主要为机器感知和决策,重点是通过学习可解释、结构化的表征,使机器能够在复杂的环境中感知、推理和行动。

除了直播和课程视频之外,周博磊还会同步更新课程的代码,使用的编程语言为 Python,深度学习框架则是 TensorFlow 和 PyTorch 皆可(PyTorch 为主)。和常规的课程一样,《强化学习纲要》也会在每节课后留下一些作业。

GitHub 链接:https://github.com/zhoubolei/introRL

课程概览

整个课程共分为基础课程和高阶课程两大部分。其中,基础课程共分为 8 个小节,包括课程概览、马尔科夫决策过程、无模型预测及控制、on-policy 和 off-policy 学习、值函数近似、策略优化基础、策略优化现状、基于模型的强化学习等内容。其中,每个小节都会有一两节课的内容。

高阶课程包括一些案例研究,如围棋 AI AlphaGo、游戏 AI AlphaStar、OpenAI Five 等,此外还包含强化学习的分布式构建、生成模型等。

该课程主要面向大三、大四或研一的学生。参加课程的学生需要具备相关背景知识,包括线性代数、概率论、机器学习(数据挖掘、模式识别、深度学习)等。此外,由于该课程有不少实践内容,所以参加课程的同学最好有一些编程经验,会用 Python、PyTorch。

此外,周博磊博士还给出了本课程的参考教科书——Sutton 和 Barton 合作撰写的《强化学习》。大家可以根据参考链接下载电子版。

新课尝鲜

目前,我们已经能够在 B 站上看到第一课的完整内容,包括上、下两部分,主要介绍了课程纲要、强化学习基本概念、序列决策入门、强化学习编程实践等内容。

在基本概念部分,周老师介绍了强化学习的定义、重要性、与监督学习的区别等内容。

这里对强化学习的定义引用了一个 Sutton 的经典表述。强化学习用于描述和解决智能体在与环境的交互过程中如何最大化奖赏值的问题。在强化学习中,智能体(agent)与环境(environment)是其两个重要组成部分。

强化学习与监督学习存在以下区别:

  • 输入数据时序相关(非独立同分布);

  • 智能体并不知道什么是正确的策略,其策略需要通过从环境得到的奖赏值中自行习得;

  • 通过试错进行探索(强化学习里非常经典的探索与利用(exploration and exploitation)问题);

  • 训练过程中没有严格的标签,学习信号仅为奖赏值(往往还是延迟的奖赏)。

强化学习具有以下特点:通过试错进行学习、奖赏值往往存在延迟(例如种西瓜,我们浇水、施肥后需要很长一段时间才能知道瓜苗的长势),训练数据需要注意其对应时序(数据之间不是独立同分布),智能体的动作会影响其下一时刻获得的观测值。

此外,周老师还介绍了一些与深度强化学习有关的内容。

在刚刚上线的第二部分中,周博磊博士介绍了时序决策过程。

在强化学习过程中,agent 需要与环境进行交互,环境会将动作造成的结果返还给 agent,而 agent 需要从观测中学习出能够将奖励最大化的策略。在强化学习中,算法总是希望能够让奖励极大化,但有时奖励的过程可能会被延迟。强化学习中的一个重要问题就是近期奖励和远期奖励的 trade off。

强化学习算法在策略优化方式上可分为基于值函数与基于策略的,另外又可分为无模型强化学习与基于模型的强化学习,其相互关系如下图所示:

在课程中,周博磊还演示了在 OpenAI Gym 环境中构建强化学习智能体,并在不同游戏中进行测试的过程。

在之后的课程中,周博磊还将继续介绍通过决策函数实现优化的过程。

第一节课的完整视频如下:

其他优质强化学习网络课程推荐

还想学其他课程?在强化学习领域,除了周博磊老师的课之外,我们还有一些优质课程要推荐给大家。

首先要提的就是 David Silver 在 UCL 讲授的强化学习入门课程。没错,就是来自 DeepMind 那个在 Nature 上发表了 DQN 论文,紧接着提出 AlphaGo 和 AlphaGo Zero,从此掀起深度强化学习研究浪潮的 Silver。他的课程深入浅出,在介绍强化学习概念的过程中穿插了很多例子,对初学者非常友好,建议作为第一个观看的入门视频课程。

课程链接:http://www0.cs.ucl.ac.uk/staff/D.Silver/web/Teaching.html

以上视频课程在 B 站上也有分流,感兴趣的小伙伴可自行搜索。

此外,台湾大学李宏毅教授的视频课程也非常不错,而且也是中文授课。

课程链接:https://www.bilibili.com/video/av24724071

在进阶版课程方面,我们要推荐的是两位在深度强化学习领域非常有名的科学家——Pieter Abbeel 与 Sergey Levine。他们长期致力于深度强化学习的教学、研究等工作,在其个人主页可以找到很多他们所讲授课程的链接。

  • Pieter Abbeel 个人主页:https://people.eecs.berkeley.edu/~pabbeel/

  • Sergey Levine 个人主页:https://people.eecs.berkeley.edu/~svlevine/

对于想上手实践深度强化学习的小伙伴们,以下资源是不错的选择:

  • OpenAI Spinning Up :从 VPG(Vanilla Policy Gradient) 到 TRPO(Trust Region Policy Optimization)、SAC(Soft Actor-Critic) 均有实现,关键是 OpenAI 出品,代码质量高。

    资源链接:https://openai.com/blog/spinning-up-in-deep-rl/

  • Stable Baselines:大量深度强化学习算法优质实现,文档丰富,包含 Colab Notebook,深度强化学习入坑必看 repo。

    资源链接:https://stable-baselines.readthedocs.io/en/master/

重磅!深度学习技术前沿-微信群已成立

扫码添加群助手可申请加入 深度学习技术前沿 微信群,旨在交流深度学习方面的学习、科研、工程项目等内容,并且还会在群中分享求职内推资料。后续还会根据大家的研究方向细分技术交流群。

一定要备注:研究方向+学校/公司+姓名(如图像分割+浙大+李四),按照格式备注,可更快被通过且邀请进群。

???? 长按识别,即可加群

???? 长按识别,即可关注

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 学习机器学习、深度学习强化学习可以尝试以下建议:1. 通过学习书籍和视频教程来了解基础知识;2. 实践和实验,用实际项目来熟悉编程和技术;3. 加入社区,与更多的专家和从业者一起学习;4. 尝试使用开源工具,比如TensorFlow和PyTorch;5. 加入线上或线下的课程,以便获取更多的知识和经验。 ### 回答2: 学习机器学习、深度学习强化学习是一个需要专注和持续学习的过程。以下是一些建议: 1.打下基础知识:在开始学习机器学习相关领域之前,确保你有相关的数和统计知识。理解线性代数、概率论和微积分等基础概念,这些都是机器学习的基石。 2.选择适当的学习资源:有很多免费和付费的学习资源可以选择,包括在线课程、教科书、博客和教视频。选择适合自己学习风格和程度的资源,建议从入门级别的课程和教材开始。 3.实践项目:建议找一些实际的项目来应用所的知识,这样可以更好地理解概念和技术。可以从一些开源项目入手,或者自己提出一个小规模的项目。 4.参与竞赛和社区:加入机器学习和深度学习的社区,参与竞赛和项目,与其他学习者交流和合作。这样可以不断学习和提高自己,同时拓宽人脉。 5.阅读论文和研究工作:机器学习和深度学习领域发展迅速,及时了解最新的论文和研究成果是保持学习进步的关键。阅读和研究论文可以帮助你深入理解算法和技术的原理和应用。 6.坚持学习和练习:机器学习等领域的学习需要时间和耐心,保持学习的动力和持续练习是非常重要的。不断尝试新的问题和挑战,克服困难,丰富自己的经验。 总的来说,学习机器学习、深度学习强化学习需要全面的基础知识、实践项目、参与社区和持续不断的学习和练习。不断积累经验和相互交流合作将帮助你对这些领域有更深入的理解和应用能力。 ### 回答3: 学习机器学习、深度学习强化学习需要一定的数、计算机科和统计知识作为基础,但同时也需要实践和理论相结合的学习方法。以下是一些学习建议: 1. 扎实的数基础:机器学习、深度学习强化学习都依赖于数原理,如线性代数、概率论和统计等。建议学习者先系统地学习这些数概念和方法,以便更好地理解和应用相关算法。 2. 学习编程和数据处理技能:掌握编程语言,如Python或R,可以帮助你实现机器学习算法和处理数据。此外,了解数据处理和数据可视化方法,对于数据预处理和结果分析非常有帮助。 3. 学习算法和模型:理解不同的机器学习、深度学习强化学习算法的原理和应用场景,包括常见的回归、分类、聚类和强化学习算法等。阅读相关的教材和论文,参与在线课程和项目实践,可以帮助加深对算法的理解和应用技巧。 4. 实践项目和竞赛:从简单的数据集开始,自己实现机器学习算法并进行调参、优化。可以利用公开的数据集,如Kaggle等竞赛平台上的项目,或者自己找到感兴趣的数据集进行实践。实践中遇到的问题和挑战,能够提高你的学习效果和解决实际问题的能力。 5. 加入学习群体和参与讨论:参加机器学习、深度学习强化学习学习群体,如学习班、研讨会和论坛等,与他人交流讨论学习心得和问题。学习群体能够提供学习资源和分享经验,也能与其他学习者互相激发和提供支持。 6. 持续学习和跟进最新研究:机器学习、深度学习强化学习领域不断发展和更新,学习者应该保持持续学习的态度,关注最新的研究和技术进展。阅读相关的论文、博客和开源项目,参与相关社区,可以帮助你不断提升和更新自己的知识。 总之,学习机器学习、深度学习强化学习需要坚持不懈的努力和实践,并且保持学习的热情和求知欲望。通过多方面的学习途径和实践项目,不断提升自己的技能和理解能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值