深度学习&强化学习&进化计算 入门资源整理

深度学习&强化学习&进化计算 入门资源整理

  • 深度学习
    • 在线课程
    • 在线书籍
    • 学习Python
  • 强化学习
    • 在线课程
    • 在线书籍
    • 更多资源
  • 进化计算
  • 后记

深度学习

在线课程

深度学习是机器学习领域的一个分支,想要入门深度学习,最好先对机器学习的一些基本概念有所了解。吴恩达讲授的机器学习课程被广泛认为是最好的Machine Learning入门课程:

吴恩达机器学习课程(Coursera)
吴恩达机器学习课程(网易云课堂)

如果你的时间不多而且关注的焦点在深度学习,可以越过前面的课程,直接看吴恩达最新推出的深度学习课程:

吴恩达 Deep Learning Specialization(Coursera)
吴恩达深度学习课程(网易云课堂)

如果你觉得有些难懂,或者英语课程听其起来有些费力,台湾大学李宏毅教授讲授的中文深度学习课程非常适合零基础的初学者:

李宏毅2020机器学习深度学习(完整版)国语(bilibili)

Coursera网站、网页云课堂、bilibili上都有不少深度学习入门的视频,如果以上课程不能满足你,可以在这些网站搜索相关课程视频。有些b站up主的视频也值得一看:

3Blue1Brown的深度学习频道(bilibili)

如果你对这里推荐的入门路线不满意,可以在知乎上关注深度学习相关话题,看看大家是怎样入门的。

在线书籍

生成对抗网络(GAN)之父Ian Goodfellow编写的《Deep Learning》一书被称为深度学习领域的圣经。但笔者不推荐将这本书作为入门读物,最好是在对深度学习有一定的理解之后,再回过头来读。

Deep Learning(英文网页版)
Deep Learning(英文PDF版)
Deep Learning(GitHub翻译版)

Michael A. Nielsen编写的《Neural Networks and Deep Learning》也受到很多人的推荐:

Neural Networks and Deep Learning(英文网页版)
Neural Networks and Deep Learning(中文网页版)

学习Python

学习神经网络课程最好的方式是和实践相结合,Python是深度学习研究者必须掌握的程序设计语言,如果你没有编写代码的经验,廖雪峰的Python教程和菜鸟教程可能适合你:

廖雪峰的Python教程
Python基础教程(菜鸟教程)

以下中文视频课程也很受欢迎:

(小甲鱼)零基础入门学习Python(bilibili)
莫烦Python教程
北京理工大学MOOC Python语言程序设计课程

如果你有一定的编程基础,相信学习Python对你来说应该不会太难,可以选择结合下面这门英文课程和教材学习:

Programming for Everybody (Getting Started with Python)(Coursera)
Python for Everybody(bilibili)
Think Python: How to Think Like a Computer Scientist(英文网页版)

此外,Github上有一位名叫骆昊 (jackfrued) 的资深程序员,为大家规划了一条从“从新手到大师”的百天之路,目前已经有8w+Star,大家可以参考一下这个模式:

Python - 100天从新手到大师

不必学完所有的语言特性,在掌握了Python的基础语法之后就可以上手进行深度学习实战了。目前最热门的Python深度学习框架是Facebook开发的PyTorch 和Google开发的TensorFlow,目前我们实验室使用的是前者,所以建议大家选择PyTorch来学习。

PyTorch Tutorials
PyTorch 中文文档

这个教程包含了使用神经网络进行图像、视频、音频和文本处理等许多例子,是非常好的学习深度学习的资源,你可以在这里检验你学习的CNN、RNN等神经网络的基础知识,以及学习如何调整参数和优化模型。

强化学习

在线课程

强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益。想要入门强化学习,首先推荐OpenAI的Reinforcement Learning教程,里面系统性地介绍了强化学习的基本概念和各种算法,收录了强化学习领域的重要论文:

Spinning Up in Deep RL Docs

其它广为推荐的英文在线课程主要有:

Reinforcement Learning by David Silver (2015)
Standford University CS234 :Reinforcement Learning
UC Berkeley CS285 Deep Reinforcement Learning

中文的强化学习课程主要有:

李宏毅2020强化学习课程(bilbili)
莫烦Python强化学习课程

在线书籍

强化学习领域最经典的教材是被称为“强化学习教父” 的Richard Sutton编写的《Reinforcement Learning:An Introduction》,2018年出版了第二版,被很多大学列为强化学习的教材:

Reinforcement Learning: An Introduction (2nd Edition, 2018)

还有更偏重于算法理论的教材:

Algorithms for Reinforcement Learning (2010)

更多资源

如果这些资源还不能满足你,这里有一些强化学习资源汇总帖,或许你能找到你想要的:

强化学习资源列表(CSDN)
深度强化学习(资源篇)(更新于2020.06.09)(CSDN)

进化计算

进化计算(Evolutionary Computation)是人工智能领域中涉及到组合优化问题的一个子领域。进化计算受生物进化过程中“优胜劣汰”的自然选择机制和遗传信息的传递规律的启发,希望通过程序迭代模拟这一过程,把要解决的问题看作环境,在一些可能的解组成的种群中,通过自然演化寻求最优解。
看完上面这段介绍你可能还是一头雾水,那么你可以通过一个简短的视频了解一下什么是进化计算:

What is Evolution Computation?(YouTube)

学习进化计算可供参考的中文课程有:

莫烦Python 进化算法
清华大学深研院MOOC 进化计算

如果想要对进化计算领域有一个全方位的了解,推荐阅读维基百科,里面列出了进化计算领域的各种算法:

Evolutionary computation (Wiki)

如果想要深入了解遗传算法,可以翻阅:

Genetic Algorithms in Search,Optimization and Mechine Learning(PDF)

后记

这篇文档整理了深度学习、强化学习和进化计算领域的一些在线资源,旨在帮助大家快速地对这些领域有所了解。在学习的过程中最好能将理论学习和代码实战相结合。网络上的学习资源很多,不需要全部看完,希望大家根据自己的实际情况选择适合你的入门课程/教程/书籍。
Good Luck!

你可能感兴趣的:(深度学习)